cannot assign unit "jenkins/0" to new machine: invalid constraint value: arch=amd64 valid values are: [arm64 armhf]
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Triaged
|
High
|
Unassigned |
Bug Description
Not able to deploy new charms on my juju 2.9.5 localhost cloud (LXD):
```
~$ juju status
Model Controller Cloud/Region Version SLA Timestamp
default localhost-localhost localhost/localhost 2.9.5 unsupported 14:42:55Z
App Version Status Scale Charm Store Channel Rev OS Message
jenkins error 0/1 jenkins charmhub stable 34 ubuntu cannot assign unit "jenkins/0" to machine: cannot assign unit "jenkins/0" to new machine or container: cannot assign unit "jenkins/0" to new machine: invalid constraint value: arch=amd64
valid values are: [arm64 armhf]
Unit Workload Agent Machine Public address Ports Message
jenkins/0 error lost cannot assign unit "jenkins/0" to machine: cannot assign unit "jenkins/0" to new machine or container: cannot assign unit "jenkins/0" to new machine: invalid constraint value: arch=amd64
valid values are: [arm64 armhf]
```
I have juju on AARCH64/arm64 server, juju recognizes it for installing its controller:
```
Creating Juju controller "localhost-
Looking for packaged Juju agent version 2.9.5 for arm64
Located Juju agent version 2.9.5-ubuntu-arm64
```
```
~$ juju status
Model Controller Cloud/Region Version SLA Timestamp
controller localhost-localhost localhost/localhost 2.9.5 unsupported 14:44:27Z
Machine State DNS Inst id Series AZ Message
0 started 10.166.202.54 juju-31e9e2-0 focal Running
```
but when I try to deploy I get the `invalid constraint value: arch=amd64`
summary: |
- cannot assign unit "jenkins/0" to machine: cannot assign unit - "jenkins/0" to new machine or container: cannot assign unit "jenkins/0" - to new machine: invalid constraint value: arch=amd64 valid values are: - [arm64 armhf] + cannot assign unit "jenkins/0" to new machine: invalid constraint value: + arch=amd64 valid values are: [arm64 armhf] |
Changed in juju: | |
milestone: | 2.9.8 → 2.9.9 |
Changed in juju: | |
milestone: | 2.9.9 → 2.9.10 |
Changed in juju: | |
milestone: | 2.9.10 → 2.9.11 |
Changed in juju: | |
milestone: | 2.9.11 → 2.9.12 |
Changed in juju: | |
milestone: | 2.9.12 → 2.9.13 |
Changed in juju: | |
milestone: | 2.9.13 → 2.9.14 |
Changed in juju: | |
milestone: | 2.9.14 → 2.9.15 |
Changed in juju: | |
milestone: | 2.9.15 → 2.9.16 |
Changed in juju: | |
milestone: | 2.9.16 → 2.9.17 |
Changed in juju: | |
milestone: | 2.9.17 → 2.9.18 |
Changed in juju: | |
milestone: | 2.9.18 → 2.9.19 |
Changed in juju: | |
milestone: | 2.9.19 → 2.9.20 |
Changed in juju: | |
milestone: | 2.9.20 → 2.9.21 |
Changed in juju: | |
milestone: | 2.9.21 → 2.9.22 |
Changed in juju: | |
milestone: | 2.9.22 → 2.9.23 |
Changed in juju: | |
milestone: | 2.9.23 → 2.9.24 |
Changed in juju: | |
milestone: | 2.9.24 → 2.9.25 |
Changed in juju: | |
milestone: | 2.9.25 → 2.9.26 |
Changed in juju: | |
milestone: | 2.9.26 → 2.9.27 |
Changed in juju: | |
milestone: | 2.9.27 → 2.9.28 |
Changed in juju: | |
milestone: | 2.9.28 → 2.9.29 |
For non amd64 workloads you generally have to specify an arch constraint. "juju deploy myapp --constraints arch=arm64"
This is required because with Charmhub there are different charm packages to download based on whether it is amd64 or arm64, and rather than trying to guess we just mandate that an architecture be set, but we might as well have a default for the common amd64 case.