Introdução
O objetivo desse estudo foi o de identificar como os portais de documentação atuais foram construídos, suas semelhanças e padrões, afim de melhorá-los e aplicá-los em um site de arquitetura TOTVS. A pagina que será construída é onde guardaremos as documentações de decisões realizadas durante reunião de microsserviços.
Arquitetura
draw.io Diagram |
---|
border | true |
---|
viewerToolbar | true |
---|
| |
---|
fitWindow | false |
---|
diagramName | Diagrama sem nome |
---|
simpleViewer | false |
---|
width | |
---|
diagramWidth | 358 |
---|
revision | 3 |
---|
|
Figura 1 - Arquitetura do portal de arquitetura TOTVS, após publicado
Na figura acima, verificamos que o Ingress irá rotear para o portal adequado de acordo com a rede na qual o cliente se encontra.
Acesso realizado na rede da TOTVS será direcionado para o portal interno, caso contrário, DMZ/externo (Este não apresentará documentos que contém informações com maior grau de sensibilidade).
É importante notar que o portal não acessa nenhum recurso externo, o conteúdo completo do site encontra-se no HTML dos componentes Angular.
Engine de Criação de portais TOTVS
draw.io Diagram |
---|
border | true |
---|
viewerToolbar | true |
---|
| |
---|
fitWindow | false |
---|
diagramName | gerador de portais |
---|
simpleViewer | false |
---|
width | |
---|
diagramWidth | 651 |
---|
revision | 6 |
---|
|
Figura 2 - Arquitetura do gerador de portais
No caso do portal de arquiteturas TOTVS, os repositórios, builds e releases se encontrarão no Azure Devops.
A engine gerador de portais é um repositório que possui um programa, desenvolvido em Typescript com NestJS, com a missão de gerar um portal completo, seguindo os padrões da TOTVS, a partir de arquivos .md. Vai desde a criação de um novo projeto até mover o código de produção para um servidor web (NGINX), ou seja: uma imagem docker pronta para deploy.
Atividades Identificadas
Criar gerador de portais
- Preparar imagem docker
- Instala Node, Angular/CLI e MD2THF
- Motor de atualização do portal - Typescript/Gulp
- Executa md2thf
- Movimentação e ajuste de arquivos (componentes, rotas e módulos)
- Preparar script "build.sh"Motor de movimentação e ajuste de arquivos (componentes, rotas e módulos) - Typescript/Gulp
- motor de atualização do portal
- Faz build de produção do projeto
- Estudar/Definir necessidades e como criar uma homepage padrão a partir de .md
Preparar pipeline CI/CD