在Travis CI上运行Redis

时间:2014-12-04 15:26:09

标签: express redis travis-ci

我刚刚在我的Express应用程序中包含了一个Redis商店并让它运行起来。

我想在Travis CI中包含这个Redis商店,以便我的代码继续在那里工作。我在Travis文档中读到可以使用出厂设置启动Redis。

在我的项目中,我没有使用出厂设置,我编写了自己的redis.conf文件,该文件指定了端口和密码。

所以我将以下行添加到我的.travis.yml文件中:

services:
  - redis-server --port 6380 --requirepass 'secret'

但这会在Travis CI上返回以下内容:

$ sudo service redis-server\ --port\ 6380\ --requirepass\ \'secret\' start
  redis-server --port 6380 --requirepass 'secret': unrecognized service

有什么方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

如果您想在Travis CI上自定义Redis选项,我建议不要使用服务部分,而是执行此操作:

before_script: sudo redis-server /etc/redis/redis.conf --port 6380 --requirepass 'secret'

服务部分使用其init / upstart脚本运行服务,这些脚本可能不支持您在其中添加的选项。出于安全原因,该命令也被转义,因此文档仅暗示您可以列出该部分中的正常服务名称。