web-dev-qa-db-ja.com

ジェンキンスでの手動承認後にジョブを開始する

ジョブAが正常に実行された後、ジョブBをトリガーする必要があります。ジョブAが正常に実行されると、電子メール通知が承認者に送信されます。承認者はメールを受け取り、メールリンクをクリックします。彼はJenkinsページに転送され、ジョブBの実行を承認します。

どのプラグインを使用して承認者の名前を指定できるかわからないので、承認者がリンクをクリックしてJenkinsページにログインした後、「承認」と言うだけです。

11
Ishu Gupta
  • セットアップJob A
  • Email extビルド後のアクションの一部として「承認者」にメールを送信するようにJob Aを設定します
  • ジョブ実行へのリンクを含めるようにメールを設定します(ジョブ名だけでなく、メールからプロモーションに直接リンクすることもできます)
  • Job APromotionを設定します
  • そのプロモーションでは、「名前」で「承認者」ユーザーのみが実行できるようにします
  • Job Bをトリガーするようにそのプロモーションを構成します

Job Aが実行されると、「承認者」にメールが送信されます。リンクをクリックすると、Jenkinsジョブ実行UIが表示されます。彼/彼女は「承認者」ユーザーでJenkinsにログインする必要があります。

次に、プロモーションスターをクリックして、「承認」をクリックするだけです。これによりプロモーションがトリガーされ、次にJob Bがトリガーされます

注:「プロモーション」プラグインがなくても同様のことを実現できますが、これがまさにそのプラグインが存在する理由です。使用してください。

15
Slav

別のオプションは Jenkinsワークフロープラグイン を使用することです(jenkins-workflow質問のタグ)、この種のより複雑なシステム用に設計されています。あなたは(私の頭の上から)のようなものを書くでしょう:

build job: 'A', wait: true mail to: 'user@…', subject: "Please approve #${env.BUILD_NUMBER}", body: """ See ${env.BUILD_URL}input/ """ input submitter: 'userId', message: 'Ready?' build job: 'B', wait: true

後でbuildステップは、それらのフリースタイルジョブの作業をインライン化することにより、実際のビルドタスクに置き換えることができます。

5
Jesse Glick