リモートスクリプトからjenkinsの最後のビルド番号(特定のジョブ用)を取得しようとしています。Jenkins XMLを解析する
私はこのようにあります。
<jenkins url>/api/xml?tree=jobs[name,lastBuild[number]]
<hudson>
<job>
<name>mfg-tools-build-win32</name>
<lastBuild>
<number>220</number>
</lastBuild>
</job>
...
<job>
<name>client-sign</name>
<lastBuild>
<number>103</number>
</lastBuild>
</job>
...
を生産、私は名前は、 "クライアント・記号" であるジョブの数を( "103")を取得するワン。
<jenkins url>/api/xml?tree=jobs[name[contains(.,'luna-dev-sa7-evcs-client-sign')],lastBuild[number]]
をしかし、それは出力には何も変わっていない:私はジョブ・エントリを制限しようとした
が返さ。 (「クライアントのサインインコピー」としてタグ付けされた1がある)
<jenkins url>/api/xml?xpath=/hudson/job/name/text()[contains(.,%27client-sign%27)]
しかし、それは私にマッチした二つのノードを示すエラーを与えて巻き上げる:
は、私はハドソンのドキュメントのサイトにあるいくつかのXPathを使用してみました。
最後のビルドを実行するには、どのxpathが必要ですか?
更新:要求ごと
: https://wiki.eclipse.org/Hudson-ci/help/remote_access_api#XPath_Selection
アップデート2:
私はこれを行うことができない場合があります。私は前の回答での作業を経て、さらに得た(それが今で削除された):
<jenkins url>/api/xml?depth=1&xpath=//job[name = "client-sign"]/lastBuild/number/text()
しかし、それは今、スロー:それも間違っていない限り
primitive XPath result sets forbidden; implement jenkins.security.SecureRequester
は、私は画面に戻ってきたと思いますスクレイピング>: - [
アップデート3 - 必要に応じて成功はthis answerから
(ではないのXPathで)、私は
<jenkins url>/job/client-sign/lastBuild/buildNumber
を思い付くことができましたそして、それはちょうど、私に103を与えます。 :)
あなたは、XPathのURLを見つけた場所へのリンクを入力してください。 – LarsH