Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 4 特拉维斯CI“;命令";bundle exec rake“;以1退出+;神秘404错误_Ruby On Rails 4_Neo4j_Travis Ci_Rspec3_Neo4j.rb - Fatal编程技术网

Ruby on rails 4 特拉维斯CI“;命令";bundle exec rake“;以1退出+;神秘404错误

Ruby on rails 4 特拉维斯CI“;命令";bundle exec rake“;以1退出+;神秘404错误,ruby-on-rails-4,neo4j,travis-ci,rspec3,neo4j.rb,Ruby On Rails 4,Neo4j,Travis Ci,Rspec3,Neo4j.rb,bundle-exec-rake可以在本地完美地运行所有测试。然而,Travis CI在访问/身份验证方面不断出现问题,没有提供更多信息。以下是一个失败的构建:就我个人而言,当Travis试图运行bundle exec rake时,我无法找出是什么导致了身份验证错误 这是项目报告:我不确定Neo4j Travis使用的是什么版本(更新:他们使用1.9.4,不受支持),但我猜它比Neo4j.rb支持的版本稍旧一些。我是核心维护人员之一,构建了Neo4j 2.2 auth支持,这让您感到困惑,但我使

bundle-exec-rake
可以在本地完美地运行所有测试。然而,Travis CI在访问/身份验证方面不断出现问题,没有提供更多信息。以下是一个失败的构建:就我个人而言,当Travis试图运行
bundle exec rake
时,我无法找出是什么导致了身份验证错误


这是项目报告:

我不确定Neo4j Travis使用的是什么版本(更新:他们使用1.9.4,不受支持),但我猜它比Neo4j.rb支持的版本稍旧一些。我是核心维护人员之一,构建了Neo4j 2.2 auth支持,这让您感到困惑,但我使用不同的版本对其进行了测试,回到了早期的2.1 Subversion,没有遇到任何问题

最好的做法是根本不使用Travis的Neo4j。相反,将Travis配置为安装用于开发和生产的相同版本的数据库。另外,安装Neo的rake任务也会在2.2中禁用auth,因此您根本不需要处理这个问题。并不是我们反对auth,而是我们认为rake安装和配置任务是dev/test环境的方便功能,而不是产品,所以没有auth似乎是合理的默认设置

在我们的
.travis.yml
文件中查看一下我们是如何进行安装的。将解决您的问题的摘要:

script:
  - "bundle exec rake neo4j:install['community-2.2.0-M02'] neo4j:start default --trace"
language: ruby
rvm:
  - 2.0.0
community-2.2.0-M02
替换为您想要使用的任何版本。我必须再次检查,但根据我的记忆,我们的版本可以追溯到2.1.2。我为没有在我们的文档中发布此消息而道歉——应该是这样的

我强烈建议将Ruby 2.2.0与Neo4j.rb结合使用。我们在密码查询过程中生成了很多符号,否则这些符号将不会被垃圾收集

编辑更多信息

auth模块要做的第一件事就是检查认证REST端点是否存在。在我测试的所有Neo4j版本中,它都没有给出这样的错误,只是返回了一个空的主体,我们将其解释为auth不受支持或被禁用的标志

后续编辑


Travis支持部门确认了他们提供的Neo4j版本是1.9.4。

我刚刚推出了一个补丁版本4.0.1,可能会解决这个问题,但我突然想到,这可能是因为Neo4j版本在2.x之前,而gem不支持该版本。我刚刚通过电子邮件给Travis,查看他们正在运行的版本。如果仍然是1.9,也不会感到惊讶。