2016-12-14 83 views
0

我正在尝试使用Magallanes部署PHP Web应用程序。如何告诉magallanes使用--no-dev执行作曲家?

这是我的实际任务的配置:

tasks: 
    pre-deploy: 
    - composer/install 
    on-deploy: 
    - filesystem/link-shared-files: 
     linked_folders: 
      - web/fileadmin 
      - web/uploads 
      - web/typo3temp 
      - web/typo3conf/l10n 
    post-release: 
    - general/manually: 
     - vendor/bin/typo3cms install:fixfolderstructure 
     - vendor/bin/typo3cms install:generatepackagestates --activate-default=true 
     - vendor/bin/typo3cms cache:flush true 
     - vendor/bin/typo3cms database:updateschema "*.add,*.change" 
     - vendor/bin/typo3cms cache:warmup 
    post-deploy: 

在使用:

pre-deploy: 
     - composer/install 

作曲家将始终与composer install --dev调用。有没有办法用--no-dev而不是--dev来致电作曲家?

PS:我已经尝试过- composer/install --no-dev,其产生以下错误:

Starting Pre-Deployment tasks:
Task "Composer/installNoDev" not found.

更新 因为我需要一些更多的参数,我用general/manually。我的解决方案是:

tasks: 
    pre-deploy: 
    - general/manually: 
     - php7.0 /usr/local/bin/composer install --no-dev --no-progress --optimize-autoloader 

但另一方面,我的原始问题是不同的。所以Chris的回答似乎是正确的。

回答

1

我认为这将工作:

pre-deploy: 
    - composer/install: {dev: false} 

我无法在文档中发现这一点,但the source references a 'dev' parameter似乎控制--dev/--no-dev

public function run() 
{ 
    $dev = $this->getParameter('dev', true); 
    return $this->runCommand($this->getComposerCmd() . ' install' . ($dev ? ' --dev' : ' --no-dev')); 
} 

的文档a bit more helpful about setting parameters,但我不确定它是否能正确读取false作为布尔值。

+0

没有尝试过。现在我需要一些更多的参数,然后只是'--no-dev'。 我使用的是在我的文章上面的*更新*。 –