Workaround bugs during dapper->hardy upgrades
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Landscape Client |
Fix Released
|
High
|
Free Ekanayaka |
Bug Description
The landscape-
to hardy.
There several little problems:
1) The upgrade-tool script needs to be passed a magic "--mode server"
command line argument if the dapper system being upgrader is a server.
2) The environment variable for allowing third-party APT repositories to
be enabled during the upgrade is not supported (this holds for
upgrades from hardy as well).
3) The dbus dapper package gets replaced with the hardy version while
the landscape-
process crash badly (it has an open dbus connection), probably due
to a bug in dbus.
4) Due to bug #174148, dbus doesn't restart after the upgrade, and hence
the landscape-client as well. This makes the release-upgrader fail to
send back a message to the server with the operation result.
The attached branch implements workarounds for all these
problems. Though they were a tricky to debug, the presented fixes are
small, so I'm packing them in same branch.
Note that the workarounds for 3) and 4) are meant to be temporary ones, I
think the real fix should get rid of the dbus dependency at all, pushing
ahead the work Jamu started about an AMP-based remote broker.
affects landscape-client
status inprogress
importance high
assignee free.ekanayaka
milestone 1.4.3
Related branches
tags: | added: review |
description: | updated |
tags: | added: 1.5-release-upgrades |
Changed in landscape-client: | |
status: | In Progress → Fix Committed |
tags: | added: needs-testing |
Changed in landscape-client: | |
status: | Fix Committed → Fix Released |
Still about 3) and 4), I'm considering to eventually add some mechanism to make the release upgrader explicitly check that the landscape-client is up and running after the upgrade is completed, and possibly try to start it if not. If it fails to start it in all ways, it might even contact the Landscape server directly and report the activity as failed and also inform that the client is not running. However, I think the workaround in this branch is enough for now.