openclaw/workers/clawdbot-aws/.env.example
Shunsuke Hayashi 4d74fdf593 feat(aws): add ECS Fargate deployment for Clawdbot Discord bot
Add complete ECS Fargate infrastructure for Clawdbot Discord bot
deployment on AWS.

## Infrastructure (Terraform)
- **VPC**: 100.64.0.0/16 with DNS support
- **Public Subnets**: 2 subnets in different AZs
- **ECR Repository**: clawdbot/bot with lifecycle policy
- **IAM Roles**: Task Role (DynamoDB+S3) + Execution Role
- **ECS Resources**: Fargate (256 CPU, 2048 MB memory)
- **Security Group**: Outbound only
- **CloudWatch**: Log group with 7-day retention

## Security Improvements
- Discord Bot Token → AWS Secrets Manager
- IAM policy with least privilege principle
- No plaintext secrets in code

## Code Quality
- Fix all 22 lint errors
- Add *.d.ts to oxlint ignore patterns
- Fix Dockerfile .buildstamp for Linux compatibility

Closes #2049

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-26 13:38:43 +09:00

34 lines
1.0 KiB
Plaintext

# AWS Terraform Variables for Clawdbot ECS Fargate Deployment
# Copy this file to terraform.tfvars and fill in the values
# AWS Configuration
aws_region = "ap-northeast-1"
aws_account_id = "123456789012" # Your AWS account ID
# Environment
environment = "production"
project_name = "clawdbot"
# ECS Configuration
ecs_task_cpu = 256 # 0.25 vCPU
ecs_task_memory = 2048 # 2 GB
ecs_service_desired_count = 1
# Discord Token (DEPRECATED - Use Secrets Manager instead)
# discord_token = "your_bot_token_here" # DO NOT use in production
# Secrets Manager Secret Name for Discord Bot Token
discord_token_secret_name = "clawdbot/discord-token"
# Create the secret in AWS Secrets Manager before running Terraform:
# aws secretsmanager create-secret \
# --name clawdbot/discord-token \
# --secret-string "your_bot_token_here"
# DynamoDB Tables
sessions_table_name = "clawdbot-sessions"
artifacts_table_name = "clawdbot-artifacts"
# S3 Bucket
artifacts_bucket_name = "clawdbot-artifacts"
artifacts_bucket_ttl_days = 7