https://deployer.org/docs/getting-started.html
curl -LO https://deployer.org/deployer.phar mv deployer.phar /usr/local/bin/dep chmod +x /usr/local/bin/dep
otras opciones
https://deployer.org/docs/installation.html
cd myproyecto dep init
Es importante revisar que estemos llamando al recipe de Laravel.
require 'recipe/laravel.php';
Recordemos cambiar el nombre de nuestra aplicación y confirmar que nuestro repositorio git es el correcto.
// Project name set('application', 'meetup'); // Project repository set('repository', 'git@github.com:victoryoalli/meetup-deployer.git');
Agregar las sentencias de ssh_type y ssh_multiplexing para asegurar nuestra conexión vía ssh
// [Optional] Allocate tty for git clone. Default value is false. set('git_tty', true); set('ssh_type', 'native'); set('ssh_multiplexing', true);
Configuramos el host que vamos a actualizar y asignamos el usuario con el que nos conectaremos.
// Hosts host('meetup.vientodigital.dev') ->user('meetup') ->set('deploy_path', '/home/meetup/www') ->set('branch', 'main');
Un ejemplo que yo utilizo para recordarme de compilar y actualizar los assets en modo de producción.
// Tasks task('ask', function () { if (!askConfirmation('Did you commit and compile your assets for production?')) { die('Ok, do that first then'); } }); before('deploy', 'ask');
Este es un ejemplo para ejecutar un comando al terminar.
task('php:reload', function () { run('sudo service php7.4-fpm reload'); }); after('deploy:unlock', 'php:reload');
dep deploy