plugin.yaml

Nesta seção, você encontra a referência sobre Plugins.yaml.

O arquivo plugin.yaml contém informações e configurações para o Plugin utilizado em seu projeto ou aplicação.

Atributos do arquivo plugin.yaml

Para criar um Plugin, use o comando stk create plugin, você terá a estrutura básica do seu Plugin conforme o exemplo abaixo:

name: yaml-plugin
description: Exemplo do arquivo yaml do template do Plugin
display-name: yaml-plugin
picture: plugin.png
category: backend # Ref: https://docs.stackspot.com/latest/docs/creators-guide/yaml-files/plugin/#category
compatibility:
  - java
  - spring
about: docs/about.md
usage: docs/usage.md
use-case: docs/use-case.md
implementation: docs/implementation.md
technologies: # Ref: https://docs.stackspot.com/latest/docs/creators-guide/yaml-files/plugin/#technologies
  - "Api"
types:
  - app
inputs:
  - label: Input Example
    type: text
    name: example
    default: any text

Atributos Obrigatórios do Plugin

name

String que define o nome do Plugin. Esta informação define o identificador do Plugin que é usado na sua aplicação.

name: my-plugin

description

String que descreve o propósito do Plugin, deve conter informações que sejam relevantes para serem exibidas para os consumidores no comando stk list plugin.

description: Describe your Plugin explaining its purpose

types

Lista de strings que define o tipo do Plugin. O tipo disponível é:

  • app Indica que o Plugin pode ser aplicado em um Template do tipo app-template.
types:
  - app

Atributos Opcionais do Plugin

display-name

String que define o nome do Plugin que será apresentado no portal de Estúdios, Template ou Stack:

display-name: Plugin name

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:

picture: "plugin.png"

category

String que define o a categoria do Plugin ou da Stack.

  • Para Plugins: Qualquer categoria pode ser informada.
  • Para Stacks: É obrigatório usar uma das categorias abaixo:
    • Analytics
    • Backend
    • Frontend
    • Full Stack
    • SRE
category: Category

compatibility

Lista de String que define o termos, tecnologias ou aplicações compatíveis:

compatibility:
  - String

about

Caminho para um arquivo Markdown presente dentro do repositório que detalha a Stack ou Plugin:

about: docs/about.md

requirements

Lista que configura como requisito Templates e Plugins que tenham sido aplicados previamente ao app.

requirements: 
  - <STACK_NAME>/<TEMPLATE_NAME>
  - <STACK_NAME>/<PLUGIN_NAME>

usage

Caminho para um arquivo markdown presente dentro do repositório que detalha o uso da Stack ou Plugin:

usage: docs/usage.md

use-case

Caminho para um arquivo markdown presente dentro do repositório que detalha um caso de uso da Stack:

use-case: docs/useCase.md

use-cases

Lista de casos de uso da Stack:

use-cases: docs/useCases.md

use-cases.title

String com o título de um caso de uso:

use-cases

use-cases.content

Caminho para um arquivo Markdown presente dentro do repositório que detalha o caso de uso:

docs/useCases.md

use-cases.stackfile

Caminho para um arquivo Stackfile presente dentro do repositório relacionado ao caso de uso:

docs/stk.yaml

implementation

Caminho para um arquivo markdown presente dentro do repositório que detalha a implementação da Stack:

implementation: docs/implementation.md

Inputs

Confira em Inputs dos arquivos .yaml todos os tipos de inputs disponíveis.

technologies

Lista de strings das tecnologias relacionadas à Stack ou ao Plugin. As tecnologias aceitas no campo technologies devem ser definidas exatamente como na lista abaixo:

  • .NET
  • Apache Spark
  • Api
  • AWS DynamoDB
  • AWS ECS/Fargate
  • AWS EventBridge
  • AWS Glue
  • AWS Kinesis
  • AWS Lake Formation
  • AWS Lambda
  • AWS S3
  • AWS SNS
  • AWS SQS
  • C#
  • Docker
  • Jaeger
  • Java
  • Kotlin
  • Observability
  • OpenAPI
  • Parquet
  • Prometheus
  • Python
  • Queue
  • Rest
  • Secrets
  • Splunk
  • Springboot
  • Typescript
technologies: [".NET"]

Próximos passos

Confira a referência do arquivo template.yaml