Core-Admin Variable Push para gestor de alojamientos -- importado de variables de entorno


#1

Índice

1. Introducción

Core-Admin Variable Push es una característica usada en conjunto con el gestor de alojamientos (#WebhostnigManagement) que permite al usuario de la web poder importar las declaraciones de variables de entorno localizadas en su .bash_profile dentro de la configuración Apache2 como declaraciones SetEnv (realizándose una conversión en el proceso export a SetEnv):

De esta manera:

  • Se pueden automatizar el deployment (push) importando e integrando las variables de desarrollo que generan entornos como Symphony, Cake, etc.

  • Se asegura que la configuración de variables es consistente: lo que hay en el .bash_profile se encuentra en la configuración Apache2.

  • Evita tener que activar la opción de configuración personalizada (que deshabilita muchas opciones de Core-Admin).

2. Qué soluciona Core-Admin Variable Push

Algunos de los problemas de automatizar el despliegue de código son:

  • La configuración de variables de entorno que indicarán que estamos en producción (por ejemplo APP_ENV=prod)

  • La mezcla de estas declaraciones con otras declaraciones o cómo se relacionan con motores de ejecución (php-fpm) o cómo interaccionan con Apache2 Mod-Rewrite

Más concretamente, Core-Admin Variable Push resuelve:

  • No tener que editar el .htaccess para incluir las variables

  • Es compatible con todos los métodos de ejecución (php-fpm, itk, etc)

  • Resuelve el problema REDIRECT_ del ModRewrite de manera sólida sin soluciones exóticas dependientes del contexto y otras variables que no se controlan fácilmente.

  • Para situaciones con muchas variables, facilita asegurar que todas las variables serán correctamente importadas y sincronizadas desde un único sitio (el .bash_profile habitualmente subido con un acceso ssh).

3. Cómo activarlo y cómo funciona

  1. Se asumen que el usuario que sube las variables tiene un acceso ssh o algún método para dejar el .bash_profile actualizado con las variables deseadas en el home de la web para actualizar (habitualmente /var/webs/dominio-de-la-web.com/.bash_profile).

  2. Ahora active la opción Core-Admin Variable Push accediendo a la opción enable_variable_push del sitio:

  3. Una vez hecho el punto anterior ya se habrán importado las variables declaradas. Ahora, cada vez que quiera reimportar, ejecute el siguiente comando con el usuario de la web:

    > /usr/sbin/crad-exports-conversor.py .bash_profile --push-variables

4. Cómo reimportar las variables manualmente desde el panel

Para eso, simplemente vuelva a editar la opción enable_variable_push como si fuera la primera vez, dejándola activada. Esto forzará un reimportado.

5. Cómo comprobar que las variables se están importando correctamente

Dispones de varias maneras de hacerlo:

  1. Puedes ejecutar el comando siguiente para mostrar las variables que serán importadas en el maestro del apache2:

    > crad-exports-conversor.pyc .bash_profile -o .htaccess
    # esto te mostrará las variables, su contenido y todo en formato Apache2 SetEnv

  2. Puedes también revisar directamente la declaración generada por core-admin para todo el sitio. Para ello necesitarás acceso root. Tras esto ejecuta:

    > less /etc/apache2/sites-enabled/dominio-del-sitio.com.conf

  3. Por último, también puedes usar el propio php para ver las variables. Crea un fichero variables.php en la raíz del sitio y visítalo después de añadir el siguiente contenido:

    <?php

    foreach ($_SERVER as $key => $value) {
    echo “$key => $value<br>”;
    }