我通过系统配置管理(ansible)安装并配置了Jenkins。通过ansible创建作业,安装模块并配置它们。安装和配置模块授权crowd2后,通过http://localhost/jenkins/reload重新加载配置不起作用,作为必需的授权。要生成授权令牌,您必须先登录,但这不是必需的。我可以使用root权限重新加载配置吗?
P.S。对不起我的英文:)
答案 0 :(得分:2)
java -jar jenkins-cli.jar -noCertificateCheck -s https://jenkins.example.com:8443/jenkins/ reload-configuration
答案 1 :(得分:0)
一个简单的解决方法是使用Ansible重新启动Tomcat或Jenkins服务(取决于Jenkins的托管方式)。
使用此解决方案,将重新加载配置。
如果使用Ansible创建Jenkins的全新安装,则没有人会使用Jenkins。因此,重新启动服务可能是一种可接受的解决方案;)
答案 2 :(得分:0)
您可以将Jenkins CLI与reload
命令一起使用。例如:
java -jar jenkins-cli.jar -s https://jenkins.example.com/ reload
或者您可以首先使用create-job
创建作业,无需重新加载配置。
CLI允许您使用SSH密钥进行身份验证,因此可能更适合从Ansible运行。
答案 3 :(得分:0)
您可以生成面包屑:
curl -u 'admin:password' -X GET http://localhost:8090/crumbIssuer/api/json | jq
响应如下:
{
"_class": "hudson.security.csrf.DefaultCrumbIssuer",
"crumb": "1348b504383211402ce562e0b46b3691",
"crumbRequestField": "Jenkins-Crumb"
}
然后取 crumb
字段值并在重新加载调用中使用它:
curl -u 'admin:password' -X POST http://localhost:8090/reload -H 'Jenkins-Crumb: 1348b504383211402ce562e0b46b3691'
答案 4 :(得分:-1)
转到配置 - >从磁盘重新加载配置
答案 5 :(得分:-1)
尝试一下: java -jar jenkins-cli.jar -s [JENKINS_URL [-auth [USER:PASSWORD]重新加载配置