¿Cómo están manejando las personas la puesta en escena de la producción del sistema de gestión de contenido?


He estado sumergiéndome en las tecnologías de desarrollo web por diversión (ya, debería salir más), y estoy un poco sorprendido por la falta de un soporte claro para la puesta en escena de producción (es decir, desarrollo, pruebas, rendimiento y entornos de producción). En realidad, el apoyo no es la palabra; los Sistemas de Gestión de Contenido parecen trabajar activamente en contra de los esfuerzos para permitir una puesta en escena limpia.

Actualmente estoy usando Drupal. Me ha costado mucho encontrar cómo la comunidad resuelve este problema. Mas de las publicaciones que he visto recomiendo reproducir los pasos realizados en el desarrollo en el sistema de producción (leer esto realmente acortó mi vida un poco). También he oído hablar de enviar los datos de producción a los desarrolladores para que puedan agregar características incrementales. Este no puede ser el camino a seguir, ¿qué pasa si el cliente no quiere que tire de sus datos de nuevo a su entorno de desarrollo?

Así que finalmente mi pregunta:

¿Cómo está gestionando los problemas de puesta en escena de la producción del mundo real para un ¿CMS?

Vengo de un entorno en el que empujar a la producción se siente como enviar gente a la luna, por lo que puede que necesite relajarme un poco. Sin embargo, todavía me interesan las respuestas que involucran el control de código fuente, permiten la reversión de la producción y las pruebas.

Author: reccles, 2009-10-08

3 answers

He respondido a una pregunta sobre estrategias de despliegue de bases de datos.

También hay una pregunta sobre el despliegue de código.

Donde trabajo estamos trabajando en un despliegue de Drupal bastante grande. Tenemos aproximadamente la siguiente configuración.

Todos los desarrolladores tienen un sandbox local (Drupal + DB). El código de confirmación a una rama que se comparte entre todos los otros desarrolladores (hay alrededor de 15 de nosotros). Esto incluye los cambios de configuración que son realizados por las funciones de actualización.

Cuando los desarrolladores hacen un svn up, también ejecutan update.php para realizar cualquier cambio de configuración localmente.

Tenemos un sistema de pruebas sprint que se ejecuta simpletest y se puede utilizar para las pruebas de usuario.

Al final de un sprint (usamos scrum), fusionamos la rama en trunk, y ejecutamos pruebas en esto.

Luego etiquetamos esto como una versión y lo implementamos en vivo (usando Capistrano), finalmente ejecutamos update.php on live para aplicar cambios de configuración a live.

Cualquier emergencia las correcciones se implementan desde trunk a live como dot release 7.1, etc.

Si desea más detalles, por favor deje un comentario.

 10
Author: Jeremy French,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:17:49

Después de invertir unas semanas para superar la curva de aprendizaje de Drupal, el problema de "demasiada configuración se almacena en la base de datos" es muy desconcertante si está construyendo un sitio de cualquier complejidad.

Eche un vistazo al trabajo que Development Seed está haciendo para solucionar este problema. Están liderando el desarrollo del Contexto , Características , y Espacios módulos que trabajan juntos para almacenar datos de configuración en módulos (fuera de la base de datos) para que se puede versionar con el código.

 7
Author: flamingLogos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-10-09 11:01:19

Actualmente estoy usando Drupal. Me ha costado mucho encontrar cómo la comunidad resuelve este problema.

Es una de las debilidades de Drupal; realmente no trata correctamente este asunto. Es particularmente difícil de resolver porque una gran parte de la configuración de Drupal reside en la base de datos.

 2
Author: troelskn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-10-08 06:36:09