[dreamwidth/dreamwidth] 30ad62: Add Terraform for ECS infrastructure with single s...
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 30ad62a36b99f0c922fe1790a40d9547d254a77c https://github.com/dreamwidth/dreamwidth/commit/30ad62a36b99f0c922fe1790a40d9547d254a77c Author: Mark Smith mark@dreamwidth.org Date: 2026-02-03 (Tue, 03 Feb 2026)
Changed paths: A .github/workflows/tasks/worker-send-email-ses-service.json R .github/workflows/tasks/worker-service.tt R .github/workflows/update-workflows.pl R .github/workflows/worker-deploy.tt M .github/workflows/worker-deploy.yml M .gitignore A bin/ecs-shell A config/update-workflows.py A config/workers.json A terraform/cluster.tf A terraform/iam.tf A terraform/load-balancing.tf A terraform/locals.tf A terraform/providers.tf A terraform/proxy.tf A terraform/security-groups.tf A terraform/web.tf A terraform/workers.tf
Log Message:
Add Terraform for ECS infrastructure with single source of truth for workers
- Add terraform/ directory managing ECS cluster, services, task definitions, load balancers, security groups, and IAM roles
- Create config/workers.json as single source of truth for worker definitions, shared by Terraform (via jsondecode) and GitHub Actions workflow generator
- Replace Perl Template Toolkit workflow generator with pure Python script (config/update-workflows.py) - no external dependencies needed
- Add bin/ecs-shell helper script for listing services and connecting to tasks
- Add send-email-ses worker that was missing from workflow definitions
- Update .gitignore to exclude Terraform state files and lock file
The workers.json file defines all worker properties (cpu, memory, category, spot, min/max counts) in one place. To add a new worker: 1. Add entry to config/workers.json 2. Run: terraform apply 3. Run: python3 config/update-workflows.py
Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
