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

以编程方式创建jenkins JLNP从站

松博耘
2023-03-14
问题内容

我能够通过Jenkins Web GUI创建一个新节点,然后让容器中运行的节点通过名称和-secret值连接回Jenkins主节点

例如 docker run jenkinsci/jnlp-slave -url http://jenkins-server:port <secret> <slave name>

有没有一种方法可以通过编程方式创建Jenkins节点并获取密码和从属名称,因此我不必通过GUI来执行此操作?


问题答案:

以编程方式创建代理

您可以使用create-node
CLI命令创建具有给定配置的新代理。

例如,考虑到文件中的此最小JNLP代理配置config.xml

<slave>
  <remoteFS>/opt/jenkins</remoteFS>
  <numExecutors>2</numExecutors>
  <launcher class="hudson.slaves.JNLPLauncher" />
</slave>

您可以create-node通过CLI客户端或SSH界面运行命令:

cat config.xml | java -jar jenkins-cli.jar -s https://jenkins/ create-node my-agent

查看代理配置

要查看现有代理的XML配置外观,可以将其附加config.xml到代理URL,例如https://jenkins/computer/some-
agent-name/config.xml
,也可以使用get-nodeCLI命令。

以编程方式获取每个代理的机密

要在不使用Jenkins Web UI的情况下获取秘密的十六进制值,可以通过groovyCLI命令运行脚本:

echo 'println jenkins.model.Jenkins.instance.nodesObject.getNode("my-agent")?.computer?.jnlpMac' \
  | java -jar ~/Downloads/jenkins-cli.jar -s https://jenkins/ groovy =

这将直接返回秘密值。请注意,为了groovy通过SSH接口使用该命令,您需要Jenkins
2.46或更高版本。在早期版本中,它只能通过CLI客户端运行。



 类似资料:
  • 问题内容: 我一直在尝试以编程方式重做我的应用程序上的工作。(不使用情节提要) 除了手动制作导航控制器外,我几乎完成了。 我一直在做一些研究,但找不到任何手动实现此方法的文档。(我开始将应用程序制作为单视图应用程序) 目前,我只有1个ViewController。当然是appDelegate 导航控制器将在应用程序的所有页面中使用。 如果有人可以帮助我,或发送指向一些适当文档的链接以编程方式进行此

  • 问题内容: 我知道我可以使用Java中的 api 以编程方式创建文件,如下所示: 但是是否有任何 API 可以构建树?(例如Dom之类的api) 我需要这样的东西: 和: 提前致谢。 问题答案: 由于XSLT也是XML,因此您可以简单地使用相同的策略: 等等… 但这不是很优雅。您应该改用库或框架,但应该很容易找到一个谷歌浏览器。

  • 我有一个WS,它返回非常基本的产品数据:代码、价格和图像。我需要用这些基本数据以编程方式创建Hybris产品,然后进行同步,以便在店面上看到这些产品。 创建具有这些基本信息的产品的步骤是什么?有OOTB服务吗?

  • 我正尝试使用以下命令以编程方式创建:

  • 问题内容: 我试图以编程方式重现以下渐变。 如何以编程方式设置参数?谢谢 问题答案: http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html 要设置该特定参数(我假设您没有指定一个centerX值): 因此,以编程方式创建上述渐变(不同颜色除外): 注意:对于径向渐变,方向将被忽略

  • 问题内容: 我尝试以编程方式实现UITableView,而不使用xib或Storyboards。这是我的代码: ViewController.swift MyTableViewController.swift 但是当我运行应用程序时,我得到的只是空表。在日志中,我看到了和的几行,但没有。如何修复此代码以获取包含6行文本的表格? 问题答案: 注意: 正如您提到的,您刚刚开始在中进行编程。我以编程方式