Automation Pipelines
を Jenkins と統合する方法

Automation Pipelines
には、Jenkins プラグインが搭載されています。Jenkins ジョブをトリガしてソース コードをビルドおよびテストするというものです。この Jenkins プラグインは、テスト ケースを実行し、カスタム スクリプトを使用できます。
  • バージョン 1.561 以降を実行している Jenkins サーバをセットアップします。
  • Automation Pipelines
    で、プロジェクトのメンバーであることを確認します。メンバーでない場合は、プロジェクトにメンバーとして追加するように
    Automation Pipelines
    管理者に依頼します。Automation Pipelinesでプロジェクトを追加する方法を参照してください。
  • Jenkins サーバにジョブがあり、パイプライン タスクがそのジョブを実行できるようになっていることを確認します。
パイプラインで Jenkins ジョブを実行するには、Jenkins サーバを使用し、
Automation Pipelines
で Jenkins エンドポイントを追加します。次に、パイプラインを作成し、Jenkins タスクを追加します。
Automation Pipelines
で Jenkins タスクと Jenkins エンドポイントを使用すると、Jenkins でマルチブランチ ジョブをサポートするパイプラインを作成できます。マルチブランチ ジョブには、Git リポジトリの各ブランチに独立したジョブが含まれます。マルチブランチ ジョブをサポートするパイプラインを
Automation Pipelines
内に作成するには、次の処理を行います。
  • Jenkins タスクは、Jenkins サーバ上の複数のフォルダにある Jenkins ジョブを実行できます。
  • Jenkins タスク設定のフォルダ パスをオーバーライドして、別のフォルダ パスを使用できます。このパスは、
    Automation Pipelines
    の Jenkins エンドポイントで定義されているデフォルトのパスをオーバーライドします。
  • Automation Pipelines
    のマルチブランチ パイプラインは、Git リポジトリまたは GitHub リポジトリに含まれる
    .groovy
    タイプの Jenkins ジョブ ファイルを検出し、リポジトリ内でスキャンした各ブランチでジョブの作成を開始します。
  • Jenkins エンドポイントで定義されているデフォルトのパスを、Jenkins タスク設定で指定したパスでオーバーライドして、メインの Jenkins ジョブ内の任意のブランチに関連付けられたジョブとパイプラインを実行できます。
  1. Jenkins エンドポイントを追加し、検証します。
    1. エンドポイント
      新規エンドポイント
      の順にクリックします。
    2. プロジェクトを選択し、エンドポイントのタイプとして
      Jenkins
      を選択します。次に、名前と説明を入力します。
    3. このエンドポイントがインフラストラクチャのビジネス クリティカルなコンポーネントである場合は、
      制限付きとしてマーク
      を有効にします。
    4. Jenkins サーバの URL を入力します。
    5. Jenkins サーバにログインするためのユーザー名とパスワードを入力します。次に、その他の情報を入力します。
      Jenkins エンドポイントのその他の情報
      エンドポイントの入力情報
      説明
      フォルダ パス
      ジョブをグループ化するフォルダのパス。Jenkins は、フォルダ内のすべてのジョブを実行できます。サブフォルダを作成できます。例:
      • folder_1
        job_1
        を含めることができます
      • folder_1
        folder_2
        を含め、そこに
        job_2
        を含めることができます
      folder_1
      のエンドポイントを作成するとフォルダ パスは
      job/folder_1
      となり、エンドポイントには
      job_1
      のみが表示されます。
      folder_2
      という名前の子フォルダにあるジョブのリストを取得するには、そのフォルダ パスを
      /job/folder_1/job/folder_2/
      として使用するエンドポイントを別途作成する必要があります。
      マルチブランチ Jenkins ジョブのフォルダ パス
      マルチブランチ Jenkins ジョブをサポートするには、Jenkins タスクで、Jenkins サーバの URL とジョブの完全なパスを含むフル パスを入力します。Jenkins タスクにフォルダ パスを含めると、そのパスは Jenkins エンドポイントに表示されるパスをオーバーライドします。Jenkins タスクでカスタム フォルダ パスを使用した場合、
      Automation Pipelines
      はそのフォルダ内のジョブだけを表示します。
      • 例:
        https://server.yourcompany.com/job/project
      • パイプラインでメインの Jenkins ジョブもトリガする必要がある場合は、次のパスを使用します。
        https://server.yourcompany.com/job/project/job/main
      URL
      Jenkins サーバのホスト URL。URL を
      protocol://host:port
      の形式で入力します。例:
      http://192.10.121.13:8080
      ポーリング間隔
      Automation Pipelines
      が Jenkins サーバをポーリングして更新を確認する間隔。
      申請の再試行回数
      Jenkins サーバのスケジュール設定されたビルド申請を再試行する回数。
      再試行の待機時間
      Jenkins サーバのビルド申請を再試行するまでの待機時間(秒単位)。
    6. 検証
      をクリックし、エンドポイントが
      Automation Pipelines
      に接続されていることを確認します。接続されていない場合は、エラーを修正し、
      保存
      をクリックします。
      コードをビルドおよびテストする Jenkins エンドポイントには URL が必要です。このエンドポイントでは、ユーザー パスワードを保存する変数を作成できます。
  2. コードをビルドするには、パイプラインを作成し、Jenkins エンドポイントを使用するタスクを追加します。
    1. パイプライン
      新しいパイプライン
      空白のキャンバス
      の順にクリックします。
    2. デフォルトのステージをクリックします。
    3. [タスク] 領域で、タスクの名前を入力します。
    4. タスク タイプに
      Jenkins
      を選択します。
    5. 作成した Jenkins エンドポイントを選択します。
    6. ドロップダウン メニューから、パイプラインが実行する Jenkins サーバ上のジョブを選択します。
    7. ジョブのパラメータを入力します。
    8. Jenkins ジョブの認証トークンを入力します。
    Jenkins エンドポイントを使用する Jenkins タスクを設定する場合は、Jenkins ジョブを選択し、値を追加します。トークンを入力することもできます。
  3. パイプラインを有効にして実行し、パイプラインの実行状況を表示します。
    Jenkins タスクのパイプライン実行では、ジョブ ID、ジョブ URL、キーと値のペアを含む Jenkins ジョブの詳細がジョブ結果に表示されます。
  4. パイプライン ダッシュボードで実行の詳細とステータスを確認します。
    障害があれば特定し、その理由を突き止めます。また、パイプラインの実行期間、完了、および障害に関するトレンドも表示できます。
    パイプライン ダッシュボードには、パイプラインの実行数と実行にかかった時間、各実行のステータスなど、パイプラインの実行に関する詳細が表示されます。
完了です。エンドポイントを追加し、パイプラインを作成し、コードをビルドする Jenkins タスクを設定して、
Automation Pipelines
を Jenkins と統合しました。
Jenkins ビルド タスクの YAML の例
この例で使用したタイプの Jenkins ビルド タスクの場合、YAML は次のコードに似ています。通知が有効になっています。
test: type: Jenkins endpoints: jenkinsServer: jenkins input: job: Add two numbers parameters: Num1: '23' Num2: '23'
詳細については、他のセクションを参照してください。エンドポイントへの Automation Pipelines の接続を参照してください。