GUIAGuide

Endereçar projeto e ambiente

Além das credenciais Env (-c), a CLI endereça os projetos do Vault por projeto × ambiente: -p meu-app -e production — ou nenhuma flag, com um movitera.yaml na raiz do repositório.

Dois modelos de endereçamento

bash
# modelo legado (inalterado)
$ movitera run -c minha-credencial -- npm start

# modelo novo: projeto × ambiente
$ movitera run -p meu-app -e production -- npm start
  • -p/--project e -e/--env recebem os slugs do projeto e do ambiente; -t/--team continua opcional.
  • Usar -c junto com -p/-e é erro — os dois modelos não se misturam no mesmo comando.
  • -c NAME (ENV_BUNDLE) continua funcionando para sempre; o modelo duplo é deliberado.

Vincule um repositório com `movitera setup`

bash
$ movitera setup
# escolhe time → projeto → ambiente e grava movitera.yaml na raiz do repo

movitera.yaml é committável — guarda endereços, nunca segredos:

text
# movitera.yaml
team: 6f2a…
project: meu-app
env: development

Com o arquivo no lugar, movitera run -- npm start passa a funcionar sem flags.

Precedência de resolução

A resolução do endereço segue precedência estrita:

  • 1. Flags (-p/-e/-t).
  • 2. Variáveis de ambiente (MOVITERA_PROJECT, MOVITERA_ENV, MOVITERA_TEAM).
  • 3. movitera.yaml — descoberto subindo os diretórios a partir do atual.
  • 4. Picker interativo, com autosseleção quando só há uma opção.

movitera project list mostra os projetos que o seu token alcança; movitera config imprime também o endereço resolvido e de onde ele veio.

Rode um processo com `run`

bash
$ movitera run -p meu-app -e production -- ./deploy.sh

A CLI baixa o ambiente inteiro em uma chamada, injeta as chaves sobre o ambiente do processo e substitui o processo atual pelo comando — sem shell no meio, sem arquivo temporário, sem segredo em disco.

Puxe segredos com `secrets pull`, `secrets list` e `secrets get`

bash
$ movitera secrets pull -p meu-app -e staging --format env -o .env.staging
$ movitera secrets pull -p meu-app -e staging --format json | jq .
  • Formatos: env (padrão), json, yaml e docker. -o grava o arquivo com permissão 0600.
  • docker com valor multilinha é recusado pelo servidor, nomeando as chaves; a CLI sugere env/json.
bash
$ movitera secrets list -p meu-app -e production        # chaves + versão, nunca valores
$ movitera secrets get DATABASE_URL -p meu-app -e production   # valor bruto no stdout (auditado)

get imprime o valor puro — seguro para $(…) em scripts; -o arquivo mantém o 0600. Cada leitura de valor é auditada no histórico do projeto.

Próximo