2026-07-05 15:00:39 -04:00
|
|
|
---
|
2026-08-09 14:01:12 -04:00
|
|
|
# Le chemin de destination PORTE la version : cet artefact est immuable une fois pose.
|
|
|
|
|
# Sans garde, `get_url` recontacte le serveur distant a CHAQUE deploiement — et un
|
|
|
|
|
# serveur tiers lent suffit alors a faire tomber un deploiement de flotte. Constate le
|
|
|
|
|
# 2026-08-09 sur le binaire Forgejo, meme motif ici.
|
|
|
|
|
- name: L artefact de cette version est-il deja pose ?
|
|
|
|
|
ansible.builtin.stat:
|
|
|
|
|
path: "/tmp/nextcloud-{{ serveur_nextcloud_version }}.tar.bz2"
|
|
|
|
|
register: serveur_nextcloud_archive_present
|
|
|
|
|
|
2026-07-05 15:00:39 -04:00
|
|
|
- name: Telecharger le tarball Nextcloud (version epinglee)
|
2026-08-09 14:01:12 -04:00
|
|
|
when: not serveur_nextcloud_archive_present.stat.exists
|
2026-07-05 15:00:39 -04:00
|
|
|
ansible.builtin.get_url:
|
|
|
|
|
url: "{{ serveur_nextcloud_url }}"
|
|
|
|
|
dest: "/tmp/nextcloud-{{ serveur_nextcloud_version }}.tar.bz2"
|
|
|
|
|
mode: "0644"
|
|
|
|
|
|
|
|
|
|
- name: Extraire Nextcloud dans /var/www (si absent)
|
|
|
|
|
ansible.builtin.unarchive:
|
|
|
|
|
src: "/tmp/nextcloud-{{ serveur_nextcloud_version }}.tar.bz2"
|
|
|
|
|
dest: "/var/www/"
|
|
|
|
|
remote_src: true
|
|
|
|
|
owner: "{{ serveur_nextcloud_utilisateur }}"
|
|
|
|
|
group: "{{ serveur_nextcloud_utilisateur }}"
|
|
|
|
|
creates: "{{ serveur_nextcloud_racine }}/occ"
|
|
|
|
|
|
|
|
|
|
- name: Installer Nextcloud (occ maintenance:install, PG en TLS ; une seule fois)
|
|
|
|
|
ansible.builtin.command:
|
|
|
|
|
cmd: >-
|
|
|
|
|
php {{ serveur_nextcloud_racine }}/occ maintenance:install
|
|
|
|
|
--database pgsql
|
|
|
|
|
--database-host {{ serveur_nextcloud_db_host }}
|
|
|
|
|
--database-name {{ serveur_nextcloud_db_name }}
|
|
|
|
|
--database-user {{ serveur_nextcloud_db_user }}
|
|
|
|
|
--database-pass {{ serveur_nextcloud_db_password }}
|
|
|
|
|
--admin-user {{ serveur_nextcloud_admin_user }}
|
|
|
|
|
--admin-pass {{ serveur_nextcloud_admin_password }}
|
|
|
|
|
--data-dir {{ serveur_nextcloud_data_dir }}
|
|
|
|
|
creates: "{{ serveur_nextcloud_racine }}/config/config.php"
|
|
|
|
|
become: true
|
|
|
|
|
become_user: "{{ serveur_nextcloud_utilisateur }}"
|
|
|
|
|
environment:
|
|
|
|
|
PGSSLMODE: "{{ serveur_nextcloud_pg_sslmode }}"
|
|
|
|
|
PGSSLROOTCERT: "{{ serveur_nextcloud_ca_racine }}"
|
|
|
|
|
no_log: true
|
|
|
|
|
when: not ansible_check_mode
|