如何在 gitlab ci/cd 中 pipeline job 之间传递变量
pipeline 中不同 job 默认是无法传递变量的,但是我们可以通过 artifacts 功能实现传递,具体看实例
推荐使用第一种
第一种用法
build:
stage: build
script:
- echo "BUILD_VARIABLE=value_from_build_job" >> build.env
artifacts:
reports:
dotenv: build.env # 把这个文件里的内容加载到环境变量里面
deploy:
stage: deploy
script:
- env # 加载整个系统变量出来
- echo "$BUILD_VARIABLE" # Output is: 'value_from_build_job'
第二种用法
artifacts:
name: "share.env"
paths:
- share.env # 把这个文件添加到制品里
before_script:
- source share.env # 读取上一步制品的信息
- if [ -z "$CHANGE_MODULES" ]; then
echo "微服务未发生变动,跳过部署";
exit 0;
fi

浙公网安备 33010602011771号