Comandos de Aplicação
Nesta seção, você encontra a lista de comandos de Aplicação.
| Comando | Descrição |
|---|---|
| stk create app | Cria uma Aplicação a partir de um ou mais Plugins. |
| stk delete app | Remove uma Aplicação hospedada em um repositório remoto. |
| stk deploy app | Realiza o deploy da sua Aplicação. |
| stk destroy app | Destrói a Aplicação de um Ambiente. |
| stk list app | Lista todas as Aplicações registradas em um Workspace. |
| stk register app | Registra uma Aplicação em um Workspace. |
| stk register app-deploy | Registra o deploy de uma Aplicação em um Workspace. |
| stk register app-destroy | Registra a destruição de uma Aplicação em um Workspace. |
| stk rollback app | Executa o rollback da sua Aplicação. |
| stk update app | Atualiza as informações de uma Aplicação. |
| stk validate app | Valida a estrutura de uma Aplicação. |
stk create app
O comando stk create app cria uma Aplicação a partir de um Starter. A Aplicação é gerada com as funcionalidades dos Plugins definidos no Starter, podendo englobar regras de negócio, infraestrutura ou recursos específicos.
Aplicações criadas fora de um Workspace não podem ser registradas nem implantadas na StackSpot.
A opção -o, --target permite definir um nome de pasta diferente para armazenar o conteúdo da Aplicação. Se a pasta não existir, ela será criada automaticamente.
Se você não especificar a opção -o ou --target, o nome da pasta será igual ao nome fornecido para a Aplicação.
Uso
stk create app [NOME_APP] --starter [STUDIO/STACK/STARTER]
O uso da flag --starter [ACCOUNT/STUDIO/STACK/STARTER] foi depreciado e será removido em breve. Utilize a flag sem o parâmetro ACCOUNT, conforme o exemplo abaixo:
stk create app my-app-name --starter my-studio/my-stack/starter-name
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
NOME_APP | Define o nome da Aplicação. Se não for informado, será usado o nome do repositório fornecido em --remote. | stk create app my-app-name |
-s, --starter, --starter studio-slug/stack-slug/starter-slug | Define o Starter utilizado para aplicar o conjunto de Plugins na Aplicação. Informe o Starter, o Estúdio e a Stack. Você pode selecionar a Stack de maneira interativa no terminal. Para selecionar a versão da Stack, inclua @versao-stack na flag, por exemplo: --starter studio-slug/stack-slug@1.0.0/starter-slug. Também é possível informar o caminho do arquivo starter.yaml para usar um Starter local. | stk create app my-app-name --starter my-studio/my-stack/starter-nameSelecionar versão da Stack: stk create app my-app-name --starter my-studio/my-stack@3.0.0/starter-nameStarter local: stk create app my-app-name --starter User/Documents/My-Local-Starters/starter-name.yaml |
-r, --remote <git-url> | Indica a URL do repositório Git remoto que será usada como origem do projeto. Se não informado, o repositório não será configurado automaticamente. | stk create app my-app-name --remote my-git-repository-url |
-sgi, --skip-git-init | Não inicializa um repositório Git durante a criação da Aplicação. | stk create app my-app-name --skip-git-init |
-d, --description | Define a descrição e o propósito da Aplicação. | stk create app my-app-name --description "meu app" --starter my-studio/my-stack/starter-name |
-q, --non-interactive | Não solicita parâmetros de entrada ao usuário e retorna erro caso algum obrigatório não seja informado. | stk create app my-app-name --starter my-studio/my-stack/starter-name --non-interactive |
-sp, --spec TEXTO | Caminho para o arquivo de especificações contendo dados de inputs e connections para cada Plugin. | stk create app my-app-name --spec /home/user/specs-folder/app.yaml |
-o, --target | Define um nome de pasta personalizado para criar o conteúdo da Aplicação. Se não existir, será criada. Caso não utilize, o nome da pasta será igual ao nome da Aplicação. | stk create app my-app-name --starter my-studio/my-stack/starter-name --target home/user/Applications/my-app |
-er, --extra-repositories TEXTO | Lista de repositórios adicionais para sua Aplicação. Cada item deve ser um objeto JSON: "[{"name":"repository_name", "description":"repository_description", "provider":"repository_provider", "url":"repository_url"}]" | stk create app my-example-app --starter studio/stack/starter-name --extra-repositories "[{"name":"my-example-app-repo", "description":"repository for test my apps", "provider":"github", "url":"https://github.com/my-organization-name/my-example-app-repo"}]" |
-wf, --workflow TEXTO | Nome do Workflow utilizado para criar a Aplicação. | stk create app my-example-app --workflow studio-name/stack-name/workflow-name |
-rs, --report-status | Uso exclusivo com Workflow. Reporta o status da execução como uma atividade na Aplicação ou Infraestrutura. | stk create app my-example-app --workflow studio-name/stack-name/workflow-name --report-status |
-i, --inputs-json TEXTO | Uso exclusivo com Workflow. Inputs do Workflow em formato JSON. | stk create app my-example-app --workflow studio-name/stack-name/workflow-name --inputs-json "[{"label":"Host","name":"host","type":"text","required":true},{"label":"Port","name":"port","type":"int","required":true}]" |
-h, --help | Exibe a ajuda do comando e encerra. | stk create app --help |
stk delete app
O comando stk delete app remove completamente uma Aplicação de um Workspace. Não há rollback: tanto o registro da Aplicação quanto o conteúdo do repositório usado no deployment serão removidos.
Uso
Se sua Aplicação possui Plugins de Infraestrutura ativos com deploy via self-hosted Runtime, o comando stk delete app será interrompido. Nesses casos, destrua primeiro a Infraestrutura da Aplicação. Caso não utilize o self-hosted Runtime e sua Aplicação tenha deploys ativos em um ou mais Ambientes:
- O comando valida se a destruição da Infraestrutura é possível; se for, ela é removida.
- Apenas após a destruição de todas as Infraestruturas em todos os Ambientes, as Connection Interfaces criadas pelos Plugins e os registros de Aplicação e Infraestrutura são excluídos.
Se não houver deploy ativo, apenas o registro da Aplicação ou Infraestrutura é removido.
Sintaxe
stk delete app --target [DIRETÓRIO_DA_APLICAÇÃO]
Exemplo:
O uso deste comando é exclusivo em pipelines. É necessário ter o STK CLI instalado na pipeline. Veja o exemplo abaixo utilizando o comando em steps de uma pipeline:
Na pasta da Aplicação, execute:
steps:
- name: Delete App
run: |
stk delete app --target ./Applications/my-app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-o, --target | Define o diretório alvo para remover a Aplicação. | stk delete app --target ./Applications/my-app |
-h, --help | Exibe a ajuda do comando e encerra. | stk delete app --help |
stk deploy app
O comando stk deploy app realiza o deploy da sua Aplicação em um Ambiente do Workspace.
Antes de usar o comando, execute:
- Login na Conta com stk login.
- Ative um Workspace usando stk use workspace.
Uso
stk deploy app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-v, --version | Define a versão do deploy seguindo padrão semântico, por exemplo: "1.0.0". | stk deploy app --version 1.0.0 |
-e, --env | Informa o nome do Ambiente usado para deploy. Consulte Ambientes com stk list env. | stk deploy app --env qa |
-b, --branch | Define a branch Git usada no deployment. Opcional. | stk deploy app --branch app2-last-release |
--open-api-path | Caminho para arquivo Open API relativo à raiz do repositório Git. Opcional. | stk deploy app --open-api-path /home/user/my-app-folder |
-w, --watch | Monitora automaticamente o status do deploy. | stk deploy app --env qa --watch |
-wf, --workflow | Nome do Workflow de deploy, utilizando o qualifier. | stk deploy app --workflow studio/stack/workflow-name@1.0.0 |
-rs, --report-status | Reporta o status do deploy como atividade, visível no Portal StackSpot. | stk deploy app --workflow studio/stack/workflow-name@1.0.0 --report-status |
-q, --non-interactive | Ativa modo não interativo, sem solicitar parâmetros não informados. | stk deploy app --workflow studio/stack/workflow-name@1.0.0 --report-status --non-interactive |
-bc, --backend-config | Uso exclusivo com Workflows StackSpot. Define o backend Terraform onde o estado dos deploys será salvo. Para S3, informe apenas o objeto S3; para AZURERM, apenas o objeto azurerm. Veja contratos no guia de deploy. | stk deploy app --workflow studio/stack/workflow-name@1.0.0 --report-status --non-interactive --backend-config '{{"type":"S3","s3":{"iac":{"bucket":"","region":""},"tfstate":{"bucket":"","region":""}}}}' |
-rwc, --resume-workflow-config | Recebe uma string JSON com configurações de Azure, GitHub ou GitLab (uma por vez). Exemplos: {"azure":{"pipeline_name":"...","org":"...","project_name":"...","branch":"..."}}, {"github":{"repository_name":"...","org":"...","workflow_name":"...","branch":"..."}} ou {"gitlab":{"id":"...","slug":"..."}} | stk deploy app --workflow studio/stack/workflow-name@1.0.0 --report-status --non-interactive --backend-config '{{"type":"S3","s3":{"iac":{"bucket":"","region":""},"tfstate":{"bucket":"","region":""}}}}' --resume-workflow-config '{{"azure":{"pipeline_name":"...","org":"...","project_name":"...","branch":"..."}}}' |
-h, --help | Exibe a ajuda do comando e encerra. | stk deploy app --help |
stk destroy app
Este recurso está temporariamente desativado. Caso precise destruir uma Aplicação, entre em contato com o suporte StackSpot.
O comando stk destroy app remove uma Aplicação de um Ambiente.
Uso
Sintaxe
stk destroy app --env <NOME_AMBIENTE>
Exemplo
Acesse o diretório da Aplicação e execute:
cd my-app-folder
stk destroy app --env prod
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-e, --env | Ambiente no qual o deploy da Aplicação foi realizado. Obrigatório. | stk destroy app --env prod |
-w, --watch | Monitora automaticamente o status da destruição. | stk destroy app --env prod --watch |
-q, --non-interactive | Não solicita parâmetros e retorna erro caso algum obrigatório não seja informado. | stk destroy app --env prod --non-interactive |
-wf, --workflow TEXTO | Nome do Workflow para destruir a Aplicação. | stk destroy app --env prod --watch --workflow studio-name/stack-name/workflow-name |
-rs, --report-status | Uso exclusivo com Workflow. Reporta o status da execução como uma atividade. | stk destroy app --env prod --watch --workflow studio-name/stack-name/workflow-name --report-status |
-h, --help | Exibe a ajuda do comando e encerra. | stk destroy app --help |
stk list app
O comando stk list app exibe todas as Aplicações registradas no Workspace ativo.
Antes de executar o comando, siga:
- Faça login na Conta com stk login.
- Ative um Workspace usando stk use workspace.
Uso
stk list app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-h, --help | Exibe a ajuda do comando e encerra. | stk list app --help |
stk register app
O comando stk register app registra uma Aplicação no Workspace.
Antes de executar o comando:
- Faça login na Conta com stk login.
- Ative um Workspace usando stk use workspace.
Uso
No diretório da Aplicação, execute:
stk register app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-r, --remote | URL do repositório remoto Git para hospedar a Aplicação. Se não informado, configure manualmente. | stk register app --remote url |
-bb, --base-branch | Nome da branch base do repositório da Aplicação. | stk register app --base-branch my-app-release-branch |
-er, --extra-repositories TEXT | Lista de repositórios adicionais em formato JSON: "[{"name":"repository_name", "description":"repository_description", "provider":"repository_provider", "url":"repository_url"}]" | stk register app --base-branch my-app-release-branch --extra-repositories "[{"name":"my-example-app-repo", "description":"repository for test my apps", "provider":"github", "url":"https://github.com/my-organization-name/my-example-app-repo"}]" |
-h, --help | Exibe a ajuda do comando e encerra. | stk register app --help |
stk register app-deploy
O comando stk register app-deploy registra o deploy de uma Aplicação no Workspace, utilizado para Aplicações que não usam StackSpot Runtimes.
Uso
O uso deste comando é exclusivo em pipelines. É necessário ter o STK CLI instalado na pipeline. Veja o exemplo abaixo utilizando o comando em steps de uma pipeline:
Antes de executar o comando:
- Faça login na Conta com stk login.
- Ative um Workspace usando stk use workspace.
steps:
- name: Authenticate StackSpot
run: |
stk login --client-id ${{ secrets.CLIENT_ID }} --client-key ${{ secrets.CLIENT_KEY }} --realm ${{ secrets.CLIENT_REALM }}
- name: Use your Workspace
run: |
stk use workspace my-workspace-name
- name: Register App Deployment
run: |
stk register app-deploy --env prod --status success --version 1.0.0 --target ./Apps/my-app
No diretório da Aplicação, execute:
stk register app-deploy --env prod --status success --version 1.0.0 --target ./Apps/my-app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-e, --env | Nome do Ambiente para registrar o deploy. | stk register app-deploy --env dev |
-s, --status [error, success] | Status do deploy registrado: error ou success. | stk register app-deploy --status success |
-v, --version | Versão da Aplicação do deploy a ser registrado. | stk register app-deploy --env prod --status success --version 1.0.0 |
-o, --target | Diretório utilizado para deploy da Aplicação. | stk register app-deploy --env prod --status success --version 1.0.0 --target ./Apps/my-app |
-er, --links TEXT | Lista de links adicionais para a Aplicação. Cada item deve ser um objeto JSON: "[{"title":"url title", "url":"text_url"}]" | stk register app-deploy --links "[{"title":"url title", "url":"text_url"}]" |
-h, --help | Exibe a ajuda do comando e encerra. | stk register app-deploy --help |
stk register app-destroy
O comando stk register app-destroy registra a destruição de uma Aplicação no Workspace, usado para Aplicações que não utilizam StackSpot Runtimes.
Uso
O uso deste comando é exclusivo em pipelines. É necessário ter o STK CLI instalado na pipeline. Veja o exemplo utilizando o comando em steps de pipeline:
Antes de executar o comando:
- Faça login na Conta com stk login.
- Ative um Workspace usando stk use workspace.
steps:
- name: Authenticate StackSpot
run: |
stk login --client-id ${{ secrets.CLIENT_ID }} --client-key ${{ secrets.CLIENT_KEY }} --realm ${{ secrets.CLIENT_REALM }}
- name: Use your Workspace
run: |
stk use workspace my-workspace-name
- name: Register App Destroy
run: |
stk register app-destroy --env prod --status success --target ./Apps/my-app
No diretório da Aplicação, execute:
stk register app-destroy --env dev --status failed --target ./Apps/my-app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-e, --env | Nome do Ambiente para registrar o destroy. | stk register app-destroy --env dev |
-s, --status [success, failed] | Status do destroy registrado: success ou failed. | stk register app-destroy --status success |
-o, --target | Diretório de execução do destroy da Aplicação. | stk register app-destroy --env prod --status success --target ./Apps/my-app |
-h, --help | Exibe a ajuda do comando e encerra. | stk register app-destroy --help |
stk rollback app
O comando stk rollback app executa o rollback da Aplicação.
Uso
Sintaxe
stk rollback app --version <VERSAO> --env <NOME_AMBIENTE>
Exemplo
stk rollback app --version 1.2.0 --env prod
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-v, --version | Versão da tag utilizada no deploy, seguindo padrão semântico. | stk rollback app --version 1.2.0 --env prod |
-e, --env | Ambiente utilizado para executar o rollback. Consulte ambientes com stk list env. | stk rollback app --version 1.2.0 --env prod |
-w, --watch | Monitora automaticamente o status do rollback. | stk rollback app --version 1.2.0 --env prod --watch |
-q, --non-interactive | Não solicita parâmetros e retorna erro caso algum obrigatório não seja informado. | stk rollback app --version 1.0.0 --env prod --non-interactive |
-wf, --workflow TEXTO | Nome do Workflow para rollback da Aplicação. | stk rollback app --version 1.2.0 --env prod --workflow studio-name/stack-name/workflow-name |
-bc, --backend-config | Uso exclusivo com Workflows StackSpot. Define o backend Terraform utilizado para salvar o estado dos deploys. Para S3, informe apenas o objeto S3; para AZURERM, apenas o objeto azurerm. Veja contratos no guia de deploy. | stk rollback app --version 1.2.0 --env prod --report-status --non-interactive --backend-config '{{"type":"S3","s3":{"iac":{"bucket":"","region":""},"tfstate":{"bucket":"","region":""}}}}' |
-rs, --report-status | Uso exclusivo com Workflow. Reporta o status da execução como uma atividade. | stk rollback app --version 1.2.0 --env prod --report-status |
-h, --help | Exibe a ajuda do comando e encerra. | stk rollback app --help |
stk update app
O comando stk update app atualiza os dados de uma Aplicação na StackSpot.
Você pode atualizar:
- Nome;
- Descrição;
- URL do repositório;
- Branch padrão.
Uso
Sintaxe
stk update app [OPCOES]
Exemplo
stk update app --description "Descrição atualizada da Aplicação"
Os metadados da Aplicação serão sincronizados com a API.
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-n, --name TEXTO | Atualiza o nome da Aplicação. | stk update app --name app-renamed |
-d, --description TEXTO | Atualiza a descrição da Aplicação. | stk update app --description "minha nova descrição do aplicativo" |
-r, --repo-url TEXTO | Define a URL do repositório Git da Aplicação. | stk update app --repo-url https://github.com/my-org/my-new-app-repository |
-b,--repo-base-branch TEXTO | Atualiza a branch base da Aplicação. | stk update app --name "update/app-branch-name" |
-q, --non-interactive | Ativa o modo não interativo, sem solicitações de parâmetros faltantes. | stk update app --non-interactive |
-er, --extra-repositories TEXT | Lista de repositórios adicionais em formato JSON: "[{"name":"repository_name", "description":"repository_description", "provider":"repository_provider", "url":"repository_url"}]" | stk update app --name app-renamed --extra-repositories "[{"name":"my-example-app-repo", "description":"repository for test my apps", "provider":"github", "url":"https://github.com/my-organization-name/my-example-app-repo"}]" |
-h, --help | Exibe a ajuda do comando e encerra. | stk update app --help |
stk validate app
O comando stk validate app valida a estrutura de uma Aplicação. Execute o comando no diretório da Aplicação.
O comando irá:
- Validar a estrutura da Aplicação;
- Remover pastas vazias;
- Ignorar arquivos e pastas indesejados ao finalizar o desenvolvimento.
Arquivos ignorados no arquivo .gitignore não serão validados.
Ao término, o comando apresenta as inconsistências e o resultado da validação.
Uso
stk validate app
Parâmetros
| Opções | Descrição | Exemplo |
|---|---|---|
-v, --verbose | Exibe detalhes de todos os itens analisados, validados e ignorados. | stk validate app --verbose |
-h, --help | Exibe a ajuda do comando e encerra. | stk validate app --help |