Gestione della configurazione del tuo sito
Drupal memorizza i dati di configurazione del sito in modo coerente — dall’elenco dei moduli abilitati ai tipi di contenuto, vocabolari di tassonomia, campi e viste.
Non è consigliato apportare modifiche alla configurazione su un sito in produzione. Il sistema è progettato in modo che sia facile utilizzare la configurazione corrente, testare localmente le modifiche, esportarle in file e distribuirle nell’ambiente di produzione. La configurazione del tuo sito può essere salvata come parte della tua base di codice e integrata con il controllo di versione.
Per impostazione predefinita, la configurazione “attiva” è memorizzata nel database (tabella “config”). Questo per motivi di prestazioni e sicurezza. Si tratta della configurazione completa dell’intero sito al momento attuale. La configurazione può essere esportata e importata come file YAML, sia completamente che come singolo frammento di configurazione, utilizzando i comandi di configurazione di Drush e/o della Drupal Console oppure tramite il Configuration Manager. (Vedi i dettagli di seguito.)
L’esportazione e l’importazione delle modifiche di configurazione tra installazioni di Drupal in diversi ambienti, come Sviluppo, Staging e Produzione, ti consentono di apportare e testare le modifiche in un contesto separato dall’ambiente reale del tuo sito.
Questo ti consente di distribuire la configurazione da un ambiente all’altro (come misura di sicurezza Drupal verifica che si tratti dello stesso sito prima dell’importazione, confrontando il suo UUID).
File di configurazione del modulo e del tema
La configurazione predefinita fornita con moduli, distribuzioni e temi viene importata nell’archivio di configurazione attivo quando le estensioni vengono abilitate. La configurazione predefinita di un’estensione si trova nella directory config/install.
Come importare, esportare e sincronizzare
Con il modulo principale Configuration Manager puoi importare, esportare e sincronizzare la configurazione del sito tramite Gestione > Configurazione > Sviluppo > Sincronizzazione configurazione (admin/config/development/configuration). Puoi visualizzare le modifiche prima di importarle.
È anche possibile importare o esportare un singolo elemento utilizzando il flusso di lavoro copia/incolla. Questo è utile, ad esempio, se vuoi semplicemente spostare una vista creata da un ambiente a un altro.
Oppure puoi esportare l’intera configurazione del sito come file YAML in un archivio compresso tar.gz. Questo funziona solo se stai trasferendo la configurazione tra due copie dello stesso sito (ad esempio dev e production), motivo per cui gli UUID dei siti devono corrispondere.
Per controllare l’UUID del sito tramite CLI:
- Utilizzando Drush
drush cget system.site
- Utilizzando Drupal Console
drupal debug:config system.site
Esempi di flussi di lavoro di sincronizzazione completa:
- Utilizzando l’interfaccia utente di Drupal
- Utilizzando Drush
- Documentazione dei comandi di configurazione Drush
Dopo la sincronizzazione, verranno applicate tutte le modifiche, come l’attivazione di nuovi moduli, campi o tipi di contenuto. In breve, tutte le modifiche alla configurazione effettuate sul sito di sviluppo dovrebbero ora essere operative in produzione.
Ulteriori informazioni
Se desideri maggiori dettagli sul sistema di gestione della configurazione in Drupal 8, puoi consultare le pagine di riferimento dell’API di configurazione.
Cosa fare e cosa evitare
DA FARE:
È fortemente consigliato eseguire un database-dump prima di ogni sincronizzazione tra le directory di staging e attive. Un database-dump “può salvarti la vita” in caso di necessità di rollback.
DA NON FARE:
Non tentare di modificare la configurazione attiva del tuo sito modificando i file nella directory config/install di un modulo.
Questo NON funzionerà, perché Drupal leggerà da questa directory solo al momento dell’installazione del modulo.
Per modificare la configurazione “dal vivo”, utilizza drush config-edit o drupal config:edit