Configurar DeployBot

Vamos a DigitalOcean, generamos un nuevo token y lo copiamos:

digitalocean-api-tokens

Desde DeployBot agregamos el token en settings >> Integrations:

felix-barros-integrations

Conectando un repositorio

Desde la página principal en DeployBot, nos solicitaras conectar con GitHub y elegir el repositorio de nuestro proyecto:

felix-barros-connect-a-repository

Añadir un entorno

Preparamos la configuración para el despliegue, escribimos un nombre y seleccionamos la opcional “Automatic” para subir los archivos cuando enviemos cambios a nuestro repositorio:

ejemplo-com-deployments

Añadir un nuevo servidor

Seleccionamos el servidor producción donde subirá los archivos:

ejemplo-com-deployments

6. DeployBot y DigitalOcean

Escribimos un nombre y la ruta donde realizara el despliegue en el servidor:

ejemplo-com-deployments
Agregamos el usuario que estará autorizado a subir los archivos:

ejemplo-com-deployments

Copiamos las siguientes instrucciones y las pegamos en “Run commands after new version is uploaded” que se ejecutarán al terminar de subir los archivos:

mkdir -p $SHARED/vendor
ln -s $SHARED/vendor $RELEASE/vendor

if [ ! -d "$SHARED/storage" ]; then
  mkdir -p $SHARED/storage
  mv storage/* $SHARED/storage/
  chmod -R 775 $SHARED/storage
fi

rm -rf storage
ln -s $SHARED/storage $RELEASE/storage

if [ ! -f ".env" ]; then
  mv .env.example .env
  composer install --prefer-source
  php artisan key:generate
fi

NOTA: Actualizamos el script para evitar reescribir el .env cada vez que se hace un despliegue. (07/01/2017)

En la opción “Run commands after new version becomes active” pegamos lo siguiente:

cd ../../
chown -R www-data:www-data *

Por último, desde la terminal creamos la carpeta .ssh (en el caso que no esté creada) y cambios sus permisos para realizar cambios:

$ mkdir ~/.ssh
$ chmod 0700 ~/.ssh

Desde DeployBot copiamos el código que está en “Show the commands to add our public key to your server.”, lo pegamos en nuestra terminal y presionamos enter:

ejemplo-com-deployments-121

Ir al siguiente capítulo ->