From shiiman-terraform
既存リソースを Terraform に import する。「import して」「リソース import」「既存リソース取り込み」「terraform import」「tf import」「インポート」「既存インフラを管理」「import ガイド」「リソースを terraform で管理」などで起動。
npx claudepluginhub shiiman/claude-code-plugins --plugin shiiman-terraformThis skill is limited to using the following tools:
既存の AWS/GCP/Azure リソースを Terraform の管理下に取り込む支援をします。
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
既存の AWS/GCP/Azure リソースを Terraform の管理下に取り込む支援をします。
$ARGUMENTS に --help が含まれる場合、以下を表示して終了:
/shiiman-terraform:import - Terraform Import
概要:
既存の AWS/GCP/Azure リソースを Terraform の管理下に取り込む支援をします。
使用方法:
/shiiman-terraform:import [オプション]
オプション:
--help このヘルプを表示
| 操作 | トリガー例 |
|---|---|
| import ガイド | 「import して」「インポート」 |
| リソース指定 | 「EC2 を import」「S3 を import」 |
| 設定生成 | 「import 用の tf を作成」 |
ユーザーにリソース情報を確認:
## Import 対象
import するリソースの情報を教えてください:
1. リソースタイプ(例: aws_instance, aws_s3_bucket)
2. リソース ID(例: i-1234567890abcdef0, my-bucket)
3. Terraform でのリソース名(例: main, web_server)
import 前に空のリソース定義が必要:
# {resource_type}.tf
resource "{resource_type}" "{resource_name}" {
# import 後に terraform plan で確認し、属性を追加
}
例:
# aws_instance.tf
resource "aws_instance" "web_server" {
# import 後に terraform plan で確認し、属性を追加
}
terraform import {resource_type}.{resource_name} {resource_id}
例:
# EC2 インスタンス
terraform import aws_instance.web_server i-1234567890abcdef0
# S3 バケット
terraform import aws_s3_bucket.data my-bucket-name
# IAM ロール
terraform import aws_iam_role.app my-role-name
# VPC
terraform import aws_vpc.main vpc-12345678
# セキュリティグループ
terraform import aws_security_group.web sg-12345678
terraform import {resource_type}.{resource_name} {resource_id}
成功時:
{resource_type}.{resource_name}: Importing from ID "{resource_id}"...
{resource_type}.{resource_name}: Import prepared!
{resource_type}.{resource_name}: Refreshing state...
Import successful!
The resources that were imported are shown above.
import 後、現在の state と設定ファイルを同期:
terraform plan
差分を確認し、設定ファイルを更新:
## Import 後の設定同期
terraform plan で以下の差分が検出されました:
{差分の内容}
この差分をなくすために、設定ファイルを更新してください。
## Import 完了
### リソース
- タイプ: {resource_type}
- 名前: {resource_name}
- ID: {resource_id}
### 次のステップ
1. `terraform plan` で差分を確認
2. 設定ファイルに必要な属性を追加
3. 再度 `terraform plan` で差分がないことを確認
### 注意
import 後は設定ファイルと state の同期が必要です。
`terraform plan` で差分が出なくなるまで設定を調整してください。
| リソース | コマンド |
|---|---|
| EC2 インスタンス | terraform import aws_instance.NAME INSTANCE_ID |
| S3 バケット | terraform import aws_s3_bucket.NAME BUCKET_NAME |
| IAM ロール | terraform import aws_iam_role.NAME ROLE_NAME |
| VPC | terraform import aws_vpc.NAME VPC_ID |
| サブネット | terraform import aws_subnet.NAME SUBNET_ID |
| セキュリティグループ | terraform import aws_security_group.NAME SG_ID |
| RDS インスタンス | terraform import aws_db_instance.NAME DB_IDENTIFIER |
| Lambda 関数 | terraform import aws_lambda_function.NAME FUNCTION_NAME |
terraform plan で同期を確認