Desplegando en una Raspberry Pi Parte II (Git && Symfony)

Ahora que tenemos el entorno vamos a descargar los fuentes en la carpeta, evidentemente la carpeta donde desplegamos tiene que estar configurada en Apache, nos colocamos en la carpeta de despliegue y lanzamos un git clone, en este caso suponemos un hosting en BitBucket que nos descargará todo el código.

# git clone https://usuario@bitbucket.org/acme/coyote.git

Siguiendo los consejos de Symfony2 vamos a verificar que está todo correcto, para esto primero tenemos que instalar composer y que nos ponga al día todos los paquetes, es recomendable tener accesible el fichero composer.json para evitar tener que repetir configuraciones.

# sudo curl -sS https://getcomposer.org/installer | sudo php
# sudo php composer.phar install --no-dev --optimize-autoloader

El fichero composer.json tiene que estar accesible en la misma ruta ya que es el fichero que usará para descargar los paquetes correctos.

Puede dar un error de «ErrorException: proc_open(): fork failed – Cannot allocate memory» una forma de arreglarlo es crear una unidad swap con los siguientes comandos:

# sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
# sudo /sbin/mkswap /var/swap.1
# sudo /sbin/swapon /var/swap.1

Es recomendable que el fichero parameters.yml esté fuera del código fuente pero es necesario mantener parameters.yml.dist ya que en esta es donde se establecen los nuevos parámetros con sus valores por defecto. Después de esto los valores concretos de los parámetros se podrán modificar en parameteres.yml.

Es necesario una vez que se descarga la nueva versión desde git limpiar la cache y establecer de nuevos los permisos en la cache, para todos estos procesos se puede usar el siguiente script ubicándolo en la localización correcta.

# sudo git pull
# sudo php app/console cache:clear --env=prod
# sudo chown -R www-data:coyote app/cache

 

Desplegando en una Raspberry Pi Parte II (Git && Symfony)