Create an IAM user called eks-project-user in AWS Console with programmatic access. Attach these policies:
AdministratorAccess (for the project - scope down in production)Configure AWS CLI:
aws configure
# Enter: Access Key ID, Secret Access Key, region (us-east-1), output (json)
Verify:
aws sts get-caller-identity
aws s3 mb s3://terraform-fintrack-state-203637463799 --region us-east-1
aws s3api put-bucket-versioning \
--bucket terraform-fintrack-state-203637463799 \
--versioning-configuration Status=Enabled
aws dynamodb create-table \
--table-name fintrack-terraform-locks \
--attribute-definitions AttributeName=LockID,AttributeType=S \
--key-schema AttributeName=LockID,KeyType=HASH \
--billing-mode PAY_PER_REQUEST \
--region us-east-1
git clone https://github.com/qezman/fintrack-infrastructure
git clone https://github.com/qezman/fintrack-gitops
git clone https://github.com/qezman/fintrack-backend
git clone https://github.com/qezman/fintrack-frontend
Go to github.com/qezman/fintrack-backend → Settings → Secrets → Actions → add:
| Secret | Value |
|---|---|
AWS_ROLE_ARN |
arn:aws:iam::203637463799:role/fintrack-dev-github-actions-role |
GITOPS_PAT |
GitHub Personal Access Token with repo scope |
Go to github.com → Settings → Developer Settings → Personal Access Tokens → Tokens (classic) → Generate: