Dependências (local, cloud ou mock)
Uma dependência é um core que um micro chama por REST. Quando inicia um cenário, para cada dependência escolhe como a resolver: o MicroLab reescreve o URL que esse micro usa para chamar, sem tocar no código do repo.
As três resoluções
Seção intitulada “As três resoluções”| Opção | O que faz | Quando usá-la |
|---|---|---|
| local | Aponta para o par iniciado no mesmo cenário | Testar a comunicação real entre os seus micros |
| cloud | Aponta para o ambiente DEV (pode requerer VPN corporativa) | Usar um core que não quer iniciar |
| mock | Aponta para o servidor de mocks do MicroLab | Trabalhar sem VPN nem iniciar o core |
Para que a resolução local funcione, o core de destino tem de fazer parte do cenário. Se não estiver, o MicroLab avisa.
Como se injeta
Seção intitulada “Como se injeta”Cada dependência declara que propriedade de configuração reescrever (por exemplo
app.rest-client.pagos.url). Ao arrancar, o MicroLab calcula o URL efetivo conforme a
resolução escolhida e injeta-o como configuração, com a perspetiva correta (host ou
contentor) conforme onde corre o cliente. O repo do micro não é modificado.
Dependências externas e aviso de VPN
Seção intitulada “Dependências externas e aviso de VPN”As dependências externas (gateways, autenticação) ficam fixadas em cloud. Se qualquer
dependência for resolvida contra a cloud, a app mostra o aviso de que é necessária
ligação (VPN) à rede corporativa, e as credenciais de cloud (${creds.x}) têm de estar
definidas.
Mudar a resolução
Seção intitulada “Mudar a resolução”Na secção Cenários, o painel de Dependências tem um seletor local/cloud/mock por dependência. Pode mudá-lo:
- Antes de arrancar: é guardado como parte do cenário.
- Com o cenário em execução: muitas resoluções aplicam-se a quente, sem reinício; outras reiniciam o micro afetado. A app diz-lhe qual das duas aconteceu.
A partir do CLI, o equivalente é microlab set-resolution <dep> <local|dev|mock> (ou
--resolve ao iniciar, como override pontual dessa invocação).
Relação com os mocks
Seção intitulada “Relação com os mocks”Quando uma dependência é resolvida como mock, o MicroLab serve as respostas que definiu para esse serviço na secção Mocks. Não é preciso iniciar nada para as editar: o catálogo de mocks vive no disco e é servido com recarga a quente.