Módulos Personalizados
Você pode implantar seu módulo com sua funcionalidade usando a API do desenvolvedor.
Desenvolvimento
Use o modelo https://github.com/OneEntry/module-example e siga as instruções em https://github.com/OneEntry/custom-module-deployment-guide durante o desenvolvimento.
Construção
- Crie um novo token de projeto com permissões read-registry. É recomendável criar um token sem expiração.
- Crie uma nova tag no git (a cada lançamento de uma nova versão do módulo)
- Aguarde a conclusão do pipeline, após o qual a imagem docker do módulo será carregada no registry e estará disponível para implantação.
Implantação
Vá para as configurações, aba Modules, e role para baixo até o cartão Create New Module.
-
Informe o nome (Name) e o marcador (Marker) do módulo.
-
No bloco Docker image, no campo Image URL, informe o caminho para a imagem docker previamente construída no formato
host/user/repo:version.Onde
host- é o nome do host do docker registry, por exemploregistry.gitlab.com,user- id do usuário ou da organização, por exemplooneentry,repo- nome do repositório, por exemplomy-moduleversion- nome da tag (versão do módulo)Exemplo completo:
registry.gitlab.com/oneentry/my-module:v1.0.0 -
No campo Registry host, informe o host do docker registry, que repete a parte host do caminho para a imagem docker, por exemplo
registry.gitlab.com. -
Nos campos Token ID e Token, informe o nome do token (indicado na criação) e o próprio token (geralmente começa com
glpat), respectivamente. -
Abaixo dos campos Token ID e Token, clique em Add e informe as variáveis de ambiente necessárias para o funcionamento do módulo (pode ser alterado depois).
Clique em Create.
Após a criação do módulo, ele aparecerá na tabela. Agora você pode implantá-lo clicando em (isso levará algum tempo).
Status do Contêiner
- Not deployed — módulo criado, mas ainda não foi implantado.
- Deploying — módulo está em processo de implantação.
- Running — módulo está em funcionamento.
- Suspended — módulo implantado, mas não está em execução.
- Error — a última ação com o módulo falhou, veja a seção «Depuração de Erros».
Enquanto uma ação está sendo realizada com o módulo, a coluna de status exibe seu progresso: Deploying, Suspending, Resuming ou Deleting. O status que não pôde ser obtido é exibido como Unknown. Os status são atualizados automaticamente.
Ações com o Módulo
Suspender o módulo. Para o processo, mas os dados permanecem.
Retomar o funcionamento do módulo. Inicia o processo.
Excluir o módulo. Parará o processo, excluirá o contêiner e os dados relacionados.
Depuração de Erros
Se o módulo não puder ser implantado ou o processo falhar sistematicamente, o módulo receberá o status Error, e na linha aparecerá um ícone com a dica "A última ação com este módulo foi malsucedida".
Um módulo com status Error, assim como um não implantado, terá novamente o botão de implantação
: corrija a causa e reimplante o módulo.
Problemas Possíveis
- Imagem docker configurada incorretamente.
- Token inválido ou incorreto.
- O processo falha. O processo interno não deve falhar enquanto o módulo estiver ativo.
Registro
Outros problemas com o módulo podem ser depurados usando os logs exibidos nas configurações do módulo.
Atualização/Edição do Módulo
Se for necessário implantar uma nova versão do módulo ou alterar variáveis de ambiente, você deve atualizar a tag e/ou as variáveis nas configurações. O processo será reiniciado.