在从生产部门合并到主分支部门时,如何在Gitlab CI/CD中增加版本或标记
我正在做一个项目,我想标记或给出一个版本号。当合并发生并且我的CI/CD成功运行时,我希望gitlab在我的gitci.yml文件中标记v1.0、1.1等。您可以使用此工具。它通过提交前缀自动检测要增加的版本(主要、次要、补丁)。它不仅可以更新gitlab标记,还可以发送松弛通知、更新版本文件或任何自定义逻辑 示例设置如下所示(完整的示例链接将位于答案的末尾)在从生产部门合并到主分支部门时,如何在Gitlab CI/CD中增加版本或标记,git,gitlab,versioning,git-tag,gitversion,Git,Gitlab,Versioning,Git Tag,Gitversion,我正在做一个项目,我想标记或给出一个版本号。当合并发生并且我的CI/CD成功运行时,我希望gitlab在我的gitci.yml文件中标记v1.0、1.1等。您可以使用此工具。它通过提交前缀自动检测要增加的版本(主要、次要、补丁)。它不仅可以更新gitlab标记,还可以发送松弛通知、更新版本文件或任何自定义逻辑 示例设置如下所示(完整的示例链接将位于答案的末尾) .gitlab ci.yml文件 构建版本: 图像:节点:Dubinium 阶段:构建发布 脚本: -npm i语义发布@semanti
.gitlab ci.yml
文件构建版本:
图像:节点:Dubinium
阶段:构建发布
脚本:
-npm i语义发布@semantic release/changelog@semantic release/commit analyzer@semantic release/gitlab@semantic release/git@semantic release/npm@semantic release/release notes generator semantic release slack bot
-npx语义释放
仅:
-主人
除:
参考文献:
-标签
变量:
-$CI\u COMMIT\u TITLE=~/^RELEASE:+$/
.releaserc.yaml
文件(与.gitlab ci.yml处于同一级别)分支:['master']
ci:没错
调试:正确
dryRun:错误
标记格式:“${version}”
#全局插件选项(将传递给所有插件)
预设:“常规提交”
gitlabUrl:'http://gitlab.mycomany.com/“#您的gitlab url
懒虫钩:'https://slack.xxx.com/hooks/q3dtkec6yjyg9x6616o3atgkkr“#如果需要,请通知
#负责验证继续发布所需的条件:
#配置正确,身份验证令牌有效等。。。
验证条件:
-“@semantic release/changelog”
-“@semantic release/git”
-“@semantic release/gitlab”
-“语义释放松弛机器人”
#负责确定下一版本的类型(主要、次要或补丁)。
#如果定义了多个带有analyzeCommits步骤的插件,则发布类型将为
#插件输出中最高的一个。
#详情请参阅:https://github.com/semantic-release/commit-analyzer#configuration
分析提交:
-路径:“@semantic release/commit analyzer”
#负责生成发行说明的内容。
#如果定义了多个带有generateNotes步骤的插件,
#发行说明将是每个插件输出串联的结果。
生成节点:
-路径:“@semantic release/release notes生成器”
编写者注意事项:
groupBy:“类型”
委员会主席:“职务”
commitsSort:'标题'
linkCompare:对
linkReferences:true
#负责准备发布,例如创建或更新文件
#例如package.json、CHANGELOG.md、文档或编译的资产
#以及推动一项承诺。
准备:
-路径:“@semantic release/changelog”
-路径:“@semantic release/git”
消息:“发布:${nextRelease.version}”
资产:['CHANGELOG.md']
#负责发布发布。
出版:
-路径:“@semantic release/gitlab”
成功:
-路径:'semantic release slack bot'
notifyOnSuccess:true
markdownReleaseNotes:false
失败:
-路径:'semantic release slack bot'
notifyOnFail:true
$git commit--allow empty-m“fix:fake release”
(将增加路径版本)完整的工作示例可用谢谢@ujlbu。其他使用其他语言的服务如何?@ILoveCode此解决方案与语言无关(不依赖于服务语言)。您只需要配置文件、适当的git提交前缀和命令行实用程序语义-release@ujlbu4,是否可以创建gitlab管道构建,并使用类似jenkins job的增量构建编号,如果是,请告诉我know@Pradeepkumar对于增量构建编号,请查看类似于
CI\u PIPELINE\u ID
或CI\u JOB\u ID
。顺便说一句,您不需要本文中的语义发布工具来使用预定义的环境变量