Micro, manifesto e stack
Microsserviço (micro)
Seção intitulada “Microsserviço (micro)”Um micro é um repositório arrancável. No MicroLab adiciona-o uma vez —escolhendo a sua pasta ou clonando-o do Git— e a partir daí é descrito por um manifesto que o MicroLab gera por si.
Manifesto
Seção intitulada “Manifesto”O manifesto é a descrição de como arrancar um micro: a sua tecnologia, as suas
portas, a infraestrutura de que precisa, as suas dependências a outros cores e a sua
receita de arranque. O MicroLab deteta-o automaticamente ao adicionar o micro (a
partir de ficheiros como pom.xml, application.yml ou package.json); só tem de o
rever.
O manifesto é portável: o caminho para o repo é guardado relativo ao espaço de trabalho, não absoluto, para que funcione entre máquinas. Pode ser editado a partir da app (secção Micros) ou a partir do CLI.
Se mudar de ramo no repo, as suas portas ou dependências podem variar; o MicroLab deteta-o (drift) e oferece atualizar o manifesto a partir do repositório conservando o que curou à mão. Ver Mudar de ramo e drift.
O stack é a tecnologia do micro. Hoje o MicroLab suporta:
quarkus · spring-boot · node · angular · python
O stack determina três coisas: como o micro arranca (o seu comando), onde está o
seu health (para saber quando está saudável) e como se lhe injeta a configuração
(propriedades de sistema -D na família JVM, variáveis de ambiente em Node/Python, etc.).
Esse conhecimento vive num registo de perfis por tecnologia dentro do MicroLab, não
no manifesto: o manifesto só declara stack.kind (quarkus, node…) e, se necessário,
algum ajuste pontual. Adicionar suporte para uma nova tecnologia é adicionar um perfil,
não reescrever nada dos seus micros.