Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

5.8. 自動化ビルドの設定

OpenShift Container Platform GitHub リポジトリー からこのアプリケーションのソースコードをフォークした。そのため、フォークしたリポジトリーにコードの変更をプッシュするたびに、Webhook を使用してアプリケーションのリビルドを自動的にトリガーできます。

アプリケーションの Webhook を設定するには、以下を実行します。

  1. BuildConfig のトリガーセクションを表示して、GitHub Webhook トリガーが存在することを確認します。

    $ oc edit bc/ruby-ex

    以下のような出力が表示されます。

    triggers
    - github:
        secret: Q1tGY0i9f1ZFihQbX07S
        type: GitHub

    シークレットは、ユーザーおよびリポジトリーのみがビルドをトリガーできるようにします。

  2. 以下のコマンドを実行して、BuildConfig に関連付けられた Webhook URL を表示します。

    $ oc describe bc ruby-ex
  3. 上記のコマンドで出力される GitHub Webhook ペイロード URL をコピーします。
  4. GitHub のフォークされたリポジトリーに移動してから Settings をクリックします。
  5. Webhooks & Services をクリックします。
  6. Add webhook をクリックします。
  7. Webhook URL を Payload URL フィールドに貼り付けます。
  8. Content Typeapplication/json に設定します。
  9. Add webhook をクリックして保存します。

GitHub は、ping ペイロードを OpenShift Container Platform サーバーに送信して、通信が成功したことを確認します。Webhook URL の横に緑色のチェックマークが表示された場合は、正しく設定されています。チェックマークの上にマウスをかざして、最終配信のステータスを表示します。

フォークしたリポジトリーにコードの変更をプッシュする次回のタイミングで、アプリケーションが自動的に再ビルドされます。