Questo è un problema non banale per cui quasi tutti hanno una risposta diversa: non esiste un modo canonico Drupal per gestire la messa in scena alle spinte di produzione. Dries Buytaert, il ragazzo che gestisce lo spettacolo Drupal, l'ha resa una delle iniziative chiave di Drupal 8 . Ovviamente, Drupal 7 è stato appena rilasciato, quindi ci vorrà un po 'prima che possa dare frutti.
Il problema può essere suddiviso in due problemi distinti:
- Configurazione della gestione temporanea (variabili, tipi di contenuto, campi, viste, ecc.)
- Contenuti di gestione temporanea (nodi, utenti, ecc.)
Il primo può essere gestito principalmente dal modulo Caratteristiche , che prenderà la configurazione del tuo sito e lo trasformerà in un modulo che puoi aggiungere alla tua installazione di Drupal: in questo modo, puoi aggiungerlo al tuo sistema di controllo della versione e non devi preoccuparti di esso essere spazzato via quando migra i tuoi contenuti.
Quest'ultimo è davvero complicato, perché su un sito attivo è probabile che il contenuto cambierà durante la produzione anche dopo aver effettuato la sincronizzazione iniziale con l'ambiente di sviluppo. Ciò impedisce la sostituzione all'ingrosso dei contenuti durante la messa in scena, come è possibile fare con la configurazione.
Inoltre, Drupal non utilizza identificatori universalmente univoci (UUID) per il contenuto: ogni volta che viene aggiunto un nodo o un utente, l'ID aumenta di uno. Quindi quello che potrebbe essere il nodo 45 sul tuo sito di sviluppo potrebbe essere il nodo 90 sul tuo sito di produzione.
Sfortunatamente, non ho un'ottima soluzione per questo: la messa in scena dei contenuti è un vero punto debole di Drupal. Quello che faccio personalmente è aggiungere contenuti solo sul sito di produzione. Se un cliente vuole vedere come appare il contenuto prima della sua pubblicazione, imposterò un clone del sito di produzione accessibile solo al cliente. Quindi, una volta approvate, le stesse modifiche vengono quindi apportate direttamente alla produzione.
C'è un'altra alternativa che viene lanciata: il modulo Deploy . Dovrebbe sfruttare i Servizi per rendere i contenuti di gestione temporanea relativamente indolori. Ma non posso garantire la sua efficacia e non ha una versione di Drupal 7.