我正在使用 Cruisecontrol.rb 进行持续集成,并在 Cruise_config.rb 中有以下设置。
Project.configure do |project|
...
project.build_command = 'my_build_script.sh'
...
end
我试图关注这篇博文。
但是,我无法运行“my_build_script.sh”。它通过运行“捆绑安装”开始。有任何想法吗?
我正在使用 Cruisecontrol.rb 进行持续集成,并在 Cruise_config.rb 中有以下设置。
Project.configure do |project|
...
project.build_command = 'my_build_script.sh'
...
end
我试图关注这篇博文。
但是,我无法运行“my_build_script.sh”。它通过运行“捆绑安装”开始。有任何想法吗?
在 app/models/build.rb:42 中的 Cruisecontrol.rb 中
if @project.uses_bundler?
execute self.bundle_install, :stdout => build_log_path, :stderr => build_log_path, :env => project.environment
end
如果它检测到 Gemfile,则首先运行 bundler 是硬编码的,我将其注释掉并在设置 rvm gemset 并且它工作后手动执行它。
这是一个分叉版本(尽管有大量的 ui 更改)https://github.com/timoxley/cruisecontrol.rb
Cruise 允许您禁用自动bundle install
,通过project.use_bundler = false
。
请参阅功能公告。
遗憾的是,默认值为 true,使得bundle install
rvm gemset 的行为异常。他们应该选择启用该功能而不是自动启用该功能,因为很多人都使用 rvm gemsets。
显然 Cruise 将使用与GEM_HOME
父 Cruise 进程使用的相同。如果您在 Phusion Passenger 下运行巡航,它将使用GEM_HOME
安装乘客 gem 的位置(我不确定这是否仍然是乘客 4 的问题)。