uridium.sonarqube

Rôle Ansible : SonarQube

GitHub Actions Ansible Galaxy

Un rôle Ansible qui installe et configure le service SonarQube sur Debian stable. Il utilise une base de données PostgreSQL pour stocker les configurations et les instantanés.

Exigences

  • openjdk-11
  • unzip
  • serveur postgresql

Les paquets openjdk-11-jre-headless et unzip sont définis dans tasks/main.yml. Le serveur PostgreSQL doit être installé au préalable, en utilisant un autre rôle.

Exigences de SonarQube

Variables de Rôle

Les variables disponibles sont listées ci-dessous (voir defaults/main.yml) :

---
sonarqube_version: '8.4.2.36762'
sonarqube_download_url: 'https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-{{ sonarqube_version }}.zip'

sonarqube_basedir: '/opt'
sonarqube_workdir: '{{ sonarqube_basedir }}/sonarqube'
sonarqube_lsb_script: '{{ sonarqube_workdir }}/bin/linux-x86-64/sonar.sh'

sonarqube_user: 'sonarqube'
sonarqube_group: 'sonarqube'

sonarqube_web_java: '-Xmx2048m -Xms2048m -XX:+HeapDumpOnOutOfMemoryError'
sonarqube_ce_java: '-Xmx2048m -Xms2048m -XX:+HeapDumpOnOutOfMemoryError'
sonarqube_search_java: '-Xmx2048m -Xms2048m -XX:+HeapDumpOnOutOfMemoryError'

sonarqube_vm_max_map_count: '262144'
sonarqube_fs_file_max: '65536'
sonarqube_nofile: '65536'
sonarqube_nproc: '4096'

db_host: VOTREhôteDB
db_name: VOTRENOMdebDD
db_user: VOTRENOMdutilisateurDB
db_pass: VOTREDÉPASSDB

Versions de SonarQube

Comment stocker des mots de passe encryptés :

db_pass: !vault |
      $ANSIBLE_VAULT;1.1;AES256
      62383534356266343334383935326331386332356338663837373032643562653537373238373830
      6339353037386132663139393661333738303439316339650a393162373132626330633464353234
      66616137323661306666376666623330626535303436313931653962386361353537323833343863
      3862386566613462390a663362393236313765323036636439653763623933303334333533653234
      3033
db_pass: '{{ lookup("pass", "path/to/your/passwordstore/file") }}'

Exemple de Playbook

---
- hosts: sonarqube.domaine.io
  remote_user: boss
  become: True
  gather_facts: True

  roles:
    - role: uridium.sonarqube
      sonarqube_version: '8.9.8.54436'
      sonarqube_basedir: '/data'
      db_host: 'sonarqube_db.domaine.io'
      db_name: 'sonarqube'
      db_user: 'sonarqube'
      db_pass: '{{ lookup("pass", "domaine.io/db/sonarqube") }}'
À propos du projet

Install and configure SonarQube - a service for continuous inspection of code quality and static analysis.

Installer
ansible-galaxy install uridium.sonarqube
Licence
mit
Téléchargements
74
Propriétaire