Feature #63330

Allow node/application/deployment options as options of defined tasks

Added by Joachim Mathes almost 7 years ago. Updated over 5 years ago.

Could have
Target version:
Start date:
Due date:
% Done:


Estimated time:


Up to now it is possible to reuse a task like typo3.surf:shell with $workflow->defineTask('fooTask', 'typo3.surf:shell', array('command' => 'echo "Hello"')) and dedicated parameters. But what if I want node options to overwrite the parameters of a defined task, e.g.:


$nodeConfigurations = array(
        'name' => 'one',
        'run' => 'echo "I am node one"'
        'name' => 'two',
        'run' => 'echo "I am node two"'

$application = new \TYPO3\Surf\Domain\Model\Application('DummyApplication');

foreach ($nodeConfigurations as $configuration) {
    $node = new \TYPO3\Surf\Domain\Model\Node($configuration['name']);
            'hostname' => 'localhost',
            'username' => 'jo',
            'getNodeOptions[command]' => $configuration['run']


$workflow = new \TYPO3\Surf\Domain\Model\SimpleWorkflow();
    ->defineTask('getNodeOptions', 'typo3.surf:shell', array())
    ->addTask('getNodeOptions', 'transfer');


This does not work for now. Maybe the provided patch is a solution. This is a quick idea, so please review carefully.


Updated by Christopher Hlubek over 6 years ago

Hi Joachim,

I couldn't find the patch you mentioned. Could you attach it to this issue?

In general this is a good idea to have, we just need to have a clear and understandable merge order of deployment, application, node and task options.


Updated by Christopher Hlubek over 6 years ago

  • Status changed from New to Needs Feedback

Updated by Joachim Mathes over 6 years ago

Hi Christopher,

This is my commit: https://review.typo3.org/#/c/34621/


Updated by Gerrit Code Review over 5 years ago

  • Status changed from Needs Feedback to Under Review

Patch set 2 for branch master of project Packages/TYPO3.Surf has been pushed to the review server.
It is available at https://review.typo3.org/34621


Updated by Helmut Hummel over 5 years ago

  • Status changed from Under Review to Resolved

fixed in Surf 2.0.0 beta3

Also available in: Atom PDF