# terraform-iac-data-engineering

Teaches your coding agent to scaffold AWS data engineering setups with Terraform. Covers S3 data lakes, EC2 compute instances, and IAM security policies.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 1800 installs · ★ 5
- Author: reason-machines
- License: LicenseRef-Unknown · policy=link-only · description only; the file stays with the author
- Source: https://github.com/reason-machines/data-skills/tree/HEAD/skills/terraform-iac-data-engineering/SKILL.md
- Updated: 2026-10-09
- HTML: https://affpapa.org/en/nevibecode/skills/terraform-iac-data-engineering

## What it does

This skill equips your assistant with Terraform patterns for AWS data workloads. It configures S3 storage buckets with versioning active and public access disabled.

For compute, the setup launches an EC2 instance with `boto3` and `pandas`. Access between the instance and the storage bucket relies on IAM roles instead of static keys.

Applying these files requires both `terraform` and `aws-cli` binaries installed locally. You also need credentials configured via `aws configure` before running any deployment.

## Requirements
- Works with: Terraform, AWS

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill terraform-iac-data-engineering -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/terraform-iac-data-engineering/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/terraform-iac-data-engineering/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill terraform-iac-data-engineering -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/terraform-iac-data-engineering/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill terraform-iac-data-engineering -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/terraform-iac-data-engineering/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install reason-machines/data-skills terraform-iac-data-engineering
```

2. **Manually: put the files in place**
- File: `.github/skills/terraform-iac-data-engineering/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill terraform-iac-data-engineering -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/reason-machines/data-skills --path skills/terraform-iac-data-engineering
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/terraform-iac-data-engineering/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill terraform-iac-data-engineering -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/reason-machines/data-skills/tree/HEAD/skills/terraform-iac-data-engineering/SKILL.md

## When to use it
- provision secure S3 buckets for data lake storage
- deploy EC2 instances preconfigured for data pipelines
- configure IAM policies granting EC2 access to S3
- inspect infrastructure state with Terraform commands

## Example prompts
- Set up an S3 bucket and an EC2 data processor using Terraform
- Create an IAM role that allows my EC2 worker to read from S3
- Check the current Terraform state of my AWS resources

## Similar
- [caveman-manage](https://affpapa.org/en/nevibecode/skills/caveman-manage.md) — skill · 104200 installs
- [workers-best-practices](https://affpapa.org/en/nevibecode/skills/cloudflare-workers-best-practices.md) — skill · 126100 installs
- [cloudflare-email-service](https://affpapa.org/en/nevibecode/skills/cloudflare-email-service.md) — skill · 102300 installs
- [firebase-basics](https://affpapa.org/en/nevibecode/skills/firebase-basics.md) — skill · 14100 installs
- [cloudflare-one](https://affpapa.org/en/nevibecode/skills/cloudflare-one.md) — skill · 93100 installs
- [cloudflare-one-migrations](https://affpapa.org/en/nevibecode/skills/cloudflare-one-migrations.md) — skill · 89500 installs

From the same set: [reason-machines/data-skills](https://affpapa.org/en/nevibecode/by/reason-machines/data-skills.md) — 62 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
