Introduction
Rudel crée des environnements isolés WordPress temporaires dans une seule installation WordPress hôte.
Chaque environnement isolé est sélectionné par requête. La requête sélectionnée utilise les tables WordPress clonées de l'environnement et sa copie du thème actif, tandis que le cœur, les fichiers des plugins et les téléversements WordPress restent partagés avec l'hôte.
Contenu d'un environnement isolé
- une copie des tables de l'hôte, utilisateurs et métadonnées utilisateur compris, sous un préfixe de table généré
- une copie d'un thème (ainsi que de son thème parent s'il s'agit d'un thème enfant) dans le répertoire de l'environnement isolé
- les métadonnées de cycle de vie dans les tables WordPress MySQL de l'hôte
Les utilisateurs sont copiés lors de la création de l'environnement isolé. Ensuite, les utilisateurs et les mots de passe de l'environnement et de l'hôte évoluent indépendamment.
Éléments partagés
- les fichiers du cœur WordPress
- les fichiers des plugins
- les fichiers multimédias téléversés
Cette limite est intentionnelle. Rudel privilégie des environnements isolés rapides, sélectionnés par requête, pour les agents, l'assurance qualité, les expérimentations et les modifications à risque, sans nécessiter de multisite ni de seconde installation WordPress.
Comment une requête sélectionne un environnement isolé
Une requête HTTP sélectionne un environnement isolé à l'aide de l'en-tête X-Rudel-Environment ou du cookie rudel_environment ; une commande WP-CLI utilise la variable d'environnement RUDEL_ENVIRONMENT. Rudel n'authentifie pas le sélecteur : tout client qui envoie un ID d'environnement isolé valide accède à cet environnement. Voir Isolation.
Source de vérité
Les enregistrements d'exécution de Rudel se trouvent dans la base de données WordPress de l'hôte :
wp_rudel_environmentswp_rudel_worktrees
Les réglages sont stockés dans l'option rudel_config. Il n'y a ni configuration d'exécution JSON ni stockage de métadonnées SQLite.