Agent skill · software engineering · aradotso

iac-data-engineering-terraform

Infrastructure-as-Code patterns for data engineering with Terraform on AWS (S3, EC2, IAM)

Why this skill is useful

Adds reusable Terraform scripts for provisioning AWS data engineering infrastructure that aren't commonly found in public documentation.

What it needs

Requires awscli, terraform installed locally. Requires aws account access. About 5k tokens when loaded. Last updated 2026-08-05. 5 stars on the source repository.

What this skill does

IaC for Data Engineering with Terraform Skill by ara.so — Data Skills collection. This project demonstrates Infrastructure-as-Code (IaC) fundamentals for data engineers using Terraform to provision AWS resources including S3 buckets, EC2 instances, and IAM configurations. It provides reusable patterns for managing data infrastructure declaratively. What This Project Does Provisions AWS S3 buckets for data storage Creates and configures EC2 instances for data processing Sets up IAM roles and policies with proper permissions Manages infrastructure state with Terraform Provides reproducible data engineering environments Prerequisites Before using this project, ensure you have: Set up required environment variables: Project Structure Core Terraform Commands Initialize Terraform Plan and Apply Infrastructure Inspect Infrastructure Destroy Infrastructure Key Configuration Patterns S3 Bucket for Data Storage EC2 Instance for Data Processing Security Group Configuration IAM Role for EC2 with S3 Access Variables and Outputs Define Variables Configure Outputs Remote State Management For team collaboration, use S3 backend for state: Create the backend resources: Verification Commands After applying infrastructure: Common Patterns Multi-Environment Setup Using terraform.tfvars Apply with variables: Troubleshooting State Lock Issues S3 Bucket Name Conflicts If bucket name is taken: Import Existing Resources Debugging Terraform Refresh State Best Practices 1. Always use variables for environment-specific values 2. Enable S3 versioning for data protection 3. Use IAM roles instead of access keys for EC2 4. Tag all resources for cost tracking and management 5. Store state remotely for team collaboration 6. Use modules for reusable infrastructure patterns 7. Run terraform plan before every apply 8. Never commit .tfstate files or sensitive variables to Git 9. Use .gitignore for Terraform files:

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills aradotso/iac-data-engineering-terraform

View the source on GitHub

Browse the @skills marketplace