drush cex --skip-modules
se eliminó a favor de config_split como se explica en este número, por lo que las soluciones aquí basadas en drush no me han funcionado.
Aquí está la solución basada en la solución Duncanmoo usando el módulo config_exclude
1. Instale config_exclude usando Composer require --dev y configúrelo
$ composer require --dev drupal/config_exclude
$ drush en config_exclude -y
$ nano sites/default/setting.php
permitir que settings.php se use en su entorno de desarrollo local
if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
include $app_root . '/' . $site_path . '/settings.local.php';
}
Agregue configuraciones config_exclude en el archivo local
$ nano sites/default/setting.local.php
Aquí hay algunas configuraciones de muestra
$settings['config_exclude_modules'] = [
'devel',
'config_exclude',
'config_filter',
...
'stage_file_proxy',
];
NOTA 1: config_filter es una dependencia config_exclude, por lo que si no necesita producción, puede excluirla arriba
NOTA2: El settings.local.php
no es un requisito. Depende de si es controlado por su VCS o no.
2. Compositor requiere --dev
Al habilitar un módulo que es puramente para desarrollo, use el indicador --dev:
$ composer require --dev drupal/devel
Esto da como resultado que esas dependencias se agreguen al archivo composer.json en require-dev:
...
"require-dev": {
"drupal/twig_xdebug": "^1.0",
"drupal/devel": "^1.0@RC"
}
}
Entonces, si instala el sitio SIN sus módulos de desarrollo, use:
$ composer install --no-dev
NOTA: En sus entornos de producción y producción, siempre debe hacer --no-dev
3. use drush cex como lo usa normalmente
$ drush cex
no exportará ninguna de las configuraciones de los módulos excluidos
NOTA: He notado que la configuración de core.extension parece haber sido modificada después de ejecutar el comando anterior, pero el .yml correspondiente nunca se escribe en el disco duro (incluso después de confirmar will be deleted and replaced with the active config
), por lo que no hay nada que comprometer, supongo que depende de partes internas del módulo config_exclude
drush
aceptable? Me enteré el otro día sobredrush config-export --skip-modules=devel
. Puede haber algo similar sin usar drush, pero no lo sé.