您能否在gitlab管道中存储一个值,以便以后的管道可以访问它?

2024-04-29 02:30:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个版本控制系统,每次将提交推送到主分支时,该系统都会自动增加。我通过设置创建了一个可变的环境->;CI/CD->;环境变量,并尝试使用以下代码将其递增:

   old_version = os.environ["SEMVER_VERSION"]
   new_version = bump(old_version)
   os.environ["SEMVER_VERSION"] = new_version 

问题是,这些更改只对环境变量的本地副本进行,而当管道完成时,该副本将被丢弃。所以我的问题是,是否有任何方法来存储一个值,以便所有管道都可以访问并更改它

一个常见的解决方案似乎是将值存储在git标记或文件中,然后将其推回git存储库,我遵循的教程是这样做的https://threedots.tech/post/automatic-semantic-versioning-in-gitlab-ci/,但由于我使用的自托管gitlab服务器的限制,我无法以编程方式推送提交


Tags: gitgt版本new管道osversion分支
1条回答
网友
1楼 · 发布于 2024-04-29 02:30:22

可以使用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"

相关问题 更多 >