Skip to content

Maua-Dev/terraform_bootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

terraform_bootstrap

Infraestrutura AWS CDK em Python (CloudFormation) que cria, por conta/região:

  • S3 com versionamento, criptografia gerenciada, bloqueio de acesso público e apenas TLS (tf-org-workspace-state-<ACCOUNT_ID>)
  • DynamoDB on-demand com chave LockID para lock do state (tf-org-workspace-locks-<ACCOUNT_ID>)

Isso é o backend compartilhado para outros repositórios Terraform: cada projeto usa o mesmo bucket e tabela, com uma key distinta no S3 (ex.: meu-app/prod/terraform.tfstate).

O workflow em .github/workflows/cd.yml instala requirements.txt, roda cdk bootstrap (via npx aws-cdk) e cdk deploy nos pushes das branches dev, homolog e prod, mapeadas para secrets/vars de conta e região.

Local: cd cdk && python3 -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt && npx aws-cdk@2 synth (exporte AWS_ACCOUNT_ID / AWS_REGION se quiser env explícito no stack ou adicione isso às variáveis do repositório).

Não precisa rodar isso a cada deploy de aplicação — só ao preparar conta/região ou mudar a política do backend.

About

Terraform na AWS: bucket S3 (state) + tabela DynamoDB (lock). Backend compartilhado entre projetos; cada stack usa um key distinto. Rodar ao abrir conta/região nova ou mudar política do backend. Não rodar a cada deploy de aplicação.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages