git - 仅在不为空时如何发布标签
问题描述
我正在尝试让一个 Git 项目在 Jenkins 中工作。
我在这里发现了一篇有趣的博文:使用 Git 和 Jenkins 构建持续交付管道
Padget 女士正在使用带有两个参数的参数化 Jenkins 作业:
- ${COMMIT_HASH} - 签出和构建的内容
- ${TAG} - 要推送的标签。
签出的提交默认为 /refs/heads/master。要应用的标签没有默认值。
有一个构建后的 Git 发布者操作,如果构建成功,它会推送指定的标签。
问题是 ${TAG} 参数不是强制性的,如果将其留空,则尝试 PUSH 空值会产生错误。
在 Git Published 操作中有一个选项,仅在构建成功时才推送。我想要的是它只有在构建成功并且指定了 ${TAG} 时才会推送。
有没有办法做到这一点?
解决方案
这实际上并不能解决问题,但它是一个合理的解决方法。
如果您为 ${TAG} 参数设置默认值,并在 Git Publisher 任务上设置“强制推送”选项,它将覆盖每个构建的标签。
我们将默认设置为“most_recent”,这似乎有效。
推荐阅读
- hyperledger-fabric - Endorser 截止日期前连接失败
- python - 如何处理 Python Gekko 优化中的横向条件(伴随变量 Lamda)?
- android-jetpack-compose - 是否可以不触发滚动的涟漪效应?
- python - 将矩阵与 numpy 相乘
- python - 如何将多个抓取的网址转换为单个观察?
- elastic-stack - 我在本地运行 logstash.conf 文件时遇到了一些问题
- javascript - 当我按下 signUp() 时 insert() 没有发生
- sql-server - 基于 ID 列的标志
- java - Spring Boot Jar 中 jsp 文件的类路径位置
- javascript - jQuery 将子元素的子部分元素移动到其父元素并删除其他元素