我需要备份我的Jenkins配置。简单地给出Jenkins数据目录的路径不是一个选项:
我安装了Backup Plugin并找到了相当不错的设置。现在我想知道我是否可以使用bash脚本远程触发它。我知道在/ jenkins / backup / launchBackup网址上使用curl
应该可以解决这个问题,但我收到了403 Forbidden错误,因为我作为匿名用户访问了URI,但是找不到登录或解决此问题的解决方案。
那么有没有人知道从命令行触发配置备份的简单方法?
答案 0 :(得分:9)
Jenkins wiki描述了如何perform an authenticated login in scripts。简答:从用户页面转到配置屏幕并获取API令牌,然后在运行脚本时将其用作密码。
我没有尝试使用Backup插件,但它适用于运行常规构建,因此它适用于任何可编写脚本的调用。
没有身份验证:
$ curl http://jenkins:8080/job/my%20job/build
[ HTML page saying "Authentication required" ]
使用身份验证:
$ curl --user dbacher:$MY_API_TOKEN http://jenkins:8080/job/my%20job/build
[ returns nothing and the build starts ]
更新:修复作业错误,感谢您的评论。
答案 1 :(得分:2)
$ curl http://jenkins:8080/job/MY_JOB_NAME/build?build
这是工作,而不是工作,我最终需要构建。