2015-06-18 55 views
2

我有一个Neos项目,由一个提供主Composer容器的站点组成。 composer.json需要大量的包(整个neos /流环境),包括我们开发的一些包。构建过程中自动更新composer.lock

我们的部署设置包含Jenkins,为站点和插件包(仅在其特定的gits中)构建css/javascript,最后触发TYPO3 Surf,其实际调用composer install然后rsync到服务器。

现在,我们希望在我们的Dev分支的一些变化将被部署到测试环境中的每个时刻,我们必须手动cd到主作曲家目录,做一个

composer update vendor/package && git add composer.lock && git commit -m "update composer.lock"`. 

反正总是使用Composer的最新版插件包?也许不包括composer.lock的要求,或者只是在不安装实际包的情况下更改它。

回答

0

对于持续部署到测试服务器,你可以只让詹金斯做composer update,并与你的包在composer.json设置为dev/master

+1

您也可以为测试服务器执行'composer update your/package'。 – ChristianM

+0

'composer update my/package'方法的问题是在何处放置构建过程。三个Jenkins进程正在运行:第一个进程访问站点(因此主要的作曲者定义,包括插件,但也是整个Neos的东西),然后运行grunt。第二个对插件也一样。第三个触发Surf执行实际部署。如果我在第一个作业中运行'composer update my/package',composer将不必要地读取所有依赖关系。我想避免这种开销,可能只是在这里更新composer.lock。 –

相关问题