From afde4d135c70e9f217e5c818bc5a878e1a5d0ebc Mon Sep 17 00:00:00 2001 From: Takayasu Oyama Date: Mon, 3 Jul 2017 16:16:54 +0900 Subject: [PATCH 1/3] this is a better way of doing it --- recipe/common.php | 6 +++--- src/Executor/ParallelExecutor.php | 28 +++++++++------------------- 2 files changed, 12 insertions(+), 22 deletions(-) diff --git a/recipe/common.php b/recipe/common.php index e8cc5196..30593832 100644 --- a/recipe/common.php +++ b/recipe/common.php @@ -128,9 +128,9 @@ set('bin/symlink', function () { /** * Default options */ -option('tag', null, InputOption::VALUE_OPTIONAL, 'Tag to deploy'); -option('revision', null, InputOption::VALUE_OPTIONAL, 'Revision to deploy'); -option('branch', null, InputOption::VALUE_OPTIONAL, 'Branch to deploy'); +option('tag', null, InputOption::VALUE_REQUIRED, 'Tag to deploy'); +option('revision', null, InputOption::VALUE_REQUIRED, 'Revision to deploy'); +option('branch', null, InputOption::VALUE_REQUIRED, 'Branch to deploy'); /** diff --git a/src/Executor/ParallelExecutor.php b/src/Executor/ParallelExecutor.php index e8de44c6..c0339f28 100644 --- a/src/Executor/ParallelExecutor.php +++ b/src/Executor/ParallelExecutor.php @@ -240,22 +240,6 @@ class ParallelExecutor implements ExecutorInterface $verbosity = new VerbosityString($this->output); $input = $verbosity; - // Console options without value - foreach (['quiet', 'ansi', 'no-ansi', 'no-interaction'] as $option) { - $value = $this->input->getOption($option); - if ($value) { - $input .= " --$option"; - } - } - - // Console options with value - foreach (['log'] as $option) { - $value = $this->input->getOption($option); - if ($value) { - $input .= " --$option=$value"; - } - } - // Get user arguments foreach ($this->console->getUserDefinition()->getArguments() as $argument) { $value = $this->input->getArgument($argument->getName()); @@ -266,9 +250,15 @@ class ParallelExecutor implements ExecutorInterface // Get user options foreach ($this->console->getUserDefinition()->getOptions() as $option) { - $value = $this->input->getOption($option->getName()); - if ($value) { - $input .= " --{$option->getName()}=$value"; + $name = $option->getName(); + $value = $this->input->getOption($name); + + if($value) { + $input .= " --{$name}"; + + if($option->acceptValue()) { + $input .= " {$value}"; + } } } From d83a46d9ab52464e94c92781a029acc8b9e314b2 Mon Sep 17 00:00:00 2001 From: Takayasu Oyama Date: Mon, 3 Jul 2017 16:27:41 +0900 Subject: [PATCH 2/3] updated CHANGELOG.md --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c0b649f..7484d166 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ ## master [v5.1.3...master](https://github.com/deployphp/deployer/compare/v5.1.3...master) +### Fixed +- Improved the way `ParallelExecutor` handles option parameters. ## v5.1.3 From 8e2f63ece2da5d433391785962b82ff40931bdf6 Mon Sep 17 00:00:00 2001 From: Anton Medvedev Date: Sat, 12 Aug 2017 18:14:40 +0300 Subject: [PATCH 3/3] Update ParallelExecutor.php --- src/Executor/ParallelExecutor.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Executor/ParallelExecutor.php b/src/Executor/ParallelExecutor.php index fae1416b..b785e313 100644 --- a/src/Executor/ParallelExecutor.php +++ b/src/Executor/ParallelExecutor.php @@ -253,10 +253,10 @@ class ParallelExecutor implements ExecutorInterface $name = $option->getName(); $value = $this->input->getOption($name); - if($value) { + if ($value) { $input .= " --{$name}"; - if($option->acceptValue()) { + if ($option->acceptValue()) { $input .= " {$value}"; } }