我有一个看起来像这样的bash脚本:
#!/bin/sh
previousRelease=`git describe --tags --match "release*" origin/release`
git diff --name-status $previousRelease..origin/release
Run Code Online (Sandbox Code Playgroud)
有没有办法让Jenkins在构建过程中执行它?目的是查看自上次发布以来已更改的文件列表,作为确认发布应该上升的手动步骤.触发构建的用户需要读取输出,然后确认应该继续发布.
大多数事情都可以在 Jenkins 中完成,但如果这是最好的方法则是另一个问题。
为了解决这个问题,我将使用一种包含两个工作的方法,一个用于检查差异(将其连接到 git 存储库),另一个用于执行实际发布。
检查差异作业
1 创建一个构建类型为“execute shell”的自由式项目类型的作业,并运行上面的脚本。在日志末尾添加一些打印内容,以创建一个可单击的链接,以使用当前 git-id 作为参数手动启动发布作业。
只需在控制台输出中打印 URL 即可使其可点击,因此:
export GITID=`git log -n| grep and sed or awk something`
echo http://jenkins.example.com:8888/job/releaseme/buildWithParameters?label=$GITID¶meters=build
Run Code Online (Sandbox Code Playgroud)
将创建您请求的接受更改用户界面。
发布工作
2 创建另一项作业(上面我假设您将其命名为releaseme)让该作业有一个参数作为参数(勾选“此构建已参数化”)让参数成为您想要发布的git-id。在此作业中创建您的发布脚本。
| 归档时间: |
|
| 查看次数: |
4280 次 |
| 最近记录: |