Criar uma Task

Nesta seção, você encontra detalhes de como criar uma Task.

Antes de você começar

Uma Task permite que você crie operações para serem executadas por comandos complementares aos comandos Core do STK CLI. Dessa forma, Tasks são como comandos customizáveis que vão atuar no contexto do projeto ou Stack da pessoa que for usar a StackSpot.

Você pode criar uma Task para executar operações como:

  • Configurar um ambiente local;
  • Fazer deploy;
  • Executar scripts.

A Task é uma estrutura independente de outros arquivos YAML**, confira mais detalhes em Configurar Arquivos .yaml**.

Pré-requisitos

É necessário ter uma Stack criada. Para seguir com a criação da Task, siga um dos passos abaixo:

  1. Utilize uma Stack existente;
  2. Crie uma Stack, para isso, confira o tutorial para criar uma Stack.

Criar uma Task

A Task precisa de uma estrutura base para receber as operações, siga os passos abaixo para criá-la:

Passo 1. Acessar uma Stack

Acesse o local ou pasta que a Stack foi criada e execute sem as chaves < > o comando abaixo para entrar na pasta da Stack:

cd <TEXTO-COM-O-NOME-DA-STACK>

Passo 2. Criar a Task

Dentro da pasta da sua Stack, execute sem as chaves < > o comando abaixo:

stk create task <TEXTO-COM-O-NOME-DA-TASK>

Exemplo:

stk create task task-exemplo

A seguir, informe uma descrição para a sua Task:

Exemplo:

? Description: Exemplo de criação de Tasks

Pronto! Você criou sua Task, o retorno no terminal deve ser:

- Task task-exemplo successfully created!

Passo 3. Editar o arquivo Task.yaml

Na pasta da sua Stack, uma nova pasta com o nome tasks foi criada. Dentro dela, você encontra a pasta com o nome da sua Task e dentro o arquivo task.yaml, que está previamente preenchido com as seguintes informações:

  • Nome da Task;
  • Descrição da Task;
  • Inputs de exemplo;
  • Parâmetros para informar o sistema operacional suporatdo;
  • Parâmetros para informar os comandos das operações que a Task deve realizar.
name: task-exemplo
description: Exemplo de criação de Tasks
inputs:
- label: Commit message
  type: text
  default: example
  name: message
  required: 'true'
supported-os:
- windows
- linux
- mac
requirements-check:
  dependency-example:
    check-command: git --version
    info: git is not installed
command: git add . ; git commit -m "{{inputs.message}}"

O yaml da Task de exemplo já vem preenchido com a operação que preenche a mensagem e efetua um commit no Git. Você precisa editar os campos e adicionar novos inputs de acordo com a Stack ou projeto que você deseja criar.

Para saber mais detalhes sobre os inputs e demais parâmetros de uma Task, confira a seção Task yaml

Passo 4. Testar a execução da Task

Utilize o comando de executar Tasks stk run com o parâmetro -p ou --task-path para testar.

Pelo terminal, execute sem as chaves < > o comando abaixo:

stk run -p ou --task-path <CAMINHO-ABSOLUTO-TASK-CRIADA>

Exemplo:

stk run -p /Users/stackspot/hello-stacker/task-exemplo

O exemplo dessa Task executa corretamente e exibe o resultado no terminal se, na sua máquina o Git estiver corretamente instalado e configurado.
A sua Stack deve estar com alterações nos aquivos para que a sequência de comandos do Git, definidos na Task executem sem erros.

Leia também

Confira mais detalhes dos comandos de Task: