-
Notifications
You must be signed in to change notification settings - Fork 311
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
With Ubuntu on arm64 apt/sources.list.d/docker.list specifies wrong architecture by default #494
Comments
Hi @damonmaria |
I think the root problem is Ubuntu (Debian?) using Another potential solution would be |
@damonmaria Could I ask clarification on how to use the workaround? My manifests include docker which in turn includes docker::repos. I cannot seem to be able to configure the architecture without triggering "duplicate declaration" error of the class (that part I get). My puppet is quite rusty so I cannot seem to remember how to work this out, would appreciate any help :) |
@fmichea I have a hiera lookup by architecture, from my defaults:
datadir: "data"
hierarchy:
[...]
paths:
- "domains/%{trusted.domain}.yaml"
- "%{facts.architecture}.yaml"
- "common.yaml" And then in docker::repos::architecture: arm64 |
Thanks! I got this to work and am unblocked now, really appreciate the help! |
Closing issue as solution provided by @damonmaria resolved the problem |
Hi, despite the workaround this is still a bug, even more that aarch64 on Ubuntu 20.04 is now a supported architecture for the Puppet agent. For our usecase we depend on the puppetlabs-docker/manifests/repos.pp Lines 12 to 15 in c741a9c
Nevertheless this issue would still affect all Puppet modules that are using Our workaround is maybe a bit of a bigger hammer -- but still works, we're using a resource collector to overwrite all APT sources with a wrong arch to the correct one: Apt::Source <| architecture == 'aarch64' |> { architecture => 'arm64' } |
I guess this also impacts users running Linux on AWS Gravitron instances or Linux VMs on Apple M1 hardware. |
Maybe puppetlabs/puppetlabs-apt#1012 can also help address this. |
Reopening to link to #898 |
What you expected to happen?
On a Raspberry Pi 3 with Ubuntu 18.04 I expected this to be able to install Docker.
What happened?
Docker fails to install. The base error is that
/etc/apt/sources.list.d/docker.list
specifies the wrong architecture:For
apt
the correct architecture for 64-bit ARM isarm64
.How to reproduce it?
Anything else we need to know?
To workaround this I have to add:
docker::repos
gets the default value of architecture from$facts['architecture']
. Looking through all the facts returned on a Raspberry Pi 3 I cannot see any fact returningarm64
. So I'm not sure what the correct fact would be or how other modules handle this.Versions:
Logs:
Run with
--debug
hereThe text was updated successfully, but these errors were encountered: