如何在 Gitlab CI 的构建脚本中设置(环境)变量?

2024-02-18

我有一个虚拟构建脚本Gitlab CI:

pwd
ci_app_path=$(pwd)
echo "INFO: current directory: $ci_app_path"

当系统开始构建过程时,我得到以下输出:

pwd
/home/kai/gitlab-runners/gitlab-ci-runner/tmp/builds/project-1

ci_app_path=$(pwd)

echo "INFO: current directory: $ci_app_path"
INFO: current directory:

所以变量没有设置(或者只为该行设置:据我所知,每行单独执行)

我听说过推送/弹出机制来实现我想要的功能,但找不到任何细节,以及如何实现它。

Update:

正如我所想,每一行都会单独执行。所以变量作用域只有一行,定义它的地方:

script:

pwd
ci_app_path=$(pwd) && echo "INFO: current directory: $ci_app_path"

output:

pwd
/home/devuser/gitlab-runners/gitlab-ci-runner/tmp/builds/project-1

ci_app_path=$(pwd) && echo "INFO: current directory: $ci_app_path"
INFO: current directory: /home/kai/gitlab-runners/gitlab-ci-runner/tmp/builds/project-1

我不认为将整个剧本写成一句台词是一个好主意/做法。

如何在执行构建脚本时获取变量设置?

P.S.

实际上我想知道为什么整个构建脚本必须不包含空行?,否则它返回:

No such file or directory

并且在这个地方构建失败


Gitlab CI 只执行 shell 命令,所以按照 *sh 中的操作进行操作:

export ci_app_path=$(pwd)
echo "INFO: current directory: $ci_app_path"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Gitlab CI 的构建脚本中设置(环境)变量? 的相关文章