从CI / CD提交到存储库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从CI / CD提交到存储库相关的知识,希望对你有一定的参考价值。

我最近配置了一个我的存储库,每当我推送匹配“vX.Y.Z”的git tag时自动部署一个版本,但这个过程并不是完全自动的。

具体来说,我必须在源代码中更新我的版本号(即碰撞“vX.Y.Z”)才能标记它来构建。


所以看来我有几个选择

  1. 在标记之前继续手动碰撞构建号
  2. 让我的CI更新内部版本号(例如从标记中提取)然后将更改提交到master

在我看来,手动更新版本号是可取的,因为在部署版本之前需要更多的工作,并且版本与提交相关联,而不是在CI必须更新版本号的情况下落后于一个提交。 (另外我不想在更新master之前等待构建完成部署)

我无法在网上找到强烈的意见,所以我很好奇:

将我的CI构建服务器提交到我的存储库中被认为是不好的做法吗?

答案

如果你可以使用vX.Y.Z.BuildVersion版本控制方案,我会推荐以下内容。

  1. 根据Semantic Versioning策略手动管理vX.Y.Z。
  2. 如果您将新标记推送到GitHub,CI会创建一个包含Build Version的发布包。 这将是增量计数。 请注意,Build Version不在GitHub上管理。
  3. CI将包推送到GitHub Release。

以上是关于从CI / CD提交到存储库的主要内容,如果未能解决你的问题,请参考以下文章

如何解决“远程:您不允许上传代码”。 GitLab CI/CD 作业出错?

我应该将我的 Nuxt 应用程序直接部署到 Google App Engine 还是应该在我的代码存在于存储库中的地方使用 Gitlab CI/CD?

触发 Gitlab CI/CD 管道以部署存储库的特定部分

设置 GitLab CI/CD 以将多个存储库部署到 DigitalOcean Droplet 上的 Docker 容器

Dockerfile 应该提交到哪个代码存储库?

CI/CD