cannot perform multiple upgrades
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
juju-core |
Fix Released
|
Critical
|
Ian Booth |
Bug Description
Deploy a Juju 1.16 environment.
Upgrade to 1.18.0 using --upload-tools -> success
Upgrade t0 1.18.3 using --upload-tools -> failure
- agent state is down
- agent version stays as 1.18.0.1
Same happens if initial environment is 1.17.4
If initial deployment is 1.18.0 and upgrade to 1.18.3 it works.
Logs say 1.18.3 tools have been downloaded but unpacking seems to fail.
machine-0: 2014-03-11 04:32:47 ERROR juju runner.go:209 worker: fatal "upgrader": must restart: an agent upgrade is available
machine-0: 2014-03-11 04:32:47 INFO juju.provisioner provisioner_
machine-0: 2014-03-11 04:32:47 ERROR juju runner.go:209 worker: fatal "api": must restart: an agent upgrade is available
machine-0: 2014-03-11 04:32:47 INFO juju runner.go:164 worker: runner is dying
machine-0: 2014-03-11 04:32:47 INFO juju.state.
machine-0: 2014-03-11 04:32:47 INFO juju.worker.
machine-0: 2014-03-11 04:32:47 ERROR juju.cmd supercommand.go:296 must restart: an agent upgrade is available
machine-0: 2014-03-11 04:32:48 INFO juju.cmd.jujud machine.go:121 machine agent machine-0 start (1.18.0.
machine-0: 2014-03-11 04:32:48 DEBUG juju.agent agent.go:315 read agent config, format "1.18"
machine-0: 2014-03-11 04:32:48 INFO juju.cmd.jujud machine.go:149 Starting StateWorker for machine-0
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "state"
machine-0: 2014-03-11 04:32:48 INFO juju.state open.go:79 opening state; mongo addresses: ["localhost:
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "api"
machine-0: 2014-03-11 04:32:48 INFO juju apiclient.go:113 state/api: dialing "wss://
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "termination"
machine-0: 2014-03-11 04:32:48 ERROR juju apiclient.go:118 state/api: websocket.Dial wss://localhost
machine-0: 2014-03-11 04:32:48 ERROR juju runner.go:220 worker: exited "api": websocket.Dial wss://localhost
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:254 worker: restarting "api" in 3s
machine-0: 2014-03-11 04:32:48 INFO juju.state open.go:117 connection established
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "instancepoller"
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "apiserver"
machine-0: 2014-03-11 04:32:48 INFO juju.state.
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "cleaner"
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "resumer"
machine-0: 2014-03-11 04:32:48 INFO juju runner.go:262 worker: start "minunitsworker"
machine-0: 2014-03-11 04:32:51 INFO juju runner.go:262 worker: start "api"
machine-0: 2014-03-11 04:32:51 INFO juju apiclient.go:113 state/api: dialing "wss://
machine-0: 2014-03-11 04:32:51 INFO juju.state.
machine-0: 2014-03-11 04:32:51 INFO juju apiclient.go:123 state/api: connection established
machine-0: 2014-03-11 04:32:51 DEBUG juju.state.
machine-0: 2014-03-11 04:32:51 DEBUG juju.state.
machine-0: 2014-03-11 04:32:51 DEBUG juju.state.
machine-0: 2014-03-11 04:32:51 DEBUG juju.state.
machine-0: 2014-03-11 04:32:51 INFO juju runner.go:262 worker: start "upgrader"
machine-0: 2014-03-11 04:32:51 INFO juju runner.go:262 worker: start "upgrade-steps"
machine-0: 2014-03-11 04:32:51 INFO juju runner.go:262 worker: start "machiner"
machine-0: 2014-03-11 04:32:51 INFO juju.cmd.jujud machine.go:449 Upgrade to 1.18.0.
machine-0: 2014-03-11 04:32:51 INFO juju.cmd.jujud machine.go:436 Upgrade to 1.18.0.
Related branches
- Juju Engineering: Pending requested
-
Diff: 202 lines (+27/-12)10 files modifiedagent/agent.go (+3/-0)
agent/format-1.16.go (+2/-0)
agent/format-1.16_whitebox_test.go (+5/-3)
agent/format-1.18.go (+3/-0)
agent/format-1.18_whitebox_test.go (+4/-2)
cmd/jujud/agent.go (+2/-1)
container/userdata.go (+2/-1)
environs/cloudinit.go (+1/-1)
provider/manual/environ.go (+2/-1)
worker/upgrader/error.go (+3/-3)
Changed in juju-core: | |
milestone: | none → 1.17.5 |
Changed in juju-core: | |
assignee: | nobody → Ian Booth (wallyworld) |
status: | Triaged → In Progress |
Changed in juju-core: | |
status: | In Progress → Fix Committed |
Changed in juju-core: | |
status: | Fix Committed → Fix Released |
Looks like the unpacking of the new tools is failing because the destination of the untar is u.dataDir, but the agent config file has an empty value for dataDir.
ubuntu@ ip-10-11- 143-142: /var/lib/ juju/agents/ machine- 0$ sudo cat agent.conf bootstrap
# format 1.18
tag: machine-0
datadir: ""
logdir: ""
nonce: user-admin:
upgradedToVersion: 1.18.0.1