Ola a todos, estou desenvolvendo un proxecto web relativo á promoción turística de Galicia (www.seidunsitio.com) no que cheguei a un punto complicado...
Teño varios entornos entre os que "movo" o proxecto por medio de drush e con algunha tarefa "manual" respecto a actualizacións na base de datos. De momento non estou empregando GIT (só toco eu o Drupal) nin tampouco features (entendo que é algo polo que terei que pasar si ou si e a non moito tardar).
Sitúovos... na versión en PROdución (por favor, sede conscientes de que é completamente beta e queda moitísimo traballo por diante) xa teño usuarios que se rexistran e que poden engadir comentarios, polo que hai que respetar esa información á hora de facer cambios entre entornos.
En DEV (desenvolvemento) hai moita labor de configuración de funcionalidades e en TEST outra tanta de proba de módulos ou mesmo de proba de cuestións relativas á apariencia (CSS, vistas, slideshows, etc.).
O problema co que me atopo é o seguinte; teño que permitir que usuarios colaboradores engadan contido novo ó portal, ó igual que o fan os usuarios, pero non sei se é mellor facer isto en PRO ou noutro entorno:
- Se se fai en produción, pode complicarse moito o paso entre entornos en función das novas funcionalidades que se engadan (por exemplo, engadir ou eliminar campos a un tipo de contido, xa que se modifican as táboas da BD).
- Se se fai noutro entorno, facilitaríase moito a proba de apariencia (por exemplo con vistas ou con novas seccións), podería establecerse un workflow de revisión e aprobación de contidos, pero sempre tería o problema relativo ó "content staging" (engado unhas webs con referencia ó problema -> http://dominiquedecooman.com/blog/drupal-staging-problem ou http://2012.badcamp.net/program/sessions/content-staging-drupal-actually...).
Descoñezo se a miña falta de experiencia en proxectos con Drupal me está facendo complicarme demasiado ou se realmente todos os proxectos dunha determinada complexidade chegan obrigatoriamente a ese "content staging problem". Se cadra son eu, que vexo complicacións onde non as hai.
Busco alguén que xa pasara por esta situación, que me poida orientar ou mesmo colaborar ou, chegado o caso, que me poida dirixir a algunha empresa que traballe directamente con proxectos grandes e que teña experiencia empregando features, GIT, UUID, services, deploy, etc.
Se necesitades máis información ou que vos aclare dúbidas, non tedes máis que contactar. Grazas de antemán.

Comments
Hola Ero!
Pues yo estube también dandole vueltas a este tema.. hay varias soluciones, aunque ninguna me convence del todo.
Ante todo esto, un nuevo concepto, que parece que está funcionando bastante bien:
Imaginate 3 entornos:
- dev -> test -> pro
La idea consiste en que el código fluya entre entornos hacia la derecha, mientras que la base de datos, fluya hacia la izquierda.
Dicho de otra forma, publica el contenido en producción. Y haz tus cambios en configuraciones, vistas, estructura, css... en dev.
Y sí, deberás pasar tus configuraciones, vistas, estructura, etc, a código mediante features y strongarm. De esta manera, podrás pisar tu base de datos de testing con la base de datos de pro, sin perder esa vista que generaste en testing porque la tienes en un feature (que no deja de ser un módulo).
Por último, para cambios en base de datos DE TABLAS CUSTOM, hook_update_N
https://api.drupal.org/api/drupal/modules!system!system.api.php/function/hook_update_N/7
Te recomiendo que veas este vídeo (o que lo vuelvas a ver) de la drupalcamp de 2012:
http://2012.drupalcamp.es/es/sesiones/arquitectura-de-proyectos-drupal-78
Un saludo
Completamente de acordo contigo, David
Vexo que estivemos mirando máis ou menos as mismas cousas. Moitas gracias pola túa opinión e por explicalo de forma tan clara.
A ver se alguén con máis experiencia no tema (varios proxectos para poder aportarnos feedback ou problemas que tiveran que solventar) nos pode ilustrar coa súa sabiduría.
En canto ó vídeo da Drupal Camp de Madrid do 2012, xa o teño gastado... ;) A pena é que se centra sobre todo na parte de código.
Ó final de todo, na ronda de preguntas, alguén do público lle pregunta por esta cuestión do "content staging" e el fai referencia ós módulos UUID e Deploy, pero sen profundizar...
Enseguida di que el non é a mellor persoa para falar de mover contido entre entornos.
Un saúdo!