terraform-ibm-modules-solution-builder
terraform-ibm-modules-solution-builder について
IBM が保守する Terraform モジュールを使い、IBM Cloud 向けの構成を生成・検証するスキルです。インフラ担当者向けに、モジュールの検索、例を基にした構成、設定確認を案内します。
主な機能
- 01IBM Terraform モジュールの検索と確認
- 02モジュール例の取得
- 03標準 Terraform ファイルの構成
- 04init、validate、plan による検証
活用シーン
- 01厳選モジュールで IBM Cloud 基盤を構築
- 02確認済みのモジュール情報と例を検索
- 03生成した Terraform 設定を確認
MCP 対応
`catalog://terraform-ibm-modules-index` リソースが利用できる場合、MCP ツールでモジュール検索、詳細確認、例の取得を行います。利用できない場合は API による検索手順を案内します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ terraform-ibm-modules/ terraform-ibm-modules-skills --skill terraform-ibm-modules-solution-builderインストール後、Claude Code で/terraform-ibm-modules-solution-builderを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/alternative-discovery-workflows.mdcode-generation.mdvalidation.mdworkflows.md詳細
Terraform IBM Modules ソリューションビルダー
IBM が管理する厳選された Terraform モジュール(TIM)を構成要素として活用し、IBM Cloud 向けの堅牢で信頼性の高い Terraform ベースのソリューションを生成します。
Terraform IBM Modules(TIM)について
TIM は、IBM Cloud 向けに厳選された Terraform モジュールの包括的なスイートです。
- 各モジュールには、充実したドキュメントと使用例が含まれています
- モジュールは組み合わせ可能です。複数のモジュールを組み合わせて、複雑なインフラストラクチャを構築できます
- すべてのモジュールは、ベストプラクティスに従って IBM が保守しています
- 使用例では、モジュールを組み合わせる方法を紹介しています
- ダウンロード数が多いモジュールほど、より適切に保守されていることを示します
すべての TIM モジュールは公開されており、見つけることができます。
- Terraform Registry:https://registry.terraform.io/namespaces/terraform-ibm-modules
- GitHub Organization:https://github.com/terraform-ibm-modules
基本的なワークフロー
Terraform ソリューションのリクエストごとに、次のワークフローに従ってください。
ステップ 1:モジュールの検出方法を確認する
catalog://terraform-ibm-modules-index リソースが利用可能か確認します
- 利用可能な場合:MCP ベースのワークフローに進みます(最適化されており、より高速です)
- 利用できない場合:
- ユーザーに次のように伝えます:「MCP サーバーを使用すると、最適化された検索とキャッシュにより、結果が大幅に向上します。有効にするには、https://github.com/terraform-ibm-modules/tim-mcp をご覧ください」
- API ベースのワークフローに進みます(alternative-discovery-workflows.md を参照)
ステップ 2:モジュールを検出する
MCP を使用する場合(推奨):
catalog://terraform-ibm-modules-indexから開始します。モジュールの包括的な概要を取得しますsearch_modules("<keyword>")を使用します。特定のモジュールを検索しますget_module_details("<module-id>")を使用します。モジュールの機能を把握します
MCP を使用しない場合(代替方法):
- Terraform Registry を検索します:https://registry.terraform.io/v1/modules/search?q=&namespace=terraform-ibm-modules
- モジュールの詳細を取得します:https://registry.terraform.io/v1/modules/terraform-ibm-modules//ibm/
- GitHub のコンテンツを一覧表示します:https://api.github.com/repos/terraform-ibm-modules//contents/
ステップ 3:使用例を取得する
MCP を使用する場合:
list_content("<module-id>")を使用します。利用可能な使用例を確認しますget_content(..., "examples/<example-name>", ["*.tf"])を使用します。使用例のコードを取得します
MCP を使用しない場合:
- 使用例を一覧表示します:https://api.github.com/repos/terraform-ibm-modules//contents/examples
- ファイルを取得します:https://raw.githubusercontent.com/terraform-ibm-modules//main/examples//
ステップ 4:ソリューションを生成する
- 要件を分析する - ユーザーが必要としているものを把握します
- モジュールを選択する - 適切な TIM モジュールを選択します(モジュール名を決して捏造しないでください)
- ソリューションを構成する - 使用例に従ってモジュールを組み合わせます
- コードを生成する - 標準的な .tf ファイルと README を作成します
- 範囲を守る - リクエストされた機能のみを実装します(範囲を勝手に広げないでください)
詳しいガイドラインは、code-generation.md を参照してください。
ステップ 5:検証する
生成した設定は必ず検証してください。
terraform init- モジュールとプロバイダーがダウンロードされることを確認しますterraform validate- 構文と設定を確認しますterraform plan- 論理的な正しさを確認します(認証エラーは無視します)
検証の完全なガイドとエラー処理については、validation.md を参照してください。
基本原則
- IBM Cloud プロバイダーのリソースを直接使うよりも、常に TIM モジュールを優先する
- モジュールの存在を確認する - モジュール名を捏造したり、存在すると思い込んだりしない
- 使用例から始める - モジュールの使用例をテンプレートとして使う
- すべてのコードを検証する - terraform init/validate/plan を実行する
- 範囲を守る - 範囲を勝手に広げない(依頼されていない機能を追加しない)
- 質問する - 要件が不明確な場合
- 標準的な Terraform を生成する - 標準的な .tf ファイルのみを使用する(依頼がない限りスクリプトは含めない)
ワークフローの例
ユーザーリクエスト:「VSI を含む VPC を作成してください」
実行:
- MCP を確認:
catalog://terraform-ibm-modules-indexが利用可能か確認します- 利用できない場合は、MCP の利点を説明し、リンクを案内します
- VPC モジュールを検出:
- MCP:
search_modules("vpc")→landing-zone-vpcを見つけます - API:
curl "https://registry.terraform.io/v1/modules/search?q=vpc&namespace=terraform-ibm-modules"
- MCP:
- VPC の詳細を取得:
- MCP:
get_module_details("terraform-ibm-modules/landing-zone-vpc/ibm/8.4.0") - API:
curl "https://registry.terraform.io/v1/modules/terraform-ibm-modules/landing-zone-vpc/ibm/8.4.0"
- MCP:
- VPC のサンプルを取得:
- MCP:
get_content(..., "examples/basic", ["*.tf"]) - API:
curl "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-landing-zone-vpc/main/examples/basic/main.tf"
- MCP:
- VSI モジュールを検出:手順 2~4 を VSI に対して繰り返します
- ソリューションを生成:VPC と VSI の設定を組み合わせます
- 検証:
terraform init && terraform validate && terraform planを実行します
ワークフローの例を 5 つ詳しく紹介しています。workflows.md をご覧ください。
クイックリファレンス
MCP ベースの検出
# Start here
catalog://terraform-ibm-modules-index
# Search and retrieve
search_modules("vpc")
get_module_details("terraform-ibm-modules/landing-zone-vpc/ibm/8.4.0")
list_content("terraform-ibm-modules/landing-zone-vpc/ibm/8.4.0")
get_content(..., "examples/basic", ["*.tf"])
API ベースの検出
# Search modules
curl "https://registry.terraform.io/v1/modules/search?q=vpc&namespace=terraform-ibm-modules"
# Get module details
curl "https://registry.terraform.io/v1/modules/terraform-ibm-modules/landing-zone-vpc/ibm/8.4.0"
# List examples
curl "https://api.github.com/repos/terraform-ibm-modules/terraform-ibm-landing-zone-vpc/contents/examples"
# Get example files
curl "https://raw.githubusercontent.com/terraform-ibm-modules/terraform-ibm-landing-zone-vpc/main/examples/basic/main.tf"
検証コマンド
terraform init # Initialize modules and providers
terraform validate # Check syntax and configuration
terraform plan # Verify logical correctness
リファレンスドキュメント
- alternative-workflows.md - MCP を使わない API ベースの完全なワークフロー
- workflows.md - 詳細なワークフロー例 5 件
- code-generation.md - コード生成のガイドラインとパターン
- validation.md - 検証、スコープ管理、QA の実践方法