当前位置: 首页 > 面试题库 >

jenkins:通过Groovy API设置根URL

荣沈义
2023-03-14
问题内容

我正在尝试通过Groovy
API更新Jenkins的根URL,因此我可以编写无需手动输入的Jenkins主服务器部署脚本(除了:为什么像Jenkins这样的工具在build /
devops / automation社区中如此受欢迎?自动化?)

基于此文档,我相信我应该能够在脚本控制台中使用以下脚本来更新URL。

import jenkins.model.JenkinsLocationConfiguration
jlc = new jenkins.model.JenkinsLocationConfiguration()
jlc.setUrl("http://jenkins.my-org.com:8080/") 
println(jlc.getUrl())

简要地说,这实例化了一个JenkinsLocationConfiguration对象;setUrl用所需的值调用设置器http://jenkins.my- org.com:8080/;并打印出新网址以确认其已更改。

println语句将打印出我期望的结果,但是此后,通过Web界面“ Manage Jenkins”->“配置系统”->“ Jenkins
URL”可见的值 未按 我的预期进行更新。

我担心Jenkins尚未正确更新该值,这可能会导致在与外部API通信时出现问题。

这是修复Jenkins根URL的有效方法吗?如果没有,那是什么?否则,为什么更改没有反映在配置页面上?


问题答案:

您正在创建一个新的JenkinsLocationConfiguration对象,并更新新的对象,而不是正在使用的现有对象。

jlc = JenkinsLocationConfiguration.get()
// ...
jlc.save()

要从全局jenkins配置中获取一个,请对其进行更新并保存回配置描述符。

参见:https
:
//github.com/jenkinsci/jenkins/blob/master/core/src/main/java/jenkins/model/JenkinsLocationConfiguration.java



 类似资料:
  • 问题内容: 我正在尝试设置脚本以增加Xcode项目的内部版本号。我进行了一次API调用以获取当前的内部版本号,然后我希望对其进行递增,然后将该新的版本号用作环境变量,以便Xcode插件可以使用它。 我安装了EnvInject插件,但是我不知道如何将var从我的shell脚本中获取到环境变量中。 这设置为我需要的值,但是如何将其分配给环境变量,以便以后在工作中访问它? 问题答案: 添加一个构建步骤以

  • 问题内容: 我有一组元素,要求它们的最小宽度等于它们的高度,但是高度没有明确设置。目前,我可以通过jQuery 设置css 属性来实现此目的: 是否可以直接在CSS中指定此行为? 问题答案: 我不相信没有JS,这是不可能的,但是也许有人可以证明我错了? CSS不允许您使用动态变量,因此,如果在页面加载之前未设置高度,我不确定该怎么做。

  • 问题内容: Jenkins要求使用证书才能使用 ssh 发布和 ssh 命令。可以在下进行配置。 问题是:如何创建证书? 我有两台ubuntu服务器,一台运行Jenkins,一台用于运行应用程序。 我应该设置Jenkins证书并将其一部分放置在部署框中,还是将证书设置在部署框上并将其一部分放置在Jenkins上?证书是否需要使用名为Jenkins的用户名,或者可以用于任何用户?我们在开发箱上没有J

  • 我正在尝试根据传递到作业中的参数在Jenkins管道作业中设置环境变量;这样,我可以在需要它的管道的每个阶段使用环境变量。我尝试在环境块中使用Switch语句: 然而,这并不起作用,该作业试图将等号之前的所有行评估为KEY名称: 我该如何让它工作?

  • 问题内容: 我可以通过Java代码本身以编程方式设置java.library.path吗? 以下无效。 问题答案: 不,你不能。此属性是只读值。您可以在JVM启动时通过以下方式更改它: 如果要从特定位置加载库,则可以使用System.load(libraryPath)代替库的完整路径。

  • 问题内容: 有没有一种方法可以使用户在tinyMCE编辑器中轻松更改段落的行高属性?像它的本机“字体大小”或“格式”之类的东西。我知道我可以使用“编辑CSS”功能并在那里进行设置。我正在寻找更人性化的东西。 我在任何地方都找不到。 问题答案: 像这样设置: 您也可以像这样配置不同的高度: 我对此进行了测试,效果很好。