33 lines
881 B
Ruby
33 lines
881 B
Ruby
module RedisioHelper
|
|
def recipe_eval
|
|
sub_run_context = @run_context.dup
|
|
sub_run_context.resource_collection = Chef::ResourceCollection.new
|
|
begin
|
|
original_run_context = @run_context
|
|
@run_context = sub_run_context
|
|
yield
|
|
ensure
|
|
@run_context = original_run_context
|
|
end
|
|
|
|
begin
|
|
Chef::Runner.new(sub_run_context).converge
|
|
ensure
|
|
new_resource.updated_by_last_action(true) if sub_run_context.resource_collection.any?(&:updated?)
|
|
end
|
|
end
|
|
|
|
def self.version_to_hash(version_string)
|
|
version_array = version_string.split('.')
|
|
version_array[2] = version_array[2].split('-')
|
|
version_array.flatten!
|
|
|
|
{
|
|
major: version_array[0].include?(':') ? version_array[0].split(':')[1] : version_array[0],
|
|
minor: version_array[1],
|
|
tiny: version_array[2],
|
|
rc: version_array[3],
|
|
}
|
|
end
|
|
end
|