Menu Close
Settings Close

Language and Page Formatting Options

4.8.4. サービスプロバイダーをホストする Git リポジトリーの Pipelines as Code の設定

Pipelines as Code をインストールした後に、クラスター管理者はサービスプロバイダーをホストする Git リポジトリーを設定できます。現在、以下のサービスがサポートされています。

  • Github アプリケーション
  • GitHub Webhook
  • Bitbucket Server
  • Bitbucket Cloud
注記

GitHub アプリケーションが、Pipelines as Code を使用するために推奨されるサービスです。

4.8.4.1. GitHub アプリケーションの Pipelines as Code の設定

GitHub アプリケーションは Red Hat OpenShift Pipeline とのインテグレーションポイントとして機能し、Git ベースのワークフローのメリットを OpenShift Pipelines にもたらします。クラスター管理者は、すべてのクラスターユーザーに単一の GitHub アプリケーションを設定できます。GitHub アプリケーションが Pipelines as Code と連携するには、GitHub アプリケーションの Webhook が GitHub イベントをリッスンする Pipelines as Code イベントリスナールート (または受信エンドポイント) をポイントするようにします。

4.8.4.1.1. GitHub アプリケーションの設定

クラスター管理者は、以下のコマンドを実行して GitHub アプリケーションを作成できます。

$ tkn pac bootstrap github-app

tkn pac CLI プラグインがインストールされていない場合は、GitHub アプリケーションを手動で作成できます。

手順

Pipelines as Code 用に GitHub アプリケーションを手動で作成および設定するには、以下の手順を実行します。

  1. GitHub アカウントにサインインします。
  2. Settings -→ Developer settings -→ GitHub Apps の順に移動し、New GitHub App をクリックします。
  3. GitHub App フォームに以下の情報を入力します。

    • GitHub Application Name: OpenShift Pipelines
    • Homepage URL: OpenShift Console の URL
    • Webhook URL: Pipelines as Code ルートまたは受信 URLこの情報は、コマンド echo https://$(oc get route -n pipelines-as-code el-pipelines-as-code-interceptor -o jsonpath='{.spec.host}') を実行して取得することができます。

      注記

      Red Hat OpenShift Pipelines Operator を使用してデフォルトでインストールされる Pipelines as Code の場合、pipelines-as-code の代わりに openshift-pipelines namespace を使用します。

    • Webhook secret: 任意のシークレット。コマンド openssl rand -hex 20 を実行してシークレットを生成することができます。
  4. 以下の リポジトリーのパーミッション を選択します。

    • チェック: 読み取り/書き込み
    • コンテンツ: 読み取り/書き込み
    • 問題: 読み取り/書き込み
    • メタデータ: 読み取り専用
    • プルリクエスト: 読み取り/書き込み
  5. 以下の 組織のパーミッション を選択します。

    • メンバー: 読み取り専用
    • プラン: 読み取り専用
  6. 以下の ユーザーパーミッション を選択します。

    • コミットコメント
    • 問題のコメント
    • プルリクエスト
    • プルリクエストのレビュー
    • プルリクエストのレビューコメント
    • プッシュ
  7. Create GitHub App をクリックします。
  8. 新たに作成された GitHub App の Details ページで、上部に表示される App ID を書き留めます。
  9. Private keys セクションで、Generate Private key をクリックして GitHub アプリケーションの秘密鍵を自動的に生成およびダウンロードします。今後の参照や使用のために秘密鍵を安全に保管します。
4.8.4.1.2. GitHub アプリケーションにアクセスするための Pipelines as Code の設定

新たに作成された GitHub アプリケーションにアクセスするために Pipelines as Code を設定するには、以下のコマンドを実行します。

+

$ oc -n <pipelines-as-code> create secret generic pipelines-as-code-secret \ 1
        --from-literal github-private-key="$(cat <PATH_PRIVATE_KEY>)" \ 2
        --from-literal github-application-id="<APP_ID>" \ 3
        --from-literal webhook.secret="<WEBHOOK_SECRET>" 4
1
Red Hat OpenShift Pipelines Operator を使用してデフォルトでインストールされる Pipelines as Code の場合、pipelines-as-code の代わりに openshift-pipelines namespace を使用します。
2
GitHub アプリケーションの設定時にダウンロードした秘密鍵へのパス。
3
GitHub アプリケーションの App ID
4
GitHub アプリケーションの作成時に提供された Webhook シークレット。
注記

GitHub Enterprise から設定されたヘッダーを検出し、それを GitHub Enterprise API 承認 URL に使用することで、Pipelines as Code は自動的に GitHub Enterprise と連携します。