Criar Action de Commit
Nesta seção, você encontra como criar uma Action no STK CLI.
Introdução
- Nível Intermediário
Este é um exemplo de como criar uma Action, para criar a sua própria Action, confira a página de Actions.
Pré-requisitos
- Ter uma conta na StackSpot
- Instalar o STK CLI
- Permissão para criar conteúdo.
- Faça login na sua conta StackSpot. Execute o comando no seu terminal:
stk login
Criar uma Action
Resumo dos passos:
- 1. Criar uma Action usando o comando
stk create action name-action
. - 2. Editar o arquivo
action.yaml
com os inputs. - 3. Editar
action.yaml
com um script pronto (add/commit/push). - 4. Testar a Action.
- 5. Publicar a Action no Estúdio/Workspace
- 6. Executar a Ação remotamente.
Passo 1. Criar a Action
No seu terminal, ou IDE de preferência, execute o comando:
stk create action
Responda as perguntas do comando no seu terminal:
- ? Nomeie sua action: Digite um nome para a sua Action.
- ? Você deseja iniciar um repositório git? Opção para iniciar um repositório Git na pasta da Action. Para este exemplo, responda digitando 'n' para não iniciar um repositório Git.
- ? Adicionar remote? No
- ? Descrição da action: (Descreva sua action explicando o propósito)
- ? Versão: Digite o número da versão desejada para a sua Action. Ela deve estar no formato semântico como no exemplo previamente preenchido no terminal "0.0.1".
- ? Selecione o tipo de action: Selecione o tipo de Action que você quer criar. Para este exemplo, selecione o tipo 'Shell'
- ? Você gostaria de adicionar uma Connection Requerida? Opção para adicionar uma Connection Interface como requerida na Action. Para este exemplo, responda digitando 'n' para não adicionar uma Connection Interface.
Você deve usar essa opção se você deseja que a Action interaja com algum recurso de infraestrutura ou recurso Cloud durante a sua execução. Para mais informações sobre Connections Interfaces consulte a documentação.
Após responder as perguntas, você receberá no terminal uma confirmação da criação da Action como no exemplo:
? Nomeie sua action: commit-push-action
? Você deseja iniciar um repositório git (Y/n): no
? Descrição da action: This Action commit and push your changes into GitHub.
? Versão: (0.0.1)
? Selecione o tipo de action Shell
? Você gostaria de adicionar uma Connection Requerida (Y/n): no
- Action commit-push-action criado com sucesso.
A Action criada é apenas um modelo básico minimamente funcional.
Para seguir os próximos passos, edite todos os arquivos e opções usando os exemplos fornecidos ou os parâmetros que você deseja que sua Action execute.
Passo 2. Editar os inputs da Action no action.yaml
A Action é criada com inputs de exemplo previamente preenchidos. Você precisa editar o arquivo action.yaml
para editar e adicionar os inputs que serão utilizados pelo script da sua Action.
- Acesse a pasta da Action que você criou e edite os inputs no arquivo action.yaml:
Os inputs são apenas um exemplo e fazem parte do guia para criar uma action que faz commit/push no GitHub. Você pode criar a sua própria Action seguindo esse guia.
inputs:
- label: Personal Access Token
name: pat
type: password
- label: Organization Name
name: org_name
type: text
- label: Repository Name
name: repo_name
type: text
- label: Commit message
name: message
type: text
Para cada tipo de Action, existem as opções onde você deve inserir os comandos ou scripts que devem ser executados pela Action. O exemplo demonstra os comandos que podem ser executados na Action do tipo Shell, você pode usá-los em sua Action ou digitar os comandos Shell que desejar:
Saiba mais sobre como preencher os campos de cada tipo de Action em Tipos de Action
requirements-check:
- check-command:
linux: |
git --version
mac: |
git --version
windows: |
git --version
info: "Git not installed"
Esse trecho da Action Shell serve para que o texto de info seja apresentado no terminal quando acontecer algum erro nesse comando.
- Adicione os comandos no seu arquivo action.yaml de acordo com seu sistema operacional. O trecho de código a seguir é apenas um exemplo, você pode usá-lo ou digitar os comandos que você desejar:
script:
linux: |
git add .
git commit -m "{{message}}"
git push https://{{pat}}@github.com/{{org_name}}/{{repo_name}}
mac: |
git add .
git commit -m "{{message}}"
git push https://{{pat}}@github.com/{{org_name}}/{{repo_name}}
windows: |
git add .
git commit -m "{{message}}"
git push https://{{pat}}@github.com/{{org_name}}/{{repo_name}}
O exemplo adiciona, faz o commit e sobe as suas alterações em um repositório remoto.
Confira a indentação. Se ocorrer algum erro, é provavelmente por esse motivo. O campo do script tem dois tabs.
Passo 3. Executar a Action localmente
Para executar a Action localmente como um teste, execute o comando com o caminho da pasta da Action:
stk run action <path-of-your-actions-folder>
Exemplo:
stk run action /Users/myteam/workspace/demo-action/commit-push-action
Ou entre na pasta da Action e execute o comando:
stk run action .
Neste momento a Action irá apresentar como perguntas, os inputs que você adicionou no seu arquivo action.yaml
. Você deve responder as perguntas para continuar. Considere os inputs de exemplo apresentados anteriormente e os responda:
? Personal Access Token: adicione o seu PAT token
? Organization Name: adicione o nome do seu repositório
? Repository Name: adicione o nome do seu repo
? Commit message: commit-test
Passo 4. Publicar a Action no seu Estúdio
Não é obrigatório adicionar um repositório Git para publicar a sua Action.
Execute o comando na pasta da sua Action e informe o nome do seu Estúdio:
stk publish action
Você também pode informar diretamente no terminal o nome do Estúdio com a opção --studio
, confira a seguir:
stk publish action --studio my-studio-name
Passo 5. Adicionar a Action na Stack
Siga os passos:
- No Portal da StackSpot, acesse o seu Estúdio;
- Clicar na Stack que você criou anteriormente. No menu principal, clique em ‘Actions’.
- Depois clique em ‘Adicionar Actions’ e escolha a sua Action;
Passo 6. Publicar sua Stack
Agora você precisa publicar a sua Stack:
- Acesse o seu Estúdio no Portal da StackSpot;
- No menu principal, clique em ‘Stacks’;
- Clique no botão 'Publicar';
Você criou uma Action e publicou a Stack criada na seção Primeiro Passos: Criador.
Seu conteúdo está disponível para ser usado por você ou outra pessoa.