Ejemplo de uso de una configuración compartida

Este ejemplo muestra cómo cambiar la siguiente configuración en el sistema de desarrollo, actualizar el archivo de configuración compartida config.php en el sistema de compilación e implementar la misma configuración en el sistema de producción:

  • Zona horaria
  • Unidad de peso

Esta configuración está disponible en el Administrador en Tiendas > Configuración > Configuración > General > General.

Puede utilizar el mismo procedimiento para configurar cualquier configuración no sensible y no específica del sistema en las siguientes referencias:

Antes de empezar

Antes de empezar, configure los permisos y la propiedad del sistema de archivos como se describe en Requisitos previos para los sistemas de desarrollo, compilación y producción.

Suposiciones

En este tema se proporciona un ejemplo de cómo modificar la configuración del sistema de producción. Si lo desea, puede elegir diferentes opciones de configuración.

Para los fines de este ejemplo, suponemos lo siguiente:

  • Utilice el control de código fuente Git
  • El sistema de desarrollo está disponible en un repositorio remoto Git denominado mconfig
  • Su rama de trabajo de Git se llama m2.2_deploy

Paso 1: Establezca la configuración en el sistema de desarrollo

Para establecer la zona horaria y las unidades de peso en el sistema de desarrollo:

  1. Inicie sesión en Admin.

  2. Haga clic en Tiendas > Configuración > Configuración > General > General.

  3. En el panel derecho, expanda Opciones locales.

    La siguiente figura muestra un ejemplo.

    Establecer opciones de configuración regional en el sistema de desarrollo

  4. En la lista Zona horaria, haga clic en GMT+00:00 (UTC).

  5. Desactive la casilla de verificación Usar valor del sistema junto al campo Unidad de peso.

  6. En la lista Unidad de peso, haga clic en kgs.

  7. Haga clic en Guardar configuración.

  8. Si se le solicita, vacíe la caché.

Paso 2: Actualizar la configuración compartida

Genere el archivo de configuración compartida app/etc/config.php en el sistema de desarrollo y transfiéralo mediante el control de código fuente al sistema de compilación, tal como se describe en esta sección.

Para actualizar la configuración:

  1. Inicie sesión en el sistema de desarrollo como propietario del sistema de archivos o cambie a.

  2. Cambie a la raíz de la aplicación y ejecute el comando dump.

    code language-bash
    cd <Magento root dir>
    php bin/magento app:config:dump
    

    Por ejemplo, si Commerce está instalado en /var/www/html/magento2, escriba:

    code language-bash
    cd /var/www/html/magento2
    php bin/magento app:config:dump
    
  3. Confirme que app/etc/config.php se ha actualizado.

    code language-bash
    git status
    

    Respuesta de ejemplo:

    code language-terminal
    On branch m2.2_deploy
    Changed but not updated:
      (use "git add <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
           modified:   app/etc/config.php
    
    note warning
    WARNING
    no envía cambios a los directorios generated, pub/media o pub/static al control de código fuente. Estos archivos se generan en el sistema de compilación. Es probable que el sistema de desarrollo tenga código, temas, etc., que no estén listos para usarlos en el sistema de producción.
  4. Proteja sus cambios en app/etc/config.php solo para el control de código fuente.

    code language-bash
    git add app/etc/config.php && git commit -m "Updated shared configuration" && git push mconfig m2.2_deploy
    

Paso 3: Actualizar el sistema de compilación y generar archivos

Ahora que ha confirmado los cambios en la configuración compartida en el control de código fuente, puede extraer esos cambios en el sistema de generación, compilar código y generar archivos estáticos. El último paso es extraer esos cambios en el sistema de producción. Como resultado, la configuración del sistema de producción coincidirá con el sistema de desarrollo.

Para actualizar el sistema de compilación:

  1. Inicie sesión en el sistema de generación como propietario del sistema de archivos.

  2. Cambie al directorio raíz de la aplicación.

    code language-bash
    cd <Magento root dir>
    
  3. Extraer los cambios de app/etc/config.php del control de código fuente.

    code language-bash
    git pull mconfig m2.2_deploy
    
  4. Compile el código.

    code language-bash
    bin/magento setup:di:compile
    
  5. Una vez compilado el código, genere archivos de vista estática.

    code language-bash
    bin/magento setup:static-content:deploy -f
    
  6. Comprobar los cambios en el control de código fuente.

    code language-bash
    git add -A && git commit -m "Updated files on build system" && git push mconfig m2.2_deploy
    

Paso 4: Actualizar el sistema de producción

El último paso del proceso es actualizar el sistema de producción desde el control de código fuente. Esto extrae todos los cambios realizados en los sistemas de desarrollo y compilación, lo que significa que el sistema de producción está completamente actualizado.

Para actualizar el sistema de producción:

  1. Inicie sesión en el sistema de producción como propietario del sistema de archivos.

  2. Cambie a la raíz de la aplicación y habilite el modo de mantenimiento.

    code language-bash
    cd <Magento root dir>
    
    code language-bash
    bin/magento maintenance:enable
    

    Para obtener opciones adicionales, como la posibilidad de establecer una lista blanca de direcciones IP, vea magento maintenance:enable.

  3. Detenga los trabajadores de cola en ejecución estableciendo cron_run en false en app/etc/env.php de la siguiente manera:

    code language-php?start_inline=1
    'cron_consumers_runner' => [
            'cron_run' => false
        ]
    
  4. Actualice la configuración.

    code language-bash
    bin/magento app:config:import
    
  5. Finalmente, kill cualquier proceso de consumidor activo.

    code language-bash
    kill <PID>
    

    Donde PID es el ID de proceso que se va a eliminar, por ejemplo:

    code language-bash
    kill 1234
    
  6. Extraer código del control de código fuente.

    code language-bash
    git pull mconfig m2.2_deploy
    
  7. Actualice la configuración.

    code language-bash
    bin/magento app:config:import
    
  8. Limpie la caché.

    code language-bash
    bin/magento cache:clean
    
  9. Finalizar modo de mantenimiento.

    code language-bash
    bin/magento maintenance:disable
    

Verifique los cambios en el Administrador

Para comprobar que esta configuración no se puede editar en el administrador:

  1. Inicie sesión en Admin.

  2. Haga clic en Tiendas > Configuración > Configuración > General > General.

  3. En el panel derecho, expanda Opciones locales.

    Las opciones que acaba de definir se muestran de la siguiente manera:

    Opciones de configuración no editables en el administrador

INFO
Para cambiar una configuración bloqueada en el administrador, use el comando magento config:set --lock.
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c