Visão geral
O @tunnelhub/cli é a ferramenta de linha de comando para fluxos de desenvolvimento e publicação de automações.
Quando usar
Use a CLI para:
autenticar na plataforma;
listar ambientes, pacotes e automações;
criar pacotes;
criar automações com bootstrap de template;
publicar deploys.
Escopo atual da CLI
Os comandos públicos instalados hoje são:
loginlogoutlogin-checklist-environmentslist-packagescreate-packagelist-automationscreate-automationdeploy-automation
Instalação
Pacote no npm: https://www.npmjs.com/package/@tunnelhub/cli
Depois da instalação, os dois comandos abaixo funcionam:
Fluxo de autenticação
O fluxo principal usa navegador e salva as credenciais localmente para reutilização e refresh automático.
Também existe fallback por usuário e senha:
Como a CLI trabalha com ambientes
Comandos como list-packages, create-package, list-automations e create-automation dependem de --env. Você pode informar nome ou UUID do ambiente.
No fluxo interativo com login, deploy-automation também usa --env.
No fluxo CI/CD com credenciais M2M, use --environment-id ou --env com o UUID do ambiente.
Os comandos de listagem também aceitam --json quando você precisa integrar a saída em script.
O que acontece ao criar uma automação
Ao executar create-automation, a CLI:
consulta seus pacotes no ambiente escolhido;
pede os dados da automação;
cria a automação na plataforma;
baixa um template oficial do GitHub;
extrai esse template em uma nova pasta local;
preenche o
service.uuidnotunnelhub.yml.
O que acontece no deploy
Ao executar deploy-automation, a CLI valida o tunnelhub.yml, verifica package.artifact, faz upload do artefato para S3 e solicita a criação do deploy.
O parâmetro --message é obrigatório. Ele deve carregar o contexto humano do deploy, especialmente em pipelines.
No fluxo CI/CD:
a credencial é da account e pode ser autorizada para um ou mais ambientes;
createdByda revisão fica comoapi-client:<clientId>;a mensagem do deploy deve trazer o contexto do commit, autor e execução quando isso for relevante.
Exemplo de variáveis de ambiente para CI/CD:
TH_API_HOSTTH_CLIENT_IDTH_CLIENT_SECRETTH_ENVIRONMENT_IDTH_AUTOMATION_ID
Exemplo com GitHub Actions:
Consulte Deploy via CI/CD, Autenticação e ambientes, Comandos e referência e tunnelhub.yml para o contrato completo.
Last updated