Pular para o conteúdo principal

Extensões StackSpot EDP

Nesta seção, você encontra os passos para criar e publicar sua Extensão na StackSpot EDP.

Introdução

No contexto da StackSpot, uma Extensão permite criar uma nova página dentro do Portal da StackSpot EDP. A Extensão facilita a integração com outras ferramentas, oferecendo uma experiência centralizada e personalizada para as pessoas desenvolvedoras.

Atenção!
  • Toda a implementação e gerenciamento da Extensão é de total responsabilidade da pessoa desenvolvedora.

  • Se uma Extensão apresentar um incidente de segurança identificado pela StackSpot, ela poderá ser desativada a qualquer momento.

Conceitos básicos

Extensão: é uma página em React disponibilizada dentro do Portal StackSpot EDP em uma ou diferentes partes do Portal. Esta página pode se comunicar com APIs da sua organização ou APIs externas.

Principais atributos:

  • Quem cria: Content Creators ou outros usuários que tenham permissões de criação

  • Quem usa: Developer - usuários finais da sua organização (não necessita de permissão)

  • Ativada ou Desativada: status de visibilidade da Extensão no Portal StackSpot EDP.

    • Ativada: significa que está visível para pessoas usuárias finais (desenvolvedores);
    • Desativada: significa que nenhum usuário final (pessoa desenvolvedora) pode ver ou acessá-la.
  • Publicação: Extensões podem sofrer atualizações dos criadores, por isso é possível publicar novas versões das Extensões via Portal EDP ou via CLI;

  • Nível de visibilidade: Extensões podem ser usadas em diferentes locais no Portal EDP.

    • Organização: Extensões neste nível de visibilidade aparecerão em todas as páginas do Portal EDP;
    • Workspace: dentro de Workspaces (todos);
    • Workflow: depois dos inputs de Workflows a serem usados no Portal EDP;
    • Application: dentro de Aplicações (todas);
    • Multinível: mais de um Nível de uma vez.

Pré-requisito

Permissões

Permissões necessárias para a gestão de Extensões no Portal EDP e StackSpot CLI.

  • create: criar uma nova Extensão a ser usada no Portal EDP;

  • view: visualizar a lista de Extensões em myaccount.stackspot.com/account/extensions;

  • update:

    • ativar/desativar Extensão publicada via Portal;
    • publicar novas versões da mesma Extensão via Portal ou CLI;
    • editar nome, descrição e Nível de visibilidade via Portal;
  • delete: remover uma Extensão publicada do Portal EDP.

As permissões apresentadas anteriormente são para gestão da Extensão (criar, editar, publicar nova versão, excluir). Para os usuários que a usarão não é preciso ter permissões.

Criar Extensão: projeto local, testes e publicação no Portal EDP

projeto local e testes

Passo 1. Clone o repositório com o código base da Extensão:

git clone https://github.com/stack-spot/edp-extension-sample.git

O código base é um boilerplate (estrutura inicial) para você criar a sua Extensão. Ele contém todas as bibliotecas necessárias para desenvolvimento local e testes.

Passo 2. Execute localmente a Extensão. Na pasta raiz da Extensão, execute o comando a seguir:

pnpm start

Passo 3. Desenvolva, teste e tenha uma prévia da sua Extensão:

  1. Para ver as alterações e uma prévia de uma Extensão que não depende de APIs da StackSpot, use apenas o comando pnpm start;

  2. Se a Extensão precisa consumir recursos da StackSpot EDP como Studios e Workspaces:

Publicar Extensão

Via Portal StackSpot EDP

Permissões necessárias: create, view.

Passo 1. Acesse o Portal de Conta da StackSpot e, em seguida, clique no menu ‘Organização’.

  • Se você não ver esta opção, então você não tem as permissões necessárias

Passo 2. Na seção ’StackSpot EDP’, acesse a subseção ’Extensões’;

Passo 3. Clique no botão ’Criar extensões';

