如何检查Chef的版本是否符合配方中的宝石要求?

时间:2013-10-22 11:03:54

标签: ruby rubygems chef chef-recipe

Chef :: Version包含Chef gem的版本号,我想检查它是否符合配方中~> 10.14的gem要求。

2 个答案:

答案 0 :(得分:5)

使用Gem::RequirementGem::Version

Gem::Requirement.new("~> 10.14").satisfied_by?(Gem::Version.new(Chef::VERSION))

这会返回一个布尔值 - 如果Chef::VERSION满足~> 10.14,则返回true。

答案 1 :(得分:-1)

或者,您可以使用Chef的内置版本比较机制(至少从Chef 12起可用):

Chef::VersionConstraint.new('>= 14.0.0').include? Chef::VERSION