从parameters.yml中的composer添加已安装软件包的版本

时间:2015-12-23 15:21:35

标签: php symfony composer-php

我们使用Symfony v2.7.2并安装composer.json来安装软件包。

现在,期望的行为是在composer install之后或期间,我们希望将特定包的版本存储为parameter.yml中的参数(以便在多个服务中将其用于跟踪目的)

我想知道如何做到最好?

我可以从composer.lock文件中读取值,但随后:

如何更新参数值,因为加载后容器会被锁定?

是否有某种方法可以将包版本定义为变量,以便在composer.json的'buildParameters'部分中使用它?

如何使用动态值创建/更新参数?

2 个答案:

答案 0 :(得分:0)

最佳解决方案是使用composer's scripts功能。

另外,请记住,大多数库/包在某个文件中都有某种常量,可以保留其版本的值。您尝试执行此操作的库可能也有类似的功能。我建议寻找它,因为这将是一个更简单的解决方案。

例如,here是存储Symfony版本的常量。

答案 1 :(得分:0)

我会邀请你以不同的方式思考它。 这些库通常有一个Version Class,它正是你需要的,如果你需要它是一个参数,你可以通过Symfony Bundle配置/扩展来完成它,然后就不需要在parameters.yml下设置它。

这就是我要使用的方法。