I’m new to GitLab CI/CD.
I wish to have a job inside PROJECT_2 access artifacts from another job on a different project - PROJECT_1. I have added a snippet below.
--- job1: --- artifacts: paths: - dir1
--- job2: -- needs: - project: PROJECT_1 job: job1 ref: master artifacts: true
This code above works fine. I would like to know if we can have the entries under
needs attribute like
ref to be dynamic? Can I pass an env var, say
PROJ_DEP and set it to
PROJECT_1 when I kick off a pipeline and have the
needs attribute expand them correctly?
I have tried passing a variable for components inside
needs attribute like shown below.
job2: -- needs: - project: $PROJ_DEP # linux runner job: $JOB_DEP ref: $REF_DEP artifacts: true
But, I encounter the following error.
This job depends on other jobs with expired/erased artifacts:
Please refer to https://docs.gitlab.com/ce/ci/yaml/README.html#dependencies
I have confirmed that the job does have artifacts available and as I mentioned above, it works fine if I don’t use the variables.
I’m using GitLab v13.3.6-ee and Runner v13.3.1