我从项目中的Gemfile中删除了gem“auto_tagger”。一切看起来都在master / dev分支上工作。我使用脚本将分支合并到测试中。现在我收到此错误
Switched to branch 'test'
/opt/mount1/rvm/gems/ruby-2.1.1@global/gems/bundler-1.7.7/lib/bundler/resolver.rb:357:in `resolve': Could not find gem 'auto_tagger (>= 0) ruby' in the gems available on this machine. (Bundler::GemNotFound)
调用以下脚本时(这不是完整脚本,但它显示失败的位置)
def chef_refresh(root_dir = nil, environment = 'staging', branch)
dir_prefix = root_dir.nil? ? nil : File.join(root_dir, '/')
check_environment(environment)
puts "Checking out #{branch} inside the something_chef_repo projects."
system("git checkout #{branch}")
check_branch(environment, branch)
puts "git pull something_chef_repo"
system("git pull") || raise("unable to complete git pull for gemini_chef_repo")
puts "running bundle"
system("bundle")
puts "running berks"
system("berks install")
答案 0 :(得分:0)
事实证明,chef-refresh脚本仍然需要gem自动标记器。在将其合并到其他分支之前,我不得不在master / dev分支上重新添加gem和bundle install。感谢spickermann和Thom Parkin