Skip to content

Instantly share code, notes, and snippets.

@yickson
Last active December 6, 2019 15:46
Show Gist options
  • Save yickson/61dba0149214d986785f419af8b2f1f6 to your computer and use it in GitHub Desktop.
Save yickson/61dba0149214d986785f419af8b2f1f6 to your computer and use it in GitHub Desktop.
Es un archivo de pipelines para Bitbucket y habilitado para Laravel

Laravel Forge y Bitbucket

Se agrego el paquete de Wget en la construcción de la APP para que esta pueda enviar el token a Laravel Forge y hacer un despliegue siempre y cuando los testing pasen en la aplicación que es la forma correcta de desplegar una aplicación.

  • PHP 7.2
  • MySQL 5.7
  • Copiar env.pipelines a .env
  • Generar Key de env para que no de error por Cipher
  • Limpiar la caché de forma que tome el valor de Env
  • Forzar la migración de la base de datos en producción
  • Levantar el sitio web con el serve de artisan
  • Revisa todos los testing
  • Desplegar en Laravel Forge
image: php:7.2-fpm
pipelines:
default:
- step:
script:
- apt-get update && apt-get install -y git curl libmcrypt-dev default-mysql-client wget
- yes | pecl install mcrypt-1.0.1
- docker-php-ext-install pdo_mysql
- curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
- composer install
- php -r "copy('.env.pipelines', '.env');"
- php artisan key:generate
- php artisan config:cache
- php artisan migrate --force
- php artisan serve &
- sleep 5
- ./vendor/bin/phpunit
- wget https://forge.laravel.com/servers/321969/sites/904704/deploy/http?token=pH8l1fp88FApKsuSLRFlP1uVfyNJOR1DQdmrm4A1
services:
- mysql
definitions:
services:
mysql:
image: mysql:5.7
environment:
MYSQL_DATABASE: 'homestead'
MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
MYSQL_USER: 'homestead'
MYSQL_PASSWORD: 'secret'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment