juju upgrade-model on k8s tries to reach streams.canonical.com
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Triaged
|
High
|
Unassigned |
Bug Description
When I try to upgrade the model on k8s cloud (from 3.1.6 to 3.3.3), juju tries to reach streams.
$ juju upgrade-model --debug --agent-version 3.3.3 --dry-run
21:53:15 INFO juju.cmd supercommand.go:56 running juju [3.3.3 3e20d5947e407dc
21:53:15 DEBUG juju.cmd supercommand.go:57 args: []string{
21:53:15 INFO juju.juju api.go:86 connecting to API addresses: [10.131.
21:53:15 DEBUG juju.api apiclient.go:1172 successfully dialed "wss://
21:53:15 INFO juju.api apiclient.go:707 connection established to "wss://
21:53:15 INFO juju.juju api.go:86 connecting to API addresses: [10.131.
21:53:15 DEBUG juju.api apiclient.go:1172 successfully dialed "wss://
21:53:15 INFO juju.api apiclient.go:707 connection established to "wss://
21:53:15 INFO juju.juju api.go:86 connecting to API addresses: [10.131.
21:53:15 DEBUG juju.api apiclient.go:1172 successfully dialed "wss://
21:53:15 INFO juju.api apiclient.go:707 connection established to "wss://
21:53:51 DEBUG juju.api monitor.go:35 RPC connection died
21:53:51 DEBUG juju.api monitor.go:35 RPC connection died
21:53:51 DEBUG juju.api monitor.go:35 RPC connection died
21:53:51 DEBUG juju.cmd.
ERROR cannot read index data, attempt count exceeded: cannot access URL "https:/
21:53:51 DEBUG cmd supercommand.go:549 error stack:
cannot read index data, attempt count exceeded: cannot access URL "https:/
github.
github.
It cannot reach streams.
juju controller version: 3.3.3
controller model version: 3.3.3
target model version: 3.1.6
juju client: 3.3.3
cloud: microk8s
To reproduce: migrate a 3.1.6 model to 3.3.3 controller and try juju upgrade-model
The configs of controller and target (cos) models: https:/
Changed in juju: | |
importance: | Undecided → High |
milestone: | none → 3.3.4 |
status: | Invalid → Triaged |
tags: | added: upgrade-juju |
Changed in juju: | |
milestone: | 3.3.4 → 3.3.5 |
This is by design. The metadata recorded in streams is the definitive source of what agent versions are available. So Juju checks streams and then goes to look for a corresponding oci image. This ensures that there's no accidental divergence between agents available on k8s and machine models.
It's not strictly correct to say "instead of docker". Once juju verifies / finds the agent version on streams, it then goes to the oci image on the oci repo.