blog.bressure.net

Application, Gestion de projet

Sonarqube

admin

Sonarqube est un serveur de visualisation de rapport d’audit de code. C’est un outil qui permet de suivre la qualité du code et si on le couple à une chaîne d’intégration continue on obtient un puissant outils de contrôle des livraisons. On peut même aller jusqu’à bloquer la chaîne ie interdire un déploiement ne production si la qualité n’est pas suffisante.

Afin d’explorer dans le détail les possibilités de cet outil et son couplage un outils d’intégration continue, je me lance donc dans la mise en œuvre de SonarQube. Pour cela un environnement sur lequel j’ai un contrôle total est nécessaire sans pour autant modifier ou mettre en risque mes autres services. Le chant des sirènes se fait déjà entendre… à moins que cela ne soit celui de Docker !

SonarQube docker

J’applique la même approche que pour installer mon instance de Graylog.

Le fichier docker-compose.yml commun est simple pour le moment:

version: '3.7'
services:
  # Sonarqube: https://hub.docker.com/_/sonarqube/
  sonarqube:
    image: sonarqube
    

Le fichier pour staging contient la plomberie pour utiliser Traefik et avoir les volumes docker afin de persister ce qui est utile.

version: '3.7'
services:
  sonarqube:
   labels:
     - "traefik.http.routers.staging_sonarqube.entryPoints=staging"
     - "traefik.http.routers.staging_sonarqube.rule=Host(`sonarqube.bressure.net`)"
     - "traefik.docker.network=staging_traefik_backend"
   volumes:
     - '/srv/staging_sonarqube/data:/opt/sonarqube/data'
     - '/srv/staging_sonarqube/logs:/opt/sonarqube/logs'
     - '/srv/staging_sonarqube/extensions:/opt/sonarqube/extensions'
   networks:
      - default
      - outside
networks:
  outside:
     external: true
     name: staging_traefik_backend

Le fichier .gitlab-ci.yml est ici et d’une banalité affligeante: https://gitlab.bressure.net/docker/applications/sonarqube/-/blob/master/.gitlab-ci.yml

Une modification du fichier /etc/hosts et l’url https://sonarqube.bressure.net:444/ donne accès à mon instance SonarQube de staging. Attention lors du premier démarrage le compte administrateur admin/admin existe et il faut penser à changer sont mot de passe. Il me faudra en prendre compte lors du déploiement en production pour ne modifier mon DNS publique que lorsque j’aurai changé le mot de passe de admin.

Tags:

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Back to top