summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordheerajd-msys <dheeraj.dubey@msystechnologies.com>2017-09-26 18:49:20 +0530
committerdheerajd-msys <dheeraj.dubey@msystechnologies.com>2017-09-29 19:09:12 +0530
commitd2186523180426ae2daaa961a84a52999ff02593 (patch)
treee7ab684df432f2623de87bfda47966867d717692
parent3e758a087301374f24f622b0c72fe1bbeb437cb2 (diff)
downloadchef-d2186523180426ae2daaa961a84a52999ff02593.tar.gz
Fix dependent package
Signed-off-by: dheerajd-msys <dheeraj.dubey@msystechnologies.com>
-rw-r--r--lib/chef/provider/package/chocolatey.rb19
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/chef/provider/package/chocolatey.rb b/lib/chef/provider/package/chocolatey.rb
index 27b7420278..4e40136ca1 100644
--- a/lib/chef/provider/package/chocolatey.rb
+++ b/lib/chef/provider/package/chocolatey.rb
@@ -177,10 +177,8 @@ EOS
# @return [Array] list of candidate_version, same index as new_resource.package_name/version
def build_candidate_versions
new_resource.package_name.map do |package_name|
- if new_resource.source && new_resource.source.include?("artifactory") && package_name_array.length > 1
+ if new_resource.source && new_resource.source.include?("artifactory")
available_packages_from_artifactory[package_name.downcase]
- elsif new_resource.source && new_resource.source.include?("artifactory") && package_name_array.length == 1
- available_packages[package_name.downcase]
else
available_packages[package_name.downcase]
end
@@ -249,16 +247,23 @@ EOS
return @available_packages_from_artifactory if @available_packages_from_artifactory
@available_packages_from_artifactory = {}
package_name_array.length.times do |item|
- a =
+ available_versions =
begin
cmd = [ "list -r #{package_name_array[item]}" ]
cmd.push( "-source #{new_resource.source}" )
raw = parse_list_output(*cmd).first.each_slice(2).to_h
- raw.keys.each_with_object({}) do |name, available|
- available[name] = desired_name_versions[name] || raw[name]
+ raw1 = parse_list_output(*cmd)
+ if raw1.length > 1
+ raw1.keys.each_with_object({}) do |name, available|
+ available[name] = desired_name_versions[name] || raw1[name]
+ end
+ else
+ raw.keys.each_with_object({}) do |name, available|
+ available[name] = desired_name_versions[name] || raw[name]
+ end
end
end
- @available_packages_from_artifactory.merge! a
+ @available_packages_from_artifactory.merge! available_versions
end
@available_packages_from_artifactory
end