CLI を使用した Terraform テンプレートのオンボード
このチュートリアルでは、CLIを使用してTerraformテンプレートをアカウントにオンボードする方法を説明します。 このチュートリアルを完了すると、プライベート・カタログを作成してテンプレートをインポートする方法を学習できます。 その後、テンプレートがリソースを作成できること、またはスクリプトを実行できることを確認し、アカウントへのアクセス権限を持つユーザーがそのテンプレートを使用できるようにすることができます。
開始前に
-
従量課金 (PAYG) またはサブスクリプションのアカウントを使用していることを確認してください。 詳しくは、アカウント・タイプの表示を参照してください。
-
ソースコードを GitHub または GitLab のリポジトリにリリースとしてアップロードします。 ソース・コード・リポジトリーのセットアップ を参照してください。
-
以下の IAM アクセス権限が割り当てられていることを確認してください。
- カタログ管理サービスに対するエディター役割
- アカウント内のすべてのリソース・グループに対するビューアー役割
- Secrets Manager サービスに対するライター役割
-
IBM Cloud CLI と IBM Cloud Schematics プラグインをインストールします。 詳しくは、CLI のセットアップを参照してください。
-
Terraform テンプレートを作成します。
- サポートされるイメージのリストを確認します。
- IBM Cloud オブジェクト・ストレージのインスタンスを作成して、イメージをバケットに追加します。
ソフトウェアを他のアカウントと共有するには、ソフトウェアが Partner Center で承認されている必要があります。 詳しくは、ソフトウェアを販売するためのセットアップの準備を参照してください。
プライベート・カタログの作成
以下の手順を実行して、CLI を使用してソフトウェアを追加します。 このタスクは、CI/CD プロセスで使用できます。
プライベート・カタログを作成します。 プライベート・カタログによって、アカウント内のユーザーの製品に対するアクセス権限を管理することができます。 詳しくは、「CLI 資料」を参照してプライベート・カタログを作成してください。
ibmcloud catalog create --name CATALOG [--catalog-description "DESCRIPTION"]
カタログへの Terraform テンプレートの追加
ソフトウェアをプライベート・カタログに追加します。 プライベート・カタログへのソフトウェアの追加について詳しくは、CLI 資料を参照してください。
ibmcloud catalog offering create --catalog "Name of catalog" --zipurl https://software.url.com.tgz
プライベート・リポジトリーからソフトウェアをインポートする場合は、コマンドに [--token TOKEN] を追加して、パーソナル・アクセス・トークンを使用できます。
Terraform テンプレートへのカテゴリー・タグの追加
カテゴリーを追加します。 デフォルトでは 開発者用ツール カテゴリーが製品に追加されます。 カテゴリーの追加について詳しくは、CLI 資料を参照してください。
ibmcloud catalog offering add-category --catalog "Name of catalog" --offering "software-offering" --category "category"
Terraform テンプレートの更新
プライベート・カタログ内の製品を更新するには、まず製品を取得する必要があります。その後、更新することができます。 詳しくは、製品の更新について cli の資料 を参照してください。
offering get
コマンドを実行します。 詳しくは、ibmcloud catalog offering get を参照してください。
ibmcloud catalog offering get -c <CATALOGID> -o <OFFERINGID> --output json
offering update
コマンドを実行します。
ibmcloud catalog offering update -c <CATALOGID> -o <OFFERINGID> --updated-offering <UPDATED_OFFERING.json>
Terraform テンプレートのバージョンをインポートします
カタログに必要なソフトウェア・バージョンをインポートします。
ibmcloud catalog offering import-version -c <CATALOGID> -o <OFFERINGID> --zipurl <TGZ> --target-version <VERSION>
Terraform テンプレートの検証
ソフトウェアを検証します。 ソフトウェアの検証について詳しくは、CLI 資料を参照してください。
ibmcloud catalog offering version validate --version-locator VERSION_NUMBER --cluster CLUSTER_ID --namespace NAME [--timeout TIMEOUT] [--wait WAIT] [--override-values VALUES|FILENAME]
ソフトウェアのデプロイには数分かかることがあります。 製品の検証状態を照会することによって、検証状況を確認できます。 状態が「有効 (Valid)」の場合、検証が完了しています。 検証状況について詳しくは、CLI 資料を参照してください。
ibmcloud catalog offering version validate-status --version-locator VERSION_NUMBER [--output FORMAT]
バージョンに準備完了のマークを付ける
製品が公開されると、その製品内で準備完了のマークが付けられているすべてのバージョンが同じ可視性を持ちます。 製品の公開が承認されている場合は、以下のコマンドを使用して、バージョンと製品の共有を管理できます。
ibmcloud catalog offering ready --vl <VERSION_LOCATOR>
Terraform テンプレートの公開
ご使用のアカウント内のユーザーが使用できるようにソフトウェアを公開します。 アカウントへの公開について詳しくは、CLI 資料を参照してください。
ibmcloud catalog offering publish account [--catalog CATALOG][--offering OFFERING]