Jenkins中的Rake任务无法访问配置yaml文件

时间:2016-09-30 22:50:10

标签: ruby-on-rails jenkins rabbitmq database-migration rake-task

通过Jenkins将代码更改部署到我们的开发环境时遇到了一个问题。在初始化文件夹中的以下代码上运行rake db:migrate时,Jenkins构建卡住了。

 AMQP_URL_PATH =  "#{AMQP_CONFIG[:protocol]}://#{AMQP_CONFIG[:user]}:#{Rails.application.secrets[:amqp_api_password]}@#{AMQP_CONFIG[:host]}/#{AMQP_CONFIG[:virtual_host]}"

正如您所看到的,它正在尝试访问两个yaml文件amqp.ymlsecrets.yml。我可以确认配置文件夹中的开发框上存在这两个文件。

本地代码生成以下好网址

amqps://user:password@10.118.1.134/virtualhost

开发代码只返回://:@

Jenkin的构建错误就是这个。

15:59:21 URI::InvalidURIError: bad URI(is not URI?): ://:@

正如您所看到的,当Jenkins中运行时,没有任何内插值正在将其转换为url字符串。这是此次推送中唯一发生的变化,如果我对构建工作完全正确的路径进行硬编码。在构建部署期间运行rake任务时,如何让Jenkins访问这些YAML文件?

开发: Rails 4.2.5 Ruby 2.2.2 本地 Rails 4.2.5 Ruby 2.2.3

0 个答案:

没有答案