Gitlab CI/CD:将作业环境变量传递给 shell 脚本

And*_*ter 6 bash shell gitlab gitlab-ci gitlab-api

我的 gitlab ci cd 配置文件中有这样的工作:

jobName:
  stage: dev
  script:
    - export
    - env
    - sshpass -p $SSH_PASSWORD ssh -o StrictHostKeyChecking=no $SSH_LOGIN 'bash -s' < script.sh
  when: manual
Run Code Online (Sandbox Code Playgroud)

我尝试通过在我的作业中添加以下命令来将当前作业环境变量共享/传递到我的自定义 bash 脚本文件:

- export
- env
Run Code Online (Sandbox Code Playgroud)

但我的乔恩无法访问(看不到)作业环境变量。如何正确地将作业的所有环境变量共享到 bash 脚本?

小智 2

我相信dotenv可能适合这个。

job1:
  stage: stage1
  script:
        - export VAR=123
        - echo $VAR
        - echo "VAR=$VAR" > variables.env
  artifacts:
    reports:
      dotenv: variables.env

job2:
  stage: stage2
  script: 
        - echo $VAR
Run Code Online (Sandbox Code Playgroud)

并且您的 VAR 应该可以在下游工作中使用。