Microserviço web baseado em GraphQL para recebimento de informação e controle de nós sensores sem fio via https.
Pré-requisitos:
Para entender como funciona a configuração do app veja o arquivo env-config.js
- Faça o build da imagem
sudo docker-compose build
- Inicie o microserviço
sudo docker-compose up --detach
Para parar o microserviço
sudo docker-compose stop
Para realizar a rotina de CI eu estou utilizando a maquina virtual descrita no repositório vm-integracao-continua
Apos inciar o Jenkins e o SonarQube como demonstrado no README.MD crie um job pipeline com o pipeline descrito abaixo:
pipeline {
agent {
docker {
image 'node:10'
args '-v /home/vagrant/sonar-scanner-4.0.0.1744-linux:/home/vagrant/sonar-scanner --link sonarqube:sonarqube'
}
}
parameters {
string(name: 'PROJECT_KEY', defaultValue: 'central-controle', description: 'Identificação do projeto')
string(name: 'SONAR_TOKEN', defaultValue: 'token', description: 'Token de acesso ao SonarQube')
}
stages {
stage('Clonando o repositório') {
steps {
git 'https://github.com/gnunesmoura/central-controle.git'
}
}
stage('Instalando dependências') {
steps {
sh 'npm i'
}
}
stage('Execução de testes automáticos') {
steps {
sh 'npm run test'
}
}
stage('Realizar coleta de métricas') {
steps {
sh '/home/vagrant/sonar-scanner/bin/sonar-scanner -Dsonar.projectKey="${PROJECT_KEY}" -Dsonar.sources=. -Dsonar.host.url=http://sonarqube:9000 -Dsonar.login="${SONAR_TOKEN}"'
}
}
}
}