Aller au contenu principal

Mautic Common — Configuration applicative partagée

Mautic_Common est la couche applicative partagée de Mautic. Elle n'est pas déployée seule ; elle fournit la configuration propre à Mautic sur laquelle s'appuient à la fois Mautic_GKE et Mautic_CloudRun, afin que les deux variantes de plateforme se comportent de façon identique là où cela compte. Les utilisateurs finaux ne configurent jamais cette couche directement — elle n'a aucune entrée propre dans l'interface de déploiement — mais comprendre ce qu'elle fournit explique les valeurs par défaut que vous voyez dans la documentation des plateformes.

Pour l'infrastructure qui provisionne et exécute réellement Mautic, consultez les guides de plateforme (Mautic_GKE, Mautic_CloudRun) et les guides des socles (App_GKE, App_CloudRun, App_Common).


1. Ce que fournit cette couche​

DomaineFourni par Mautic_CommonOù cela apparaît
Identifiant administrateurGénère le mot de passe administrateur de Mautic et le stocke dans Secret ManagerÀ récupérer via Secret Manager (voir ci-dessous)
Image de conteneurFixe l'image officielle de Mautic (PHP/Apache) et le build qui l'étendSortie container_image du déploiement de plateforme
Moteur de base de donnéesImpose Cloud SQL for MySQL 8.0 comme seul moteur pris en charge§Database dans les guides de plateforme
Initialisation de la base de donnéesDéfinit le job du premier déploiement qui crée la base de données, l'utilisateur et les droitsSortie initialization_jobs
Stockage objetDéclare le bucket Cloud Storage des médiasSortie storage_buckets
Paramètres principauxDéfinit l'environnement Mautic de base (identité de l'administrateur, identité de l'expéditeur, migrations au démarrage, proxys de confiance)Comportement de l'application dans les guides de plateforme
Contrôles de santéFournit le comportement par défaut des sondes de démarrage et de vivacité, y compris l'ajustement vers une sonde TCP sur Cloud Run§Observability dans les guides de plateforme

2. Identifiant administrateur dans Secret Manager​

Le mot de passe de l'administrateur Mautic est généré automatiquement et stocké sous forme de secret Secret Manager — il n'est jamais défini en clair. Récupérez-le après le déploiement :

# The secret name follows the deployment's resource prefix; list and read it:
gcloud secrets list --project "$PROJECT" --filter="name~admin"
gcloud secrets versions access latest --secret=<admin-password-secret> --project "$PROJECT"

Le mot de passe de la base de données est généré et géré séparément par le socle ; le nom de son secret figure dans les sorties du déploiement de plateforme (database_password_secret). Voir App_Common pour le modèle partagé des secrets et de Workload Identity.


3. Moteur de base de données et amorçage​

Mautic nécessite MySQL 8.0 ; le moteur est fixe et PostgreSQL n'est pas pris en charge. Lors du premier déploiement, un job ponctuel se connecte à Cloud SQL via l'Auth Proxy et, de façon idempotente :

  1. crée la base de données Mautic (si elle n'existe pas),
  2. crée l'utilisateur applicatif avec le mot de passe généré,
  3. accorde à l'utilisateur tous les privilèges sur cette base de données.

Le job peut être relancé sans risque. Inspectez directement la base de données avec :

gcloud sql connect <instance-name> --user=<db-user> --project "$PROJECT"

Les noms de l'instance, de la base de données et de l'utilisateur figurent dans les sorties du déploiement de plateforme.


4. Paramètres principaux de l'application​

Mautic_Common met en place l'environnement Mautic de base afin que l'application démarre correctement dès le premier lancement :

  • Identité de l'administrateur — l'identifiant et l'adresse e-mail de l'administrateur initial (configurables dans le groupe 23 du module de plateforme).
  • Identité de l'expéditeur — le nom et l'adresse d'expédition des e-mails sortants (groupe 23). Utilisez un domaine doté d'enregistrements SPF/DKIM valides, sinon les e-mails de campagne seront rejetés ou marqués comme spam.
  • Migrations au démarrage — Mautic exécute ses migrations de base de données à chaque démarrage d'instance, de sorte que les montées de version appliquent automatiquement les modifications de schéma.
  • Proxys de confiance — Mautic est informé qu'il se trouve derrière un proxy, afin que les IP des clients et le schéma HTTPS soient respectés.

Ajustements propres à chaque plateforme gérés ici :

  • Cloud Run fixe en outre l'URL publique du service et définit HTTPS=on afin que Mautic génère des liens absolus corrects et évite les boucles de redirection HTTP→HTTPS derrière le frontal de Cloud Run.

5. Comportement des sondes de santé​

La configuration de sonde de base de Mautic_Common cible la page de connexion de Mautic, mais les deux modules de variante, Mautic_CloudRun et Mautic_GKE, la détournent de ce chemin — pour deux raisons différentes :

  • Cloud Run remplace la sonde de démarrage par une sonde TCP et la sonde de vivacité par une sonde HTTP /healthz, car le trafic de contrôle de santé de Cloud Run arrive en HTTP simple et Apache répond par une redirection 301 vers HTTPS dès que HTTPS=on/MAUTIC_SITE_URL sont définis ; une sonde HTTP ciblant /index.php/s/login n'obtiendrait donc jamais de 200. Une sonde TCP vérifie seulement que le port est ouvert et n'est pas affectée par la redirection ; /healthz est un fichier statique servi sans redirection.
  • GKE remplace lui aussi les sondes de démarrage et de vivacité par HTTP /healthz, pour une autre raison : le trafic kube-probe interne au cluster atteint directement le conteneur (sans redirection), mais /index.php/s/login renvoie lui-même HTTP 500 (la redirection vers l'installateur) tant que la base de données n'est pas configurée, si bien qu'une sonde sur la page de connexion échoue pendant la configuration de la base au premier démarrage, indépendamment des redirections. /healthz renvoie 200 quel que soit l'état de l'application.

6. Stockage d'objets​

Un bucket Cloud Storage dédié aux médias est déclaré ici et provisionné par le socle, qui accorde également l'accès au compte de service de la charge de travail. Associé au volume Filestore (NFS) partagé, il offre à Mautic un stockage durable des médias, cohérent entre toutes les instances. Listez-le avec :

gcloud storage buckets list --project "$PROJECT"

Pour la configuration de Mautic destinée aux utilisateurs (variables par groupe, sorties et exploration de chaque service depuis la console et la CLI), consultez les guides de plateforme : Mautic_GKE et Mautic_CloudRun.

Need RAD to do something it does not do yet? Request it on the roadmap, or vote on what is already there.