Arquivos .yaml
O que são os arquivos .yaml?
Os arquivos template.yaml
e plugin.yaml
são utilizados para configurar tanto os Templates
quanto os Plugins
. Além do arquivo task.yaml
que recebe as configurações das Tasks
.
Neles estão algumas informações usadas para:
- Exibir as informações dos Templates/Plugins para o usuário.
- Configurações das entradas esperadas pelo Template/Plugin.
- Configuração das operações executadas pelas Tasks, utilizando o comando stk-legacy run.
Exemplos de arquivos .yaml
- template.yaml
- plugin.yaml
- stack.yaml
- task.yaml
name: my-template
description: Describe your template explaining its purpose
types:
- app-template
inputs:
- label: Input Example
type: text
name: example
default: any text
required: true
name: my-plugin
description: Describe your plugin explaining its purpose
types:
- app
display-name: Plugin name
picture: "plugin.png"
category: Category
compatibility:
- String
about: docs/about.md
usage: docs/usage.md
use-case: docs/useCase.md
implementation: docs/implementation.md
technologies:
- "Api" # Ref: https://docs.legacy.stackspot.com/latest/docs/create-stacks/yaml/#technologies
inputs:
- label: Input Example
type: text
name: example
default: any text
required: true
- label: Input Folder Name
type: text
name: folder_name
default: folder_example
required: true
pattern: '[a-zA-Z0-9](\w|-)*$'
- label: Example of list
type: multiselect
name: any_list
items:
- item1
- item2
condition:
variable: example
operator: “==”
value: xpto
description: Example of stack
name: example-portal-stack
display-name: Example Portal Stack
picture: "logo_da_stack.jpeg"
category: backend # Ref: https://docs.legacy.stackspot.com/latest/docs/create-stacks/yaml/#category
compatibility:
- spring
- kotlin
technologies:
- "OpenAPI"
- "SpringBoot" # Ref: https://docs.legacy.stackspot.com/latest/docs/create-stacks/yaml/#technologies
about: docs/about.md
use-cases:
- title: User case example
content: docs/use-case-example.md
stackfile: stackfiles/create-example.yaml
name: <nome-da-sua-task>
description: <texto-descrição-task>
inputs:
- label: Commit message
type: text
default: example
name: message
cache: true
required: 'true'
global_input: false
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}}"
caution
Quando você usar o tipo int
no campo type
, é necessário ajustar um dos dois campos abaixo:
default
: Colocar um valor associado.Required
Precisa sertrue
.
Veja o exemplo abaixo:
name: my-template
description: Describe your template explaining its purpose
types:
- app-template
inputs:
- label: Input Example
type: int
name: example
default: 1
required: true
Atributos Mandatórios
Atributo | Descrição |
---|---|
name | String que define o nome do Plugin, Template ou Stack. Esta informação define o identificador do Plugin que é usado na sua aplicação. |
description | String que descreve o propósito do Plugin, Template ou Stack, e deve conter informações que sejam relevantes para serem exibidas para os consumidores nos comandos stk-legacy list plugin , stk-legacy list template , e stk-legacy list stack . |
Atributos Opcionais
Atributo | Descrição |
---|---|
display-name | String que define o nome do Plugin que será apresentado no portal de estúdios, Template ou Stack. |
picture | String que define o nome do arquivo de imagem que será exibida no Portal de estúdios. Este arquivo precisa estar dentro do repositório e é preciso fornecer o path do arquivo. |
category | String que define o a categoria do Plugin ou Stack. Para Plugins, qualquer categoria pode ser informada. Mas para Stacks, é obrigatório usar uma das categorias: Analytics; Back-end; Front-end; Full Stack; SRE; |
types | Lista de strings que define os tipos do Plugin/Template. O valor válido é o app-template. |
compatibility | Lista de String que define o termos, tecnologias ou aplicações compatíveis. |
about | Caminho para um arquivo markdown presente dentro do repostório que detalha a Stack ou Plugin. |
usage | Caminho para um arquivo markdown presente dentro do repositório que detalha o uso da Stack ou Plugin. |
use-case | Caminho para um arquivo markdown presente dentro do repostório que detalha um caso de uso da Stack. |
use-cases | Lista de casos de uso da Stack. |
use-cases.title | String com o título de um caso de uso. |
use-cases.content | Caminho para um arquivo markdown presente dentro do repostório que detalha o caso de uso. |
use-cases.stackfile | Caminho para um arquivo Stackfile presente dentro do repositório relacionado ao caso de uso. |
implementation | Caminho para um arquivo markdown presente dentro do repositório que detalha a implementação da Stack. |
technologies
Lista de strings das tecnologias relacionadas à Stack ou ao Plugin.
As tecnologias permitidas para o uso são:
- .NET
- Allure
- Angular
- Apache Spark
- Api
- AWS DynamoDB
- AWS ECS/Fargate
- AWS EventBridge
- AWS Glue
- AWS Kafka
- AWS Kinesis
- AWS Lake Formation
- AWS Lambda
- AWS S3
- AWS SNS
- AWS SQS
- Citric
- CocoaPods
- Cucumber
- C#
- Docker
- Gradle
- Jaeger
- Java
- JavaScript
- Junit
- Kakfa
- Kotlin
- Maven
- Microfrontend
- MySql
- NextJS
- Observability
- OpenAPI
- OpenTelemetry
- Parquet
- PostgreSql
- Prometheus
- Python
- Queue
- React
- Redis
- Rest
- Rest Assured
- Robot Framework
- Secrets
- Serenity BDD
- Splunk
- Springboot
- Swift
- Terraform
- Typescript
- Web
Próximos passos
Confira a referência do arquivo plugin.yaml
Esta página foi útil?