是否可以使用curl将新节点发布到Jenkins API?

我试图通过仅从新从属执行操作来自动化新Jenkins从属加入主控的过程。我知道我可以在新的奴隶上运行以下命令:

java -jar agent.jar -jnlpUrl http://<jenkinsURL>/computer/<myNewNode>/slave-agent.jnlp -secret <secret> -workDir <dir>

但是,为了在从属服务器上运行它,必须已经在主服务器上创建了它,否则http://<jenkinsURL>/computer/<myNewNode>路径将不存在。

要解决此问题,我想知道是否可以将新节点发布到Jenkins API。这样,我可以将其包含在我的新Jenkins从属自动设置中,并在下载和运行agent.jar之前先进行POST。我正在尝试使用以下config.xml作为数据来卷曲它:

<slave>
  <name>myNewNode</name>
  <description>This is my new node</description>
  <remoteFS>/home/jenkins</remoteFS>
  <numExecutors>1</numExecutors>
  <mode>NORMAL</mode>
  <retentionStrategy class="hudson.slaves.RetentionStrategy$Always"/>
  <launcher class="hudson.slaves.JNLPLauncher">
    <workDirSettings>
      <disabled>false</disabled>
      <internalDir>remoting</internalDir>
      <failIfWorkDirIsMissing>false</failIfWorkDirIsMissing>
    </workDirSettings>
  </launcher>
  <label>label1</label>
  <nodeProperties/>
</slave>

,但是它不起作用。它不断返回错误,指出JENKINS CRUMB无效。根据此处的页面(https://support.cloudbees.com/hc/en-us/articles/115003896171-Creating-node-with-the-REST-API),可以发布XML节点。有谁知道如何或以其他方式实现这一目标?

lixiangzyz 回答:是否可以使用curl将新节点发布到Jenkins API?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3122172.html

大家都在问