From 729d278eaa2310fefc34ee16f51050777a18d12b Mon Sep 17 00:00:00 2001 From: Timon de Groot Date: Tue, 3 Jan 2023 17:40:00 +0100 Subject: [PATCH] Remove roles selector from builtin tasks This was causing task with a certain selector always running. In the future, when we reiterate on Hypernode Deploy for clusters, we'll see what we really need and what's best to do. For now, it doesn't make sense to keep this in here. --- src/DeployRunner.php | 20 +++---------------- src/Deployer/Task/After/AfterTaskGlobal.php | 8 ++------ src/Deployer/Task/After/CachetoolTask.php | 13 ++++-------- src/Deployer/Task/Deploy/CopyTask.php | 6 ++---- src/Deployer/Task/Deploy/DeployTask.php | 6 ++---- src/Deployer/Task/Deploy/DeployTaskGlobal.php | 4 +--- src/Deployer/Task/Deploy/FinalizeTask.php | 6 ++---- src/Deployer/Task/Deploy/LinkTask.php | 6 ++---- src/Deployer/Task/Deploy/UploadTask.php | 6 ++---- 9 files changed, 20 insertions(+), 55 deletions(-) diff --git a/src/DeployRunner.php b/src/DeployRunner.php index fa20fd0..599f13f 100644 --- a/src/DeployRunner.php +++ b/src/DeployRunner.php @@ -14,8 +14,6 @@ use Hypernode\Deploy\Exception\InvalidConfigurationException; use Hypernode\Deploy\Exception\TimeoutException; use Hypernode\Deploy\Exception\ValidationException; -use Hypernode\DeployConfiguration\Configurable\ServerRoleConfigurableInterface; -use Hypernode\DeployConfiguration\Configurable\StageConfigurableInterface; use Hypernode\DeployConfiguration\Configuration; use Hypernode\DeployConfiguration\Server; use Hypernode\DeployConfiguration\Stage; @@ -135,7 +133,7 @@ private function prepare(bool $configureBuildStage, bool $configureServers, stri } /** - * Configure deploy tasks based on specific configuration in Hipex deploy configuration + * Configure deploy tasks based on specific configuration in Hypernode Deploy configuration * @throws InvalidConfigurationException */ private function initializeConfigurableTask(ConfigurableTaskInterface $task, Configuration $mainConfig): void @@ -146,20 +144,8 @@ private function initializeConfigurableTask(ConfigurableTaskInterface $task, Con ); foreach ($configurations as $taskConfig) { - if (!$task->supports($taskConfig)) { - continue; - } - - $deployerTask = $task->configureWithTaskConfig($taskConfig); - if ($deployerTask) { - if ($taskConfig instanceof StageConfigurableInterface && $taskConfig->getStage()) { - $deployerTask->select("stage={$taskConfig->getStage()->getName()}"); - } - - if ($taskConfig instanceof ServerRoleConfigurableInterface && $taskConfig->getServerRoles()) { - $roles = implode("&", $taskConfig->getServerRoles()); - $deployerTask->select("roles={$roles}"); - } + if ($task->supports($taskConfig)) { + $task->configureWithTaskConfig($taskConfig); } } } diff --git a/src/Deployer/Task/After/AfterTaskGlobal.php b/src/Deployer/Task/After/AfterTaskGlobal.php index b000649..3655425 100644 --- a/src/Deployer/Task/After/AfterTaskGlobal.php +++ b/src/Deployer/Task/After/AfterTaskGlobal.php @@ -2,10 +2,9 @@ namespace Hypernode\Deploy\Deployer\Task\After; -use Hypernode\Deploy\Deployer\TaskBuilder; use Hypernode\Deploy\Deployer\Task\TaskBase; +use Hypernode\Deploy\Deployer\TaskBuilder; use Hypernode\DeployConfiguration\Configuration; -use Hypernode\DeployConfiguration\ServerRole; use function count; use function Deployer\task; @@ -32,9 +31,6 @@ public function configure(Configuration $config): void }; } - $role = ServerRole::APPLICATION; - task('deploy:after', $tasks) - ->once() - ->select("roles=$role"); + task('deploy:after', $tasks)->once(); } } diff --git a/src/Deployer/Task/After/CachetoolTask.php b/src/Deployer/Task/After/CachetoolTask.php index c3e33c8..2f097e6 100644 --- a/src/Deployer/Task/After/CachetoolTask.php +++ b/src/Deployer/Task/After/CachetoolTask.php @@ -3,8 +3,6 @@ namespace Hypernode\Deploy\Deployer\Task\After; use Hypernode\Deploy\Deployer\Task\TaskBase; -use Hypernode\DeployConfiguration\ServerRole; -use Hypernode\Deploy\Deployer\Task\TaskInterface; use Hypernode\DeployConfiguration\Configuration; use function Deployer\after; @@ -57,7 +55,7 @@ public function configure(Configuration $config): void run('curl -L -o cachetool.phar ' . $this->getCachetoolUrl()); $cachetoolBinary = '{{release_path}}/cachetool.phar'; - writeln(sprintf("Downloaded cachetool %s for PHP %d", $cachetoolBinary, $this->getPhpVersion())); + writeln(sprintf("Downloaded cachetool %s for PHP %f", $cachetoolBinary, $this->getPhpVersion())); return $cachetoolBinary; }); return $cachetoolBinary; @@ -98,14 +96,11 @@ public function configure(Configuration $config): void run("cd {{release_path}} && {{bin/php}} {{bin/cachetool}} apcu:cache:clear {{cachetool_options}}"); }); - - $role = ServerRole::APPLICATION; - task('cachetool:clear:opcache') - ->select("roles=$role"); + task('cachetool:clear:opcache'); task('cachetool:cleanup', function () { run('cd {{deploy_path}} && rm -f current/{{bin/cachetool}}'); - })->select("roles=$role"); + }); } protected function getPhpVersion(): float @@ -121,7 +116,7 @@ public function getCachetoolUrl(): string } if ($phpVersion >= 7.3) { - return $this->versionBinaryMapping[6]; + return $this->versionBinaryMapping[7]; } if ($phpVersion >= 7.2) { diff --git a/src/Deployer/Task/Deploy/CopyTask.php b/src/Deployer/Task/Deploy/CopyTask.php index f31a98c..99e6095 100644 --- a/src/Deployer/Task/Deploy/CopyTask.php +++ b/src/Deployer/Task/Deploy/CopyTask.php @@ -4,7 +4,6 @@ use Hypernode\Deploy\Deployer\Task\TaskBase; use Hypernode\DeployConfiguration\Configuration; -use Hypernode\DeployConfiguration\ServerRole; use function Deployer\run; use function Deployer\task; @@ -14,7 +13,6 @@ class CopyTask extends TaskBase { public function configure(Configuration $config): void { - $role = ServerRole::APPLICATION; task('deploy:copy:code', function () use ($config) { $packageFilepath = $config->getBuildArchiveFile(); $packageFilename = pathinfo($packageFilepath, PATHINFO_BASENAME); @@ -22,11 +20,11 @@ public function configure(Configuration $config): void upload($packageFilepath, '{{release_path}}'); run('cd {{release_path}} && tar -xf ' . $packageFilename); run('cd {{release_path}} && rm -f ' . $packageFilename); - })->select("roles=$role"); + }); task('deploy:copy', [ 'deploy:copy:code', 'deploy:shared', - ])->select("roles=$role"); + ]); } } diff --git a/src/Deployer/Task/Deploy/DeployTask.php b/src/Deployer/Task/Deploy/DeployTask.php index 06959f8..9fa040e 100644 --- a/src/Deployer/Task/Deploy/DeployTask.php +++ b/src/Deployer/Task/Deploy/DeployTask.php @@ -2,9 +2,8 @@ namespace Hypernode\Deploy\Deployer\Task\Deploy; -use Hypernode\Deploy\Deployer\Task\TaskBase; -use Hypernode\DeployConfiguration\ServerRole; use Hypernode\Deploy\Deployer\RecipeLoader; +use Hypernode\Deploy\Deployer\Task\TaskBase; use Hypernode\DeployConfiguration\Configuration; use function Deployer\fail; @@ -25,13 +24,12 @@ public function __construct(RecipeLoader $loader) public function configure(Configuration $config): void { $this->loader->load('deploy/info.php'); - $role = ServerRole::APPLICATION; task('deploy', [ 'deploy:upload', 'deploy:link', 'deploy:finalize', - ])->select("roles=$role"); + ]); fail('deploy', 'deploy:failed'); } diff --git a/src/Deployer/Task/Deploy/DeployTaskGlobal.php b/src/Deployer/Task/Deploy/DeployTaskGlobal.php index b3d6a9b..d68dd9e 100644 --- a/src/Deployer/Task/Deploy/DeployTaskGlobal.php +++ b/src/Deployer/Task/Deploy/DeployTaskGlobal.php @@ -4,7 +4,6 @@ use Hypernode\Deploy\Deployer\Task\TaskBase; use Hypernode\DeployConfiguration\Configuration; -use Hypernode\DeployConfiguration\ServerRole; use function Deployer\task; use function Hypernode\Deploy\Deployer\noop; @@ -14,7 +13,6 @@ class DeployTaskGlobal extends TaskBase public function configure(Configuration $config): void { $tasks = $config->getDeployTasks(); - $role = ServerRole::APPLICATION; if (count($tasks)) { task('deploy:deploy', $tasks); @@ -22,6 +20,6 @@ public function configure(Configuration $config): void task('deploy:deploy', noop()); } - task('deploy:deploy', $tasks)->select("roles=$role"); + task('deploy:deploy', $tasks); } } diff --git a/src/Deployer/Task/Deploy/FinalizeTask.php b/src/Deployer/Task/Deploy/FinalizeTask.php index 39b86ea..eafec6c 100644 --- a/src/Deployer/Task/Deploy/FinalizeTask.php +++ b/src/Deployer/Task/Deploy/FinalizeTask.php @@ -2,9 +2,8 @@ namespace Hypernode\Deploy\Deployer\Task\Deploy; -use Hypernode\Deploy\Deployer\Task\TaskBase; -use Hypernode\DeployConfiguration\ServerRole; use Hypernode\Deploy\Deployer\RecipeLoader; +use Hypernode\Deploy\Deployer\Task\TaskBase; use Hypernode\DeployConfiguration\Configuration; use function Deployer\after; @@ -26,14 +25,13 @@ public function __construct(RecipeLoader $loader) public function configure(Configuration $config): void { $this->loader->load('deploy/info.php'); - $role = ServerRole::APPLICATION; task('deploy:finalize', [ 'deploy:after', 'deploy:unlock', 'deploy:cleanup', 'deploy:success', - ])->select("roles=$role"); + ]); fail('deploy', 'deploy:failed'); after('deploy:failed', 'deploy:unlock'); diff --git a/src/Deployer/Task/Deploy/LinkTask.php b/src/Deployer/Task/Deploy/LinkTask.php index 519fa56..bdd595b 100644 --- a/src/Deployer/Task/Deploy/LinkTask.php +++ b/src/Deployer/Task/Deploy/LinkTask.php @@ -4,7 +4,6 @@ use Hypernode\Deploy\Deployer\Task\TaskBase; use Hypernode\DeployConfiguration\Configuration; -use Hypernode\DeployConfiguration\ServerRole; use function Deployer\run; use function Deployer\task; @@ -14,11 +13,10 @@ class LinkTask extends TaskBase { public function configure(Configuration $config): void { - $role = ServerRole::APPLICATION; task('deploy:link', [ 'deploy:symlink', 'deploy:public_link', - ])->select("roles=$role"); + ]); // Symlink public_html folder task('deploy:public_link', function () { @@ -33,6 +31,6 @@ public function configure(Configuration $config): void } else { run('ln -s {{current_path}}/{{public_folder}} /data/web/public'); } - })->select("roles=$role"); + }); } } diff --git a/src/Deployer/Task/Deploy/UploadTask.php b/src/Deployer/Task/Deploy/UploadTask.php index d646e67..f8c31ec 100644 --- a/src/Deployer/Task/Deploy/UploadTask.php +++ b/src/Deployer/Task/Deploy/UploadTask.php @@ -2,9 +2,8 @@ namespace Hypernode\Deploy\Deployer\Task\Deploy; -use Hypernode\Deploy\Deployer\Task\TaskBase; -use Hypernode\DeployConfiguration\ServerRole; use Hypernode\Deploy\Deployer\RecipeLoader; +use Hypernode\Deploy\Deployer\Task\TaskBase; use Hypernode\DeployConfiguration\Configuration; use function Deployer\fail; @@ -25,7 +24,6 @@ public function __construct(RecipeLoader $loader) public function configure(Configuration $config): void { $this->loader->load('deploy/info.php'); - $role = ServerRole::APPLICATION; task('deploy:upload', [ 'deploy:info', @@ -33,7 +31,7 @@ public function configure(Configuration $config): void 'deploy:prepare', 'deploy:copy', 'deploy:deploy', - ])->select("roles=$role"); + ]); fail('deploy', 'deploy:failed'); }