uridium.sonarqube

Role de Ansible: SonarQube

GitHub Actions Ansible Galaxy

Un rol de Ansible que instala y configura el servicio SonarQube en Debian estable. Utiliza una base de datos PostgreSQL para almacenar la configuración y las instantáneas.

Requisitos

  • openjdk-11
  • unzip
  • servidor de postgresql

Los paquetes openjdk-11-jre-headless y unzip están definidos en tasks/main.yml. El servidor PostgreSQL debe instalarse previamente, utilizando otro rol.

Requisitos de SonarQube

Variables del Rol

Las variables disponibles están listadas a continuación (ver 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: TUdbhost
db_name: TUdbname
db_user: TUdbusername
db_pass: TUdbpassword

Versiones de SonarQube

Cómo almacenar contraseñas encriptadas:

db_pass: !vault |
      $ANSIBLE_VAULT;1.1;AES256
      62383534356266343334383935326331386332356338663837373032643562653537373238373830
      6339353037386132663139393661333738303439316339650a393162373132626330633464353234
      66616137323661306666376666623330626535303436313931653962386361353537323833343863
      3862386566613462390a663362393236313765323036636439653763623933303334333533653234
      3033
db_pass: '{{ lookup("pass", "ruta/a/tu/archivo/passwordstore") }}'

Ejemplo de Playbook

---
- hosts: sonarqube.dominio.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.dominio.io'
      db_name: 'sonarqube'
      db_user: 'sonarqube'
      db_pass: '{{ lookup("pass", "dominio.io/db/sonarqube") }}'
Acerca del proyecto

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

Instalar
ansible-galaxy install uridium.sonarqube
Licencia
mit
Descargas
74
Propietario