9.9.2. Config Split, Config Ignore. Erstellen verschiedener Konfigurationen für unterschiedliche Instanzen.
Sehr oft muss der Zugriff auf Drittanbieterdienste auf Entwicklungs- und Live-Instanzen unterschiedlich sein. Um dies mit Hilfe von Konfigurationen zu realisieren, sollten Sie das Modul Configuration Split verwenden:
https://www.drupal.org/project/config_split
Nachdem Sie das Modul Config Split aktiviert haben, können Sie Ordner für die einzelnen Instanzen festlegen. Gehen wir zur Einstellungsseite des Configuration Split Moduls:
/admin/config/development/configuration/config-split
Nun fügen wir Split-Einstellungen für lokale, Entwicklungs- und Live-Instanzen hinzu.
Der Pfad zum Ordner kann sofort angegeben werden, wenn der Pfad auf allen Instanzen gleich ist. Sie müssen auch das Kontrollkästchen „Aktiv“ deaktivieren, da wir die jeweilige Konfiguration in der settings.php jeder Instanz separat aktivieren werden.
Nachdem wir die Config Split Einstellungen hinzugefügt haben, müssen wir die Ordner config/local, config/dev und config/live anlegen:
Nun aktivieren wir die lokale Konfiguration auf unserer lokalen Instanz:
$config['config_split.config_split.local']['status'] = TRUE;
Für Entwicklungs- und Live-Instanzen fügen Sie entsprechende Zeilen in die settings.php ein:
// Dev
$config['config_split.config_split.dev']['status'] = TRUE;
// Live
$config['config_split.config_split.live']['status'] = TRUE;
Um eine Konfiguration für eine bestimmte Instanz zu überschreiben, legen Sie einfach die benötigte Konfigurationsdatei in den entsprechenden Ordner ab. Zum Beispiel können Sie den Seitennamen für die lokale Seite getrennt anpassen:
/config/local/system.site.yml:
uuid: e6754486-60a0-48ad-b2d1-84a9b46926f4
name: 'DrupalBook Lessons - Local Site'
mail: levmyshkin89@gmail.com
slogan: ''
page:
403: ''
404: ''
front: /node
admin_compact_mode: false
weight_select_max: 100
langcode: en
default_langcode: en
_core:
default_config_hash: yXadRE77Va-G6dxhd2kPYapAvbnSvTF6hO4oXiOEynI
Auf der Seite „Konfigurationssynchronisierung“ sehen Sie nun die überschriebenen Konfigurationen:
Sie können somit unterschiedliche Zugänge für SMTP, Salesforce, Zahlungssysteme und andere Dienste auf verschiedenen Instanzen definieren.
Config Ignore
Wenn Sie nicht möchten, dass z.B. Ihre SMTP-Zugangsdaten in den Konfigurationen liegen und zu Git hinzugefügt werden, können Sie die SMTP-Einstellungen mit dem Modul Configuration Ignore aus der Konfigurationsverwaltung ausschließen:
https://www.drupal.org/project/config_ignore
Wir haben das Modul Config Split genutzt, um verschiedene Einstellungen für den Seitennamen zu machen. Ebenso können wir die system.site-Konfiguration zum Ignorieren hinzufügen. Gehen Sie zur Einstellungsseite von Config Ignore:
/admin/config/development/configuration/ignore
Fügen Sie dort die system.site-Konfiguration zur Ignorierliste hinzu:
Auf der Seite „Konfigurationssynchronisierung“ werden die aktualisierten und ignorierten Konfigurationen jetzt in separaten Bereichen angezeigt: