deployer/recipe/deploy/rollback.php
2016-11-19 15:13:32 +07:00

30 lines
817 B
PHP

<?php
/* (c) Anton Medvedev <anton@medv.io>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Deployer;
desc('Rollback to previous release');
task('rollback', function () {
$releases = get('releases_list');
if (isset($releases[1])) {
$releaseDir = "{{deploy_path}}/releases/{$releases[1]}";
// Symlink to old release.
run("cd {{deploy_path}} && {{bin/symlink}} $releaseDir current");
// Remove release
run("rm -rf {{deploy_path}}/releases/{$releases[0]}");
if (isVerbose()) {
writeln("Rollback to `{$releases[1]}` release was successful.");
}
} else {
writeln("<comment>No more releases you can revert to.</comment>");
}
});