installer for MBD Kits
Gerador de instalações customizadas para clientes (a.k.a. Kits). Desenvolvido por minha iniciativa própria para uso interno da empresa, afim de agilizar o processo e a qualidade do pós-atendimento do suporte automatizando e padronizando as implementações. Apesar de funcional, não está com sua arquitetura completa planejada, e seu desenvolvimento foi descontinuado.
Este é o repositório do Installer, responsável em executar instruções para instalar o sistema conforme os dados contidos no job recebido e armazenado.
Veja também o repositório das outras partes desta arquitetura:
Foi feito em arquitetura semelhante a microserviços:
- coleta parâmetros
- POST na API com params
- GET link/id/alerta
O Frontend foi feito em VueJS, com Vuetify. O formulário possui validações customizadas para IP, hostname, versão dos aplicativos e do banco de dados. Possui também busca de endereço pelo CEP e dos dados de clientes por uma API de base de dados (mockado). Faz envio das informações para uma API (serveless) NodeJS/Express hospedada no Netlify.
- recebe params e add job na queue do Firebase
- não aceita request já existentes na queue ou done
- retorna link/id/alerta (ao front)
- retorna lista dos jobs em andamento
Esta API recebe os dados do frontend, e executa Funções Lambda do Netlify
- Armazena parâmetros para o kit
- Armazena metadados: data de criação, queue e status do Job
- Armazena a URL gerada e enviada para baixar o Kit
- Armazena o histórico
- ambiente preparado com Firebird 2.5
- DLLs instaladas e registradas
- node script iniciado, reiniciado, gerenciado e monitorado com PM2
- recebe lista de jobs do Firebase e seta queue (quando starta)
- watch Firebase changes e add job na queue
- watch jobs done, remove da queue e manda e-mail de notificação com URL para baixar o arquivo
- watch jobs failed e notifica erros por e-mail ao administrador e solicitante
- seta status do job no firebase enquanro executa o empacotamento do instalador com o node-pkg, produzindo um executável (.EXE)
- seta status done do job no firebase com URL do executável e remove job da queue
Utiliza Node-pkg para empacotar o projeto Node em um arquivo executável, o qual é responsável em efetuar a instalação do Kit (programas vendidos pela empresa) em máquinas Servidor e Terminal.
João Trepichio |
Licensed under ISC.