[[oktatas:web:deploy:deployer|< Deployer]] ====== Kezdés ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2019 * [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: http://szit.hu ===== Beszerzés ===== Letöltjük a deployer.phar állományt, majd áthelyezzük egy olyan helyre, ahol útvonalban lesz, dep néven; végül futtatási jogot adunk rá. curl -LO https://deployer.org/deployer.phar mv deployer.phar /usr/local/bin/dep chmod +x /usr/local/bin/dep Ezek után használhatjuk a **dep** parancsot. A dep parancsot önmagában vagy a dep list alparanccsal kiírja milyen lehetőségeink vannak. Webhely: * https://deployer.org/ (2022) ==== Windows ==== choco install deployer Útvonalba kell tenni: c:\Users\user\AppData\Roaming\Composer\vendor\bin Kapunk egy dep nevű parancsot: dep --version ===== Helló Világ ===== Készítenünk kell egy Deployer névteret és hivatkozni kell a recipe/common.php-re. Kezdetnek készítsünk egy feladatot teszt néven: Készítsünk egy projekt könyvtárat, majd lépjünk be. A projekt gyökérkönyvtárában hozzuk létre a deploy.php állományt a következő tartalommal: Futtassuk: dep teszt A futtatás eredménye: ➤ Executing task test Helló Világ ✔ Ok Az így létrehozott deploy.php állományt nevezzük receptnek. ===== Aktuális könyvtár ===== Készítsünk egy újabb feladatot, amely az aktuális könyvtár útvonalát kiírja. Fejlesszük tovább a deploy.php fájlt: namespace Deployer; require 'recipe/common.php'; task('teszt', function() { writeln('Helló Világ'); }); task('pwd', function() { $res = run('pwd'); writeln("Az aktuális könyvtár: $res"); }); Futtassuk a feladatot: dep pwd A futtatás eredménye: ➤ Executing task pwd Aktuális könyvtár: /home/janos/Projektek/projekt01 ✔ Ok A pwd parancs a helyi gépen fut le. ===== Kezdő recept ===== A dep init parancs létrehoz egy általános kezdő recptet: dep init set('deploy_path', '~/{{application}}'); // Tasks desc('Deploy your project'); task('deploy', [ 'deploy:info', 'deploy:prepare', 'deploy:lock', 'deploy:release', 'deploy:update_code', 'deploy:shared', 'deploy:writable', 'deploy:vendors', 'deploy:clear_paths', 'deploy:symlink', 'deploy:unlock', 'cleanup', 'success' ]); // [Optional] If deploy fails automatically unlock. after('deploy:failed', 'deploy:unlock');