Configuration Split モジュールを使用して、環境ごと(local、dev、test、prod)に異なるスプリットを作成しました。各環境でモジュールをどのように管理(有効/無効)できますか?
保持する必要がありますcore.extensions.yml
各分割で、アンインストールするモジュールをリストから削除しますか?
core.extension.yml
は、デフォルトの共有構成にのみ配置する必要があります。それはそれらのモジュールのみを保持するので、すべての異なる環境で有効になります。
$config_directories['sync'] = '../config/sync/default/shared';
このデフォルトDrupal config同期ディレクトリにはconfig_split.config_split.local.yml
も含まれており、core.extension.yml
のモジュールとは別に、local
splitがアクティブです。
uuid: abc123456-7890-abcd-906d-abc123456
langcode: en
status: false
dependencies: { }
id: local
label: Local
folder: ../config/sync/default/local
module:
browsersync: 0
devel: 0
features_ui: 0
field_ui: 0
kint: 0
link_css: 0
masquerade: 0
views_ui: 0
webprofiler: 0
theme: { }
blacklist: { }
graylist: { }
graylist_dependents: true
graylist_skip_equal: true
weight: 0
次に、各環境のsettings.local.php
内で、デフォルトに加えてどの分割をアクティブにするかを定義する必要があります。ローカルマシンでの設定方法は次のとおりです。
$config['config_split.config_split.local']['status'] = TRUE;
$config['config_split.config_split.dev']['status'] = FALSE;
$config['config_split.config_split.stage']['status'] = FALSE;
$config['config_split.config_split.prod']['status'] = FALSE;
core.extension.yml
は、異なる環境でall間で共有されるモジュールのみを保持します。