2017-07-28 4 views
0

Jenkinsのパラメータ化されたトリガ・プラグインを使用して、マルチブランチ・パイプライン・プロジェクト(RED Outlook Addin)を起動します。ビルドが完了したら、Artifact Pluginをコピーしてアーティファクトをコピーします。 Iプロジェクト名が "RED Outlook Addin/$ {CIOS_BRANCH_NAME}"のビルドステップ "別のプロジェクトからアーティファクトをコピーする"を追加します。これはブランチ名をパラメータとして取得するためです。これは、 "12"のようなビルド番号を指定すると機能します。しかし、ビルド番号を$ TRIGGERED_BUILD_NUMBER_RED_Outlook_Addin _ $ {CIOS_BRANCH_NAME}に設定した場合、このエラーが発生します。アーティファクトコピーのプロジェクトを見つけることができません。マルチブランチパイプラインビルドが呼び出された場合、トリガー/コールから最後のビルド番号を取得する方法は他のプロジェクトでビルドされますか?

$ TRIGGERED_BUILD_NUMBER_パラメータは、指定した分岐でどのように呼び出すことができますか?ヘルプ ため

Thxをクリス

答えて

0

あなたはhttpRequest pluginを使用して、たとえば、あなたのジェンキンスサーバーのJSON APIを照会することができます:

@NonCPS 
def parseJson(String text) { 
    def sup = new JsonSlurper() 
    def json = sup.parseText(text) 
    sup = null 
    return json 
} 

def getLastStableBuildNumber(String project, String branchName = 'master') { 
    def response = httpRequest url: "http://jenkins/job/${project}/job/${branchName}/lastStableBuild/api/json", validResponseCodes: '200' 
    def json = parseJson(response.content) 
    return json.number 
} 
関連する問題