JNLP 的秘密从何而来?

11 jenkins

我正在将静态从站连接到 Jenkins 主站。我要使用的命令是:

java -jar <PATH>/slave.jar -jnlpUrl $JENKINS_MASTER_URL -secret $JNLP_SECRET
Run Code Online (Sandbox Code Playgroud)

我的问题是$JNLP_SECRET秘密从何而来?

如果它在 Jenkins Master 中配置了一些东西,那么它在哪里配置?

如果我可以访问它,我可以将它粘贴到这个命令中吗?

简短的解释或文档链接将不胜感激。

Bra*_*ght 7

我没有“价值从何而来”的知识,但如果您是 Jenkins 管理员,您可以登录 Jenkins、管理 Jenkins、脚本控制台,然后运行此脚本(来自此处的脚本:JENKINS-18342):

for (aSlave in hudson.model.Hudson.instance.slaves) 
{ println aSlave.name + "," + aSlave.getComputer().getJnlpMac() }
Run Code Online (Sandbox Code Playgroud)

此文档还描述了如果您不是 Jenkins 管理员,您可以如何执行此操作:How to find JNLP Node's secret key remote


Mic*_*ers 3

JNLP_SECRET作为您下载的slave-agent.jnlp 的一部分传递以启动您的Jenkins 从站。

\n

您可以按照此处所述从此文件中提取机密:

\n
\n

您可以在 $NODE_URL/slave-agent.jnlp 下载 \xe2\x80\x9cslave-agent.jnlp\xe2\x80\x9d 文件。该文件实际上包含包含机密的 XML 内容。

\n

以下是从 Jenkins 实例下载的 JNLP 文件示例:https://cje.example.com/computer/jnlpAgentTest/slave-agent.jnlp - 秘密是b8c80148ce36de10c9358384fac9e28fbba941055a9a6ab2277e75ddc29a8744

\n
  <jnlp codebase="https://cje.example.com/computer/jnlpAgentTest/" spec="1.0+">\n      <information>\n          <title>Agent for jnlpAgentTest</title>\n          <vendor>Jenkins project</vendor>\n          <homepage href="https://jenkins-ci.org/"/>\n      </information>\n      <security>\n          <all-permissions/>\n      </security>\n      <resources>\n          <j2se version="1.8+"/>\n          <jar href="https://cje.example.com/jnlpJars/remoting.jar"/>\n      </resources>\n      <application-desc main-class="hudson.remoting.jnlp.Main">\n          <argument>b8c80148ce36de10c9358384fac9e28fbba941055a9a6ab2277e75ddc29a8744</argument>\n          <argument>jnlpAgentTest</argument>\n          <argument>-workDir</argument>\n          <argument>/tmp/jnlpAgenttest</argument>\n          <argument>-internalDir</argument>\n          <argument>remoting</argument>\n          <argument>-url</argument>\n          <argument>https://cje.example.com/</argument>\n      </application-desc>\n  </jnlp>\n
Run Code Online (Sandbox Code Playgroud)\n
\n