veza/ansible/roles/sonarqube/tasks/main.yml
2025-12-03 22:56:50 +01:00

63 lines
2 KiB
YAML

---
# file: roles/sonarqube/tasks/main.yml
- name: "check if the folder /opt/sonarqube/stateless exists"
ansible.builtin.stat:
path: "/opt/sonarqube/stateless"
register: folder_sonarqube
tags: sonarqube
- name: "check if sonarqube update is needed"
block:
- name: "check version of sonarqube"
ansible.builtin.slurp:
src: "/opt/sonarqube/stateless/VERSION"
register: sonarqube_current
- name: "set fact current_sonarqube_version"
ansible.builtin.set_fact:
current_sonarqube_version: "{{ sonarqube_current['content'] | b64decode | trim }}"
- name: "check if sonarqube update is needed"
ansible.builtin.debug:
msg: "Update needed, from {{ current_sonarqube_version }} to {{ sonarqube_version }} (use: --extra-vars '{ \"sonarqube_update_sonarqube_now\" : true}')"
when: current_sonarqube_version != sonarqube_version
when: folder_sonarqube.stat.exists
tags: sonarqube
- name: "stop sonarqube?"
ansible.builtin.service:
name: sonarqube
state: stopped
when:
- folder_sonarqube.stat.exists
- sonarqube_update_sonarqube_now
- current_sonarqube_version != sonarqube_version
tags: sonarqube
- name: "install or update sonarqube"
ansible.builtin.import_tasks: install_sonarqube.yml
when: (not folder_sonarqube.stat.exists) or (folder_sonarqube.stat.exists and sonarqube_update_sonarqube_now and current_sonarqube_version != sonarqube_version)
tags: sonarqube
- name: "configure"
ansible.builtin.import_tasks: configure.yml
tags: sonarqube
- name: "install or update sonarqube plugins"
ansible.builtin.import_tasks: install_plugins.yml
tags: sonarqube
- name: "/etc/systemd/system/sonarqube.service"
ansible.builtin.template:
src: "sonarqube.service.j2"
dest: "/etc/systemd/system/sonarqube.service"
notify:
- systemctl daemon_reload
- restart sonarqube
tags: sonarqube
- name: "systemd enabled and started"
ansible.builtin.systemd:
name: sonarqube.service
state: started
enabled: true
tags: sonarqube