我在使用php5.6和composer进行测试时遇到了麻烦:构建运行out of memory(也尝试了2G限制,而不是-1,但尝试still fails)。
我遵循了其他示例,并使用Travis' PHP guide禁用了内存限制,但是显然没有达到预期的结果。
最近我添加了the oneliner
echo "memory_limit=2G" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
但是1.5G之后composer安装仍然失败。
为什么不应用该限制?根据{{3}},更改php.ini中的值应该可以。
答案 0 :(得分:1)
通过越来越仔细地阅读日志(并更好地了解TravisCI),我发现 我通过增加 edit :正如@emix在评论中指出的那样,这不是最好的方法before_script
在依赖项安装后正在运行,因此在运行composer时尚未生效。 / p>
before_install
中的内存限制并在.travis.yml中添加以下内容来解决此问题:before_install:
- echo "memory_limit=2G" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
最好的方法是仅在作曲家运行时增加内存,这可以通过以下方式运行作曲家来实现:
COMPOSER_MEMORY_LIMIT=-1 travis_retry composer install --prefer-dist --no-interaction