Set-OPS-Public/roles/serveur_nextcloud
Daniel Allaire 04d807c78d Module Collaboration : squelette serveur_nextcloud (defaults/meta/README)
Cœur de l'offre maison-obnl (OBNL/coops). Surface de config posée (BD via
resoudre_base, Redis, OIDC Keycloak, Collabora WOPI, exposé cloud.<domaine>,
sauvegarde Tier 1). tasks/main.yml VOLONTAIREMENT absent : attend le spike
empirique (éprouver l'outil avant le rôle) — déployer + prouver OIDC/WOPI/
fichiers sur un vrai nœud avant de codifier.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 01:39:11 -04:00
..
defaults Module Collaboration : squelette serveur_nextcloud (defaults/meta/README) 2026-07-05 01:39:11 -04:00
meta Module Collaboration : squelette serveur_nextcloud (defaults/meta/README) 2026-07-05 01:39:11 -04:00
README.md Module Collaboration : squelette serveur_nextcloud (defaults/meta/README) 2026-07-05 01:39:11 -04:00

serveur_nextcloud — SQUELETTE (module Collaboration)

⚠️ Rôle en cours de construction. defaults + meta + architecture sont posés. tasks/main.yml attend le SPIKE empirique — discipline « éprouver l'outil avant le rôle » : déployer Nextcloud + Collabora à la main sur un vrai nœud, prouver SSO OIDC + WOPI + fichiers, puis codifier. Écrire les tâches à l'aveugle = les bugs de 1er déploiement qu'on veut éviter.

Rôle dans l'offre

Cœur de l'offre maison-obnl (OBNL/coops) : fichiers, documents, agendas, contacts — le remplaçant souverain de Google Workspace / Microsoft 365.

Architecture cible (motifs Set-OPS réutilisés)

  • BD PostgreSQL via resoudre_base (base nextcloud, FQDN, secret en voûte) ;
  • Cache Redis (verrous transactionnels, sessions) ;
  • SSO OIDC via Keycloak (app user_oidc, realm de l'instance = identite_realm) ;
  • Édition documents Collabora Online (rôle serveur_collabora, protocole WOPI) ;
  • TLS cert step-ca + cert-sync, exposé cloud.<domaine> derrière l'edge nginx ;
  • Sauvegarde client_backup (données + BD = Tier 1).

Spike à mener (avant les tâches)

  1. Un nœud collab (fonction à ajouter au plan + cloner).
  2. Nextcloud (source/apt) + PHP-FPM + PostgreSQL + Redis ; occ config.
  3. user_oidc branché sur Keycloak → prouver « Se connecter avec … ».
  4. Collabora CODE + WOPI ↔ Nextcloud → prouver l'édition d'un .odt.
  5. Sauvegarde/restauration prouvée. → alors on écrit tasks/main.yml.