Firstlume Docs firstlume.io PTEN EN Fale com a gente

Tokens "só state"

Uma pipeline que ainda não roda no Firstlume (seu CI, GitLab CI, etc.) pode usar o state dele com um token de state do stack. Assim ela ganha lock e versões antes de os runs migrarem.

Crie um token

curl -X POST -H "Authorization: Bearer $ADMIN" "$API/api/v1/orgs/$ORG/stacks/$STACK/state/tokens" \
  -d '{"name": "ci", "write": true}'   # "expires_at" é opcional

O token aparece só nessa resposta. Um token vale só para o stack dele.

GET    .../state/tokens        # lista os tokens, com o último uso
DELETE .../state/tokens/{id}   # revoga um token

Permissões

  • Leitura e escrita ("write": true): lê, trava e grava. Cada versão gravada leva o nome do token. Uma trava do token não se solta sozinha: só com o UNLOCK do próprio Terraform.
  • Só leitura: só lê. O plan roda com -lock=false, então um token de leitura nunca segura uma unit.

Na pipeline

Com o root.hcl de Backend de state:

export FIRSTLUME_STATE_URL=https://firstlume.example.com/state/v1/stacks/$STACK
export TF_HTTP_USERNAME=firstlume TF_HTTP_PASSWORD=$FIRSTLUME_STATE_TOKEN
terragrunt run --all -- plan -lock=false      # token de leitura
terragrunt run --all -- apply                 # token de escrita

Para mover uma pipeline que guarda o state num bundle, veja Migrar uma pipeline.