Seems like there's two issues here which I'll address in separate PRs to
the landscape-client:

First is the issue that the landscape-client fails to report the
completion (or failure) of the release upgrade process. This turns out
to be due to a delayed import in the version of twisted distributed with
trusty. Because the import (of twisted.internet.unix) is delayed, by the
time we *do* import it (implicitly by calling another twisted method),
the twisted version on disk has been replaced with the xenial version
and things (unsurprisingly) break. The trivial fix is to pre-emptively
import the module prior to starting the release upgrade; I'll push a PR
for this in a moment.

The second issue is that landscape-client fails to reboot (or shutdown)
the machine immediately following the release upgrade procedure. This is
due to the fact landscape-client currently relies upon /sbin/shutdown to
handle reboot or shutdown requests. This utility operates happily in its
upstart variant (in trusty), and systemd variant (in xenial and beyond),
but fails in the post-trusty-to-xenial upgrade environment when the
system on disk is effectively xenial (so /sbin/shutdown is a link to
systemctl), but the running environment is still partially trusty. It
transpires that systemctl (without the double --force --force option)
requires both systemd and dbus to be operational in order to
successfully (and cleanly) shutdown or restart.

The fix for this is a little more complex as the landscape-client relies
upon the scheduling function of /sbin/shutdown to ensure it can request
a shutdown and still report back to the server before the machine
actually goes down. I'm still investigating the best method which will
work reliably in all potential environments.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1670291

Title:
  Landscape: Upgrade 14.04.5 to 16.04.2 fails unable to reboot

Status in landscape-client package in Ubuntu:
  Confirmed
Status in systemd package in Ubuntu:
  Incomplete
Status in landscape-client source package in Xenial:
  Confirmed
Status in systemd source package in Xenial:
  Incomplete

Bug description:
  Used Landscape (Paid Canonical Subscription) to upgrade one of my
  machines.

  Landscape only shows "In Progress" for more than 8 hours now and asked
  for a reboot of the machine in a second alert.

  In the reboot attempt I get the message:
  =========================
  Failed to set wall message, ignoring: Method "SetWallMessage" with signature 
"sb" on interface "org.freedesktop.login1.Manager" doesn't exist
  Failed to call ScheduleShutdown in logind, proceeding with immediate 
shutdown: Method "ScheduleShutdown" with signature "st" on interface 
"org.freedesktop.login1.Manager" doesn't exist
  =========================

  Steps to reproduce:
  * Fully updated 14.04.5 machine
  * Open Landscape
  * Choose the machine
  * Choose Packages
  * This computer can be upgraded to a newer release
  * Apply
  * Wait 2 hours
  * Alert comes in a seperate Landscape message Machine is ready for reboot
  * Choose Info... Power
  * Deliver to selected computers as soon as possible
  * Error message

  I found this thread on reddit about this issue maybe the solution can be 
built into the upgrade script
  
https://www.reddit.com/r/linuxquestions/comments/4wy3go/trying_to_run_as_user_instance_but_the_system_has/

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/landscape-client/+bug/1670291/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to