71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
# File 'lib/onceover/vendored_modules.rb', line 71
def component_cache(component)
desired_name = "#{component}-puppet_agent-#{@puppet_version}.json"
cache_file = File.join(@cachedir, desired_name)
if !@force_update && File.directory?(@manual_vendored_dir)
dg = Dir.glob(File.join(@manual_vendored_dir, "#{component}-puppet_agent*"))
if dg.size > 1
if dg.any? { |s| s[desired_name] }
cache_file = File.join(@manual_vendored_dir, desired_name)
elsif dg.any? { |s| s["#{component}-puppet_agent-#{@puppet_major_version}"] }
maj_match = dg.select { |f| /#{component}-puppet_agent-#{@puppet_major_version}.\d+\.\d+\.json/.match(f) }
maj_match.each do |f|
next unless (version_from_file(cache_file) == version_from_file(desired_name)) || (version_from_file(f) >= version_from_file(cache_file))
cache_file = f
end
else
dg.each { |f| cache_file = f if version_from_file(f) >= version_from_file(cache_file) }
end
elsif dg.size == 1
cache_file = dg[0]
end
end
cache_version = version_from_file(cache_file)
logger.warn "Cache for #{component} is for puppet_agent #{cache_version}, while you are testing against puppet_agent #{@puppet_version}. Consider updating your cache to ensure consistent behavior in your tests" if cache_version != @puppet_version
cache_file
end
|