Skill
Community

generating-infrastructure-as-code

Install
1
Install the plugin
$
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin infrastructure-as-code-generator

Want just this skill?

Then install: npx claudepluginhub u/[userId]/[slug]

Description

Execute use when generating infrastructure as code configurations. Trigger with phrases like "create Terraform config", "generate CloudFormation template", "write Pulumi code", or "IaC for AWS/GCP/Azure". Produces production-ready code for Terraform, CloudFormation, Pulumi, ARM templates, and CDK across multiple cloud providers.

Tool Access

This skill is limited to using the following tools:

ReadWriteEditGrepGlobBash(terraform:*)Bash(aws:*)Bash(gcloud:*)Bash(az:*)
Supporting Assets
View in Repository
assets/README.md
assets/iac_config_schema.json
references/README.md
scripts/README.md
scripts/iac_generate.py
Skill Content

Generating Infrastructure as Code

Overview

Generate production-ready infrastructure as code for Terraform, CloudFormation, Pulumi, ARM templates, and AWS CDK. Produce modular, well-structured configurations with proper variable definitions, outputs, remote state management, and deployment guidance for AWS, GCP, and Azure cloud stacks.

Prerequisites

  • Target cloud provider CLI installed and authenticated (aws, gcloud, az)
  • IaC tool installed: Terraform 1.0+, Pulumi 3+, AWS CDK, or relevant SDK
  • Cloud credentials configured with permissions to create the target resources
  • Understanding of the desired infrastructure architecture (compute, networking, storage, database)
  • Version control repository for storing IaC configurations

Instructions

  1. Identify the IaC tool and cloud provider based on the project requirements and existing codebase
  2. Scan the project for existing IaC files to understand current patterns and conventions
  3. Define the modular file structure: separate files for providers, networking, compute, storage, and databases
  4. Generate the provider configuration with version pinning and remote backend for state storage
  5. Define input variables with types, descriptions, defaults, and validation rules for all configurable values
  6. Write resource definitions following cloud provider best practices: encryption enabled, logging configured, least-privilege IAM
  7. Add outputs for resource identifiers, endpoints, and connection strings needed by other modules or applications
  8. Configure remote state backend: S3 + DynamoDB for Terraform, Pulumi Cloud, or CloudFormation stack exports
  9. Create environment-specific variable files (terraform.tfvars, dev.tfvars, prod.tfvars) for multi-environment deployment
  10. Validate with terraform validate, terraform plan, or equivalent tool-specific linting

Output

  • IaC configuration files organized by resource type or module
  • Variable definition files with documented inputs and sensible defaults
  • Output definitions for cross-module references and application configuration
  • Backend configuration for remote state storage
  • Environment-specific variable files for dev, staging, and production
  • Deployment instructions with prerequisite setup and apply commands

Error Handling

ErrorCauseSolution
Invalid HCL syntaxMalformed Terraform configurationRun terraform validate to identify the error; check bracket matching and attribute syntax
Unable to authenticate with cloud providerMissing or expired credentialsRun aws configure, gcloud auth login, or az login to refresh credentials
Resource already existsTrying to create a resource that exists outside of IaC managementUse terraform import to bring the existing resource under management
Error acquiring state lockAnother process holding the state lockWait for the other process to finish; use terraform force-unlock <ID> if the lock is stale
Dependency cycle detectedResources referencing each other circularlyRefactor to remove the cycle; use data sources or depends_on to establish explicit ordering

Examples

  • "Generate Terraform for a production VPC on AWS with public/private subnets across 3 AZs, NAT gateways, VPC flow logs, and an EKS cluster."
  • "Create a CloudFormation template for an S3 bucket with versioning, server-side encryption (KMS), public access block, and lifecycle rules."
  • "Write Pulumi TypeScript code for a GCP Cloud Run service with a custom domain, Cloud SQL database, and Secret Manager integration."

Resources

Stats
Stars1679
Forks211
Last CommitMar 22, 2026

Similar Skills