diff --git a/lib/beaker/host/mac/pkg.rb b/lib/beaker/host/mac/pkg.rb index 4e783207e8..6eb473db8e 100644 --- a/lib/beaker/host/mac/pkg.rb +++ b/lib/beaker/host/mac/pkg.rb @@ -118,7 +118,15 @@ def pe_puppet_agent_promoted_package_info( puppet_collection = nil, opts = {} ) variant, version, arch, codename = self['platform'].to_array release_file = "/repos/apple/#{version}/#{puppet_collection}/#{arch}/puppet-agent-*" - download_file = "puppet-agent-#{variant}-#{version}.tar.gz" + + # macOS puppet-agent tarballs haven't always included arch + agent_version = opts[:puppet_agent_version] + download_file = if agent_version && (agent_version.to_f < 6.28 || agent_version.to_f < 7.18) + "puppet-agent-#{variant}-#{version}.tar.gz" + else + "puppet-agent-#{variant}-#{version}-#{arch}.tar.gz" + end + return '', release_file, download_file end