我正在嘗試創(chuàng)建一個版本控制系統(tǒng),每次將提交推送到主分支時都會自動增加。我通過 Settings->CI/CD->Environment variables 創(chuàng)建了一個環(huán)境變量,并嘗試使用以下代碼遞增它: old_version = os.environ["SEMVER_VERSION"] new_version = bump(old_version) os.environ["SEMVER_VERSION"] = new_version 問題是這些更改僅對環(huán)境變量的本地副本進行,該副本在管道完成時被丟棄。所以我的問題是,是否有任何方法可以存儲一個值,以便所有管道都可以訪問它并更改它?一個常見的解決方案似乎是將值存儲在 git 標簽或文件中,然后將其推送回 git 存儲庫,我遵循的教程是這樣做的https://threedots.tech/post/automatic-semantic-versioning- in-gitlab-ci/,但由于我正在使用的自托管 gitlab 服務器的限制,我無法以編程方式推送提交。
1 回答

四季花海
TA貢獻1811條經驗 獲得超5個贊
您可以使用API使用新值更新相同的變量:
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
"https://gitlab.example.com/api/v4/projects/1/variables/SEMVER_VERSION" \
--form "value=$new_version"
添加回答
舉報
0/150
提交
取消