第4章 製品および外部サービスの統合
この手順を使用して、既存の製品を統合するか、RHTAP をインストールする前にデフォルトのコンポーネントを置き換えます。既存のサービスを統合すると、データの重複や不要なデプロイメントを回避できます。
RHTAP インストーラーは、連携してセキュアで自動化された CI/CD プラットフォームを形成する一連の製品をデプロイします。ただし、これらの製品のうち 2 つ (Advanced Cluster Security (ACS) と Quay) は、すでに環境にインストールされている可能性があります。いずれかの製品の既存のインスタンスが存在する場合は、そのインスタンスを RHTAP デプロイメントに統合できます。
統合により、データの損失を防ぎ、サービスを重複してデプロイしなくて済みます。既存のインスタンスを統合しない場合は、インストーラーによって新しい名前空間に新しいインスタンスが自動的に作成されます。
さらに、デフォルトの Git、CI、およびレジストリーコンポーネントを、サポート対象の別のコンポーネントに置き換えることもできます。ソースコードリポジトリーや CI ツールなど、一部のカテゴリーでは複数の代替手段を有効にできます。次の表に、デフォルトのコンポーネント、その目的、および使用できる代替コンポーネントを示します。
| Product | 目的 | サポート対象の代替手段 |
|---|---|---|
| GitHub | ソースコードリポジトリー |
|
| Tekton | CI パイプラインエンジン |
|
| Quay | アーティファクトレジストリー | Artifactory |
CI パイプラインの代替手段は SLSA ビルドレベル 2 に準拠しています。Tekton のみが SLSA ビルドレベル 3 に準拠しています。
デフォルトの Git、CI、またはレジストリープロバイダーを置き換えると、RHTAP は対応するプラグインを Red Hat Developer Hub にインストールします。これらのプラグインのほとんどはテクノロジープレビューであるか、コミュニティーによって管理されています。
セキュリティーリスクの可能性とサポートの制限があるため、実稼働環境ではデフォルトコンポーネントを別のコンポーネントに起きけることは推奨されません。
詳細は、Red Hat Trusted Application Pipeline リリースノート のプラグインサポート表と RHDH プラグインのドキュメント を参照してください。
製品を統合したり、インストールをカスタマイズしたりするには、cluster-admin 権限で OpenShift クラスターにログインしているコンテナー内で関連するすべての rhtap-cli コマンドを実行する必要があります。
次の手順では、既存のサービスとサポート対象の代わりのサービスを統合して RHTAP のインストールをカスタマイズする方法について説明します。
4.1. GitHub の統合 リンクのコピーリンクがクリップボードにコピーされました!
RHTAP は GitHub を使用してユーザーを認証し、アプリケーションリポジトリーを作成および管理します。RHTAP をインストールする前に、これらの機能をサポートするように GitHub を設定する必要があります。
GitHub 統合を有効にするには、次の手順を実行します。
- GitHub Personal Access Token を作成します。
- GitHub アプリケーションを作成します。
GitHub Personal Access Token の作成
Personal Access Token (PAT) を作成するには、GitHub 組織を所有している必要があります。既存の GitHub 組織を使用することも、新しい組織を作成することも、管理者に所有権を要求することもできます。
インストール後、GitHub 組織はユーザーがアプリケーションのリポジトリーを生成する場所を提供します。
前提条件
- GitHub 組織の所有権がある。
- Personal Access Token を作成する権限を持つ GitHub ユーザーアカウント。
- GitHub Developer settings へのアクセス。
手順
- GitHub の Developer settings ページに移動します。
- 左側のナビゲーションパネルの Personal access tokens で、Tokens (classic) をクリックします。
- Generate new token ドロップダウンメニューから、Generate new token (classic) を選択します。プロンプトが表示されたら認証します。
-
名前を入力し、有効期限を選択して、Select scopes で repo を選択します。これには
repo:statusからsecurity_eventsまでのすべてのスコープが自動的に含まれます。 - Generate token をクリックします。GitHub はトークンが表示される新しいページにリダイレクトします。
-
(オプション) 後の手順で再利用できるように、トークンを
values.txtなどのファイルに保存します。
GitHub アプリケーションの作成
RHTAP 用の GitHub アプリケーションを作成すると、開発者は RHTAP と対話するための Web ベースのインターフェイスである Red Hat Developer Hub に対して認証できるようになります。また、RHTAP が GitHub 組織にアクセスしてリポジトリーを作成することもできます。
このアプリケーションは、RHTAP で使用する予定の GitHub 組織に作成してインストールする必要があります。インストーラーは設定の大部分を自動化します。
前提条件
-
スコープが
repoの GitHub Personal Access Token - GitHub 組織の名前
- GitHub アプリケーションに割り当てる名前
- registry.redhat.io の有効な認証情報
-
OpenShift クラスターへの
cluster-adminアクセス -
rhtap-cliがインストールされているターミナルまたはコンテナーへのアクセス
手順
GitHub アプリケーションを作成するには、次のコマンドを実行します。
bash-5.1$ rhtap-cli integration github-app \ --create \ --token="$GH_TOKEN" \ --org="$GH_ORG_NAME" \ $GH_APP_NAME
bash-5.1$ rhtap-cli integration github-app \ --create \ --token="$GH_TOKEN" \ --org="$GH_ORG_NAME" \ $GH_APP_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の変数を置き換えてください。
-
$GH_TOKEN: GitHub の Personal Access Token -
$GH_ORG_NAME: GitHub の組織名 -
$GH_APP_NAME: GitHub アプリケーションの名前
-
- コマンド出力から URL をコピーし、ブラウザーで開きます。
- Create your GitHub App をクリックします。
- プロンプトが表示されたら、GitHub に対して認証を行います。
- Create GitHub App for <your organization> をクリックします。
- アプリケーションが作成されたら、成功メッセージ内のリンクをクリックして、GitHub 組織にアプリケーションをインストールします。
- リダイレクトされた GitHub ページで、Install をクリックします。
- RHTAP に使用している GitHub 組織を選択します。
プロンプトが表示されたら、All repositories を選択し、Install をクリックします。
注記この GitHub ページを開いたままにしておくことを推奨します。バナーには、インストール後に RHTAP にアクセスするためのリンク (
https://backstage-developer-hub-rhtap…で始まる) が含まれています。