2016-05-11 19 views

答えて

0

Stash Notifierは、Jenkinsのビルドジョブ設定でPost Stepとして追加して使用します。あなたのジェンキンスのジョブ構成で

ビルド後のアクション]セクションに移動し、ビルド後のアクションを追加し、疑問が、お住まいの地域に行けばスタッシュインスタンス は、e. g. http://localhost:7990 or http://my.company/stash.

をスタッシュのベースURLを入力します。通知選択をクリックしてくださいサーバを隠し、ブラウザのURLを確認してください。 URL http://[email protected]:7991/projects e。 g。この場合、サーバのベースURLはhttp://localhost:7991です。 資格情報プラグインを使用して、隠しの資格情報を選択します。

+1

私の質問には次のように書かれています。「構成後のページには「ビルド後のアクション」セクションはありません。あなたのJenkins 2マルチブランチパイプラインにこのようなセクションがありますか? –

+0

これは、標準のJenkinsジョブを使用している場合にのみ機能します...質問はパイプラインを使用する方法でした。プラグインをステップとして呼び出せなければならないと思います。 – kenyee

1

私はそれがまだパイプラインまたはマルチブランチパイプラインジョブの種類と互換性がないと思う。

私はAbhijeet Kambleは、httpクライアントまたはカールを使って自分でアップデートを送信できることを意味します。このような

何か:

withCredentials([[$class   : 'UsernamePasswordMultiBinding', credentialsId: "$env.componentCredentialsId", 
      usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) { 
    writeFile file: 'build.json', text: "{\"state\": \"SUCCESSFUL\", \"key\": \"${env.JOB_NAME}\", \"name\": \"${env.BUILD_TAG}\", \"url\": \"${env.BUILD_URL}\"}" 
    sh '''curl -u $USERNAME:$PASSWORD -H "Content-Type: application/json" -X POST $URL -d @build.json''' 
} 

それはプラグインのように洗練された非常に単純な例ではないことに注意してください。

+0

は、credentialsIDが最新のJenkins 2.xで動作しなかったため、プラグインが動作しなくなりました...彼らはもうUUIDを使用しません。これは最も簡単なことでした... – kenyee

+0

URLはhttps:// /rest/build-status/1.0/commits/ の形式でなければなりません。 – kenyee

4

Stash Notifierは、バージョン1.11以降のパイプラインをサポートするようになりました。 examples in the READMEから

:「!重要!」

node { 
    step([$class: 'StashNotifier'])   // Notifies the Stash Instance of an INPROGRESS build 

    try { 
     // Do stuff 
     currentBuild.result = 'SUCCESS'  // Set result of currentBuild !Important! 
    } catch(err) { 
     currentBuild.result = 'FAILED'  // Set result of currentBuild !Important! 
    } 

    step([$class: 'StashNotifier'])   // Notifies the Stash Instance of the build result 
} 

それはcurrentBuild.resultを設定することがあると言うが、私の経験では、あなたの手順は、すでにこれを行っていない場合、これが唯一のケースであるということでした。たとえば、sh "false"がある場合、shステップでは、0以外の終了コードでビルド結果が失敗に設定されるため、try/catchでその値をラップする必要はありません。これは、カスタムの成功/失敗ロジックが必要な場合にのみ必要です。

関連する問題