deployer/recipe/deploy/rollback.php

25 lines
670 B
PHP
Raw Normal View History

2016-11-19 15:13:32 +07:00
<?php
namespace Deployer;
2020-04-25 23:00:08 +03:00
use Deployer\Exception\Exception;
2016-11-19 15:13:32 +07:00
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.
2020-10-09 01:35:42 +02:00
run("cd {{deploy_path}} && {{bin/symlink}} $releaseDir {{current_path}}");
2016-11-19 15:13:32 +07:00
// Remove release
run("rm -rf {{deploy_path}}/releases/{$releases[0]}");
2020-04-25 23:00:08 +03:00
writeln("<info>rollback</info> to {$releases[1]} release was <success>successful</success>");
2016-11-19 15:13:32 +07:00
} else {
2020-04-25 23:00:08 +03:00
throw new Exception("No more releases you can revert to.");
2016-11-19 15:13:32 +07:00
}
});