Set-OPS-Public/roles/serveur_nextcloud/tasks/php.yml
Daniel Allaire 79d0529686 serveur_nextcloud : rôle codifié depuis le spike (13 gotchas encodés)
Maison numérique souveraine (offres maison-obnl + cabinet). Tâches découpées :
paquets → php (512M + TLS PG) → install (occ, PG verify-full) → exposition
(vhost .mjs) → configure (overwrite/redis/anti-SSRF/import CA) → OIDC user_oidc
→ Collabora richdocuments (WOPI split URL) → thème Alliance (ciel étoilé).

Chaque réglage encode un piège prouvé sur collab-01 : imagick Debian 13,
PGSSLMODE dans php-fpm, MIME .mjs, allow_local_remote_servers (SSRF), import
root step-ca, memory_limit 512M, public_wopi_url après activate-config…

Version épinglée (robustesse). ansible-lint profil production : 0 échec.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 15:00:39 -04:00

23 lines
983 B
YAML

---
# Gotcha spike : memory_limit 128M (defaut Debian) => pages Vue blanches. 512M requis.
- name: Deployer le tuning PHP recommande (memory_limit, opcache, upload)
ansible.builtin.template:
src: 99-nextcloud.ini.j2
dest: "/etc/php/{{ serveur_nextcloud_php_version }}/fpm/conf.d/99-setops-nextcloud.ini"
owner: root
group: root
mode: "0644"
notify: Recharger php-fpm nextcloud
# Gotcha spike : PDO pgsql (libpq) lit PGSSLMODE/PGSSLROOTCERT dans l'env de php-fpm.
- name: Injecter l'env TLS PostgreSQL dans le pool php-fpm
ansible.builtin.blockinfile:
path: "/etc/php/{{ serveur_nextcloud_php_version }}/fpm/pool.d/www.conf"
marker: "; {mark} SETOPS nextcloud TLS PostgreSQL"
block: |
env[PGSSLMODE] = {{ serveur_nextcloud_pg_sslmode }}
env[PGSSLROOTCERT] = {{ serveur_nextcloud_ca_racine }}
notify: Recharger php-fpm nextcloud
- name: Appliquer le rechargement php-fpm avant l'installation
ansible.builtin.meta: flush_handlers