title: gitlab-ci.yml, before_script and artifact
body: <p>In <a href="https://gitlab.com/help/ci/yaml/README.md#before_script-and-after_script" rel="noreferrer">gitlab-ci.yml documentation</a>, it says that</p>
  
  <blockquote>
    <p>before_script is used to define the command that should be run before all
    jobs, including deploy jobs, but after the restoration of artifacts.</p>
  </blockquote>
  
  <p>This tells me that artifact is produced before a job start running</p>
  
  <p>But the <a href="https://gitlab.com/help/user/project/pipelines/job_artifacts.md#introduction-to-job-artifacts" rel="noreferrer">artifact documentation</a> says that</p>
  
  <blockquote>
    <p>Artifacts is a list of files and directories which are attached to a
    job after it completes successfully</p>
  </blockquote>
  
  <p>This tells me that artifact is produced after a job finish running.</p>
  
  <p>This is a contradiction. Can someone please explain how this is not a contradiction?</p>
  
  <p>I imagine they are talking about the artifact in previous job? But I don't know how artifact and job work and can be wrong.</p>