Comment les personnes manipulant le système de gestion de contenu mise en scène de la production?

StackOverflow https://stackoverflow.com/questions/1535580

Question

J'ai tremper mes pieds dans les technologies de développement web pour le plaisir (ya, je devrais sortir plus), et je suis un peu choqué par le manque de soutien clair pour la mise en scène de production (développement, tests, les performances et la production environnements). En fait, le soutien est pas le mot; Les systèmes de gestion de contenu semblent travailler activement contre les efforts pour permettre une mise en scène propre.

Actuellement, je suis en utilisant Drupal. J'ai eu beaucoup de mal à trouver comment la communauté résout ce problème. La plupart des messages que j'ai vu recommander de reproduire les étapes effectuées dans le développement du système de production (la lecture de ce fait raccourci ma vie un petit peu). J'entends aussi de pousser les données de production vers les développeurs afin qu'ils puissent ajouter des fonctionnalités supplémentaires. Cela ne peut pas être la voie à suivre, si le client ne veut pas que vous tirant leurs données à votre environnement de développement?

Alors enfin ma question:

Comment gérez-vous les problèmes réels de mise en scène de la production mondiale d'un CMS?

Je viens d'un milieu où pousser à la production se sent comme envoyer des gens à la lune, donc je peux avoir besoin de se détendre un peu. Cependant, je suis toujours intéressé les réponses qui impliquent le contrôle des sources, permettent de rollback de production et les essais.

Était-ce utile?

La solution

J'ai répondu à une question sur les stratégies de déploiement DB.

Il y a aussi un question sur le déploiement de code.

Là où je travaille, nous travaillons sur un assez grand déploiement de Drupal. Nous avons à peu près la configuration suivante.

Tous les développeurs ont un bac à sable local (Drupal + DB). Le code commettras une branche qui est partagée entre tous les autres développeurs (il y a environ 15 d'entre nous). Cela inclut les changements de configuration qui sont effectuées par des fonctions de mise à jour.

Lorsque les développeurs font une place svn, ils courent également update.php pour effectuer les modifications de configuration localement.

Nous avons un système de test de sprint qui court simpletest et peut être utilisé pour les tests utilisateurs.

A la fin d'un sprint (nous utilisons Scrum), on fusionne la branche dans le tronc, et effectuer des tests sur ce sujet.

Nous étiquetons alors cela comme une libération et déployons pour vivre (en utilisant Capistrano), enfin courir sur update.php en direct pour appliquer les modifications de configuration à vivre.

Tous les correctifs d'urgence sont déployés à partir du tronc à vivre comme une version de point 7.1, etc.

Si vous voulez plus de détails alors s'il vous plaît laisser un commentaire.

Autres conseils

Après avoir investi quelques semaines obtenir sur la courbe d'apprentissage de Drupal, la « configuration trop est stockée dans la DB » problème est très déconcertant si vous construisez un site de toute complexité.

Jetez un coup d'oeil au travail développement Seed fait pour contourner ce problème. Ils mènent le développement du contexte , Caractéristiques et modules espaces qui travaillent ensemble pour stocker les données de configuration en modules (de l'extérieur de la base de données) de manière à pouvoir être versionnées avec le code.

  

Actuellement, je suis en utilisant Drupal. J'ai eu beaucoup de mal à trouver comment la communauté résout ce problème.

Il est l'une des faiblesses de Drupal; Il ne traite pas vraiment correctement cette question. Il est particulièrement difficile de trier parce qu'une grande partie de la configuration de Drupal réside dans la base de données.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top