Passo 4. Preencha os campos a seguir:

  • Nome: Um slug é sugerido quando o campo de nome é preenchido. Se quiser alterar o slug, clique no botão ’Editar'.

  • Nível: escolha entre Organização, Workspace, Aplicação, Workflow ou Múltiplos níveis.

  • Descrição: é um campo opcional.

  • Arquivo: anexar o arquivo .zip que é gerado pelo comando pnpm build na raiz do projeto da Extensão

Passo 5. Clique no botão ’Criar’.


A imagem está em inglês.


Via StackSpot CLI

Permissões necessárias: create.

Na raiz da pasta de uma Extensão publicada no Portal da StackSpot, siga os passos a seguir:

Passo 1. Execute o comando a seguir para gerar a pasta dist na raiz do projeto:

pnpm build

Passo 2. Crie um arquivo de configuração para a Extensão, com o nome extension.yaml na raiz do projeto e preencha os dados conforme o exemplo a seguir:

  1. metadata:
  • name: adicione o mesmo slug (nome cadastrado) da Extensão publicada no Portal da StackSpot EDP;
  • description: adicione um texto que descreva o propósito da Extensão. Escreva o texto em aspas duplas;
  • display-name: escreva o mesmo nome da Extensão que é exibido no Portal da StackSpot EDP.
  1. spec:
  • level: informe o nível que a Extensão será disponibilizada. As opções aceitas são: organization, workspace, workflow e application.
  • path: caminho da pasta do projeto compilado pronto para uso. Por padrão é a pasta dist gerada na raiz do projeto anteriormente.

Exemplo:

schema-version: v1
kind: extension
metadata:
name: pin-generator-lzm-teste # exactly same slug of the Extension created previously on EDP Portal
description: "Describe your extension explaining its purpose."
display-name: pin-generator-lzm-teste
spec:
level: organization #other options: workspace / workflow / application
path: dist # folder generated by the pnpm build command

Passo 3. Use o comando stk publish extension na raiz do projeto da Extensão:

stk publish extension

Visualizar Extensões

Permissões necessárias: view.
Para visualizar as todas as Extensões que você tem permissão, acesse a página de Extensões em https://myaccount.stackspot.com/account/extensions

Atualizar a Extensão

Subir nova versão de Extensão, ativar/desativar Extensão e editar seus detalhes.

Permissões necessárias

  • create
  • view
  • update

Atualizar Extensão via Portal EDP

Passo 1. Acesse a página de Extensões no Portal da StackSpot EDP;
Passo 2. Localizar a Extensão e executar a ação desejada:

  1. Subir nova versão: anexar o arquivo ".zip" que é gerado pelo comando pnpm build na raiz do projeto da Extensão;
  2. Ativar ou Desativar sua visibilidade no Portal EDP;
  3. Editar detalhes (nome, descrição) e mudar o Nível de visibilidade.

Atualizar Extensão via StackSpot CLI

Passo 1. faça o login na CLI com o comando:

stk login

Passo 2. acesse a pasta raiz do projeto e faça as alterações no seu projeto e no arquivo extension.yaml edite as informações desejas:

  1. metadata:
  • name: adicione o mesmo slug (nome cadastrado) da Extensão publicada no Portal da StackSpot EDP;
  • description: adicione um texto que descreva o propósito da Extensão. Escreva o texto em aspas duplas;
  • display-name: escreva o mesmo nome da Extensão que é exibido no Portal da StackSpot EDP.
  1. spec:
  • level: informe o nível que a Extensão será disponibilizada. As opções aceitas são: organization, workspace, workflow e application.
  • path: caminho da pasta do projeto compilado pronto para uso. Por padrão é a pasta dist gerada na raiz do projeto anteriormente.

Passo 3. Salve o arquivo e na pasta raiz do projeto execute o comando para publicar a Extensão:

stk publish extension

A Extensão atualizada com a versão mais recente é enviada para o Portal da StackSpot EDP.

Remover uma Extensão

É possível remover uma Extensão, mas todas as versões dela também serão removidas da StackSpot EDP. Para isso, siga os passos a seguir:

Passo 1. Na linha da Extensão que você quer remover, clique no ícone que indica mais opções;

Passo 2. Para confirmar a remoção, clique no botão ’OK'.


A imagem está em inglês.


Pronto, você removeu uma Extensão do Portal.