Como evitar que se pierda el contenido del file development.services.yml

Tutoriales
reading time 5

Muchas veces cuando instalamos un nuevo módulo en nuestro proyecto vemos el siguiente mensaje por consola

mensaje por consola

lo que indica que se esta sobreescribiendo el contenido del file development.services.yml a su estado por defecto, perdiendo de esta manera todo lo que hayamos agregado. (Por ejemplo el seteo que se hace para trabajar en modo desarrollo, no caches).

Básicamente vamos a explicar como evitar que se sobreescriba el archivo development.services.yml cada vez que ejecutamos una instalación o update usando composer.

Antes de ver como solucionamos el problema veamos como solemos tener definido el file development.services.yml cuando estamos desarrollando el sitio, es decir en modo desarrollo:

parameters:
  http.response.debug_cacheability_headers: true
  twig.config:
    debug: true
    auto_reload: true
    cache: false
services:
  cache.backend.null:
    class: Drupal\Core\Cache\NullBackendFactory

Ahora si, veamos como evitamos el problema de la sobreescritura del archivo de configuracion de desarrollo. 

Simlemente abrimos el file: composer.json y en la sección de extra buscamos la entrada drupal-scaffold y agregamos lo siguiente

"drupal-scaffold": {
            "locations": {
                "web-root": "web/"
            },
            "file-mapping": {
                "[web-root]/sites/development.services.yml": false
            }
        },

Como se muestra arriba agregamos la sección file-mapping y le ponemos false al file development.services.yml

Listo, ahora nunca mas nos pisara este archivo cada vez que instalemos un nuevo módulo o trabajemos con composer install/update.