Pular para o conteúdo principal

Comandos de Aplicação

Nesta seção, você encontra a lista de comandos de Aplicação.


ComandoDescrição
stk create appCria uma Aplicação a partir de um ou mais Plugins.
stk delete appRemove uma Aplicação hospedada em um repositório remoto.
stk deploy appRealiza o deploy da sua Aplicação.
stk destroy appDestrói a Aplicação de um Ambiente.
stk list appLista todas as Aplicações registradas em um Workspace.
stk register appRegistra uma Aplicação em um Workspace.
stk register app-deployRegistra o deploy de uma Aplicação em um Workspace.
stk register app-destroyRegistra a destruição de uma Aplicação em um Workspace.
stk rollback appExecuta o rollback da sua Aplicação.
stk update appAtualiza as informações de uma Aplicação.
stk validate appValida 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.

Informação Adicional

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]
Informação Adicional

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çõesDescriçãoExemplo
NOME_APPDefine 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-name
Selecionar versão da Stack:
stk create app my-app-name --starter my-studio/my-stack@3.0.0/starter-name
Starter 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-initNão inicializa um repositório Git durante a criação da Aplicação.
stk create app my-app-name --skip-git-init
-d, --descriptionDefine 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-interactiveNã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 TEXTOCaminho 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, --targetDefine 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 TEXTOLista 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 TEXTONome do Workflow utilizado para criar a Aplicação.
stk create app my-example-app --workflow studio-name/stack-name/workflow-name
-rs, --report-statusUso 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 TEXTOUso 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, --helpExibe 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:

Atenção!

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:

.github/workflows/run-cli-commands.yml
steps: 
- name: Delete App
run: |
stk delete app --target ./Applications/my-app

Parâmetros

OpçõesDescriçãoExemplo
-o, --targetDefine o diretório alvo para remover a Aplicação.
stk delete app --target ./Applications/my-app
-h, --helpExibe 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:

  1. Login na Conta com stk login.
  2. Ative um Workspace usando stk use workspace.

Uso

stk deploy app

Parâmetros

OpçõesDescriçãoExemplo
-v, --versionDefine a versão do deploy seguindo padrão semântico, por exemplo: "1.0.0".
stk deploy app --version 1.0.0
-e, --envInforma o nome do Ambiente usado para deploy. Consulte Ambientes com stk list env.
stk deploy app --env qa
-b, --branchDefine a branch Git usada no deployment. Opcional.
stk deploy app --branch app2-last-release
--open-api-pathCaminho para arquivo Open API relativo à raiz do repositório Git. Opcional.
stk deploy app --open-api-path /home/user/my-app-folder
-w, --watchMonitora automaticamente o status do deploy.
stk deploy app --env qa --watch
-wf, --workflowNome do Workflow de deploy, utilizando o qualifier.
stk deploy app --workflow studio/stack/workflow-name@1.0.0
-rs, --report-statusReporta 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-interactiveAtiva 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-configUso 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-configRecebe 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, --helpExibe a ajuda do comando e encerra.
stk deploy app --help

stk destroy app

Atenção!

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çõesDescriçãoExemplo
-e, --envAmbiente no qual o deploy da Aplicação foi realizado. Obrigatório.
stk destroy app --env prod
-w, --watchMonitora automaticamente o status da destruição.
stk destroy app --env prod --watch
-q, --non-interactiveNão solicita parâmetros e retorna erro caso algum obrigatório não seja informado.
stk destroy app --env prod --non-interactive
-wf, --workflow TEXTONome do Workflow para destruir a Aplicação.
stk destroy app --env prod --watch --workflow studio-name/stack-name/workflow-name
-rs, --report-statusUso 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, --helpExibe 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:

  1. Faça login na Conta com stk login.
  2. Ative um Workspace usando stk use workspace.

Uso

stk list app

Parâmetros

OpçõesDescriçãoExemplo
-h, --helpExibe 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:

  1. Faça login na Conta com stk login.
  2. Ative um Workspace usando stk use workspace.

Uso

No diretório da Aplicação, execute:

stk register app

Parâmetros

OpçõesDescriçãoExemplo
-r, --remoteURL do repositório remoto Git para hospedar a Aplicação. Se não informado, configure manualmente.
stk register app --remote url
-bb, --base-branchNome da branch base do repositório da Aplicação.
stk register app --base-branch my-app-release-branch
-er, --extra-repositories TEXTLista 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, --helpExibe 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

Atenção!

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:

  1. Faça login na Conta com stk login.
  2. Ative um Workspace usando stk use workspace.
.github/workflows/run-cli-commands.yml
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çõesDescriçãoExemplo
-e, --envNome 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, --versionVersão da Aplicação do deploy a ser registrado.
stk register app-deploy --env prod --status success --version 1.0.0
-o, --targetDiretó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 TEXTLista 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, --helpExibe 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

Atenção!

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:

  1. Faça login na Conta com stk login.
  2. Ative um Workspace usando stk use workspace.
.github/workflows/run-cli-commands.yml
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çõesDescriçãoExemplo
-e, --envNome 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, --targetDiretório de execução do destroy da Aplicação.
stk register app-destroy --env prod --status success --target ./Apps/my-app
-h, --helpExibe 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çõesDescriçãoExemplo
-v, --versionVersão da tag utilizada no deploy, seguindo padrão semântico.
stk rollback app --version 1.2.0 --env prod
-e, --envAmbiente utilizado para executar o rollback. Consulte ambientes com stk list env.
stk rollback app --version 1.2.0 --env prod
-w, --watchMonitora automaticamente o status do rollback.
stk rollback app --version 1.2.0 --env prod --watch
-q, --non-interactiveNã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 TEXTONome 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-configUso 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-statusUso exclusivo com Workflow. Reporta o status da execução como uma atividade.
stk rollback app --version 1.2.0 --env prod --report-status
-h, --helpExibe 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"
Informação Adicional

Os metadados da Aplicação serão sincronizados com a API.

Parâmetros

OpçõesDescriçãoExemplo
-n, --name TEXTOAtualiza o nome da Aplicação.
stk update app --name app-renamed
-d, --description TEXTOAtualiza a descrição da Aplicação.
stk update app --description "minha nova descrição do aplicativo"
-r, --repo-url TEXTODefine 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 TEXTOAtualiza a branch base da Aplicação.
stk update app --name "update/app-branch-name"
-q, --non-interactiveAtiva o modo não interativo, sem solicitações de parâmetros faltantes.
stk update app --non-interactive
-er, --extra-repositories TEXTLista 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, --helpExibe 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.
informação

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çõesDescriçãoExemplo
-v, --verboseExibe detalhes de todos os itens analisados, validados e ignorados.
stk validate app --verbose
-h, --helpExibe a ajuda do comando e encerra.
stk validate app --help