Dans notre entreprise, nous maintenons BEAUCOUP de sites Drupal, notre configuration actuelle ressemble à ceci:
- La base de code de chaque site a son propre dépôt git
- Les nouvelles fonctionnalités ne devraient pas être suffisamment stables pour la prochaine version obtenir leur propre branche de fonctionnalités dans git
Je dirais que ce qui précède est assez courant pour la plupart des sites Drupal.
Ce que nous faisons de spécial dans notre entreprise, c'est le paquet Debian des sites à déployer à l'aide d'une commande drush personnalisée - « Drush Debian Packaging ».
Drush Debian Packaging fournit une commande Drush pour construire des paquets Debian de sites Drupal comme moyen de déployer des sites Drupal sur des serveurs Debian ou Ubuntu.
Drush Debian Packaging utilise le système de crochets Drupal pour construire un paquet Debian qui correspond le mieux aux besoins de vos sites. Les fonctionnalités incluent:
- Configuration d'hôte virtuel automatique pour les serveurs Web Apache2 et Nginx
- Configuration de Cron dans /etc/cron.d
- Déploiement de code automatisé avec partitionnement des sites / par défaut / fichiers
- Configuration automatisée via l'outil de configuration de dpkg debconf
- Processus de déploiement automatisé
- gestionnaire Git VCS personnalisé pour la création de packages à partir de Git
Qu'est-ce que ça veut dire?
Pour créer une version:
cd /path/to/drupal-root
drush dh-make
Pour déployer une version, commencez par SCP le .deb sur tous les serveurs Web du cluster. Ensuite, exécutez tous les serveurs Web (vous pouvez utiliser le package linux cssh pour taper la commande sur tous les serveurs de la batterie en même temps):
sudo dpkg -i drupal-site-yoursitehere.2011.05.25-1.all.deb
Sur un serveur Web exécuté:
cd /path/to/drupal-root
sudo -u drupal-site-yoursitehere drush updb && drush fra -y && drush cron
Terminé
Bien sûr, pour restaurer cela est désormais trivial du point de vue de la base de code, installez simplement la version précédente du .deb sur tous les serveurs Web et restaurez la base de données.
Heureux de répondre à toutes les questions à ce sujet