[anaconda][rhel7-branch/master/f23-branch][PATCH] Verify Initial Setup services are present before turning them ON/OFF (#1252444)
Vratislav Podzimek
vpodzime at redhat.com
Wed Sep 2 14:41:20 UTC 2015
On Wed, 2015-09-02 at 14:43 +0200, Martin Kolman wrote:
> The systemd enable/disable command is atomic, so if it is called on
> multiple services and one of them is not present, no changes will be
> made.
>
> So check that the individual Initial Setup services (text and/or graphical)
> are present before trying to enable or disable them.
>
> Resolves: rhbz#1252444
> Signed-off-by: Martin Kolman <mkolman at redhat.com>
> ---
> pyanaconda/kickstart.py | 20 ++++++++++----------
> 1 file changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/pyanaconda/kickstart.py b/pyanaconda/kickstart.py
> index 0b1ed25..bf31d82 100644
> --- a/pyanaconda/kickstart.py
> +++ b/pyanaconda/kickstart.py
> @@ -698,18 +698,18 @@ class Firstboot(commands.firstboot.FC3_Firstboot):
> services = ["initial-setup-graphical.service",
> "initial-setup-text.service"]
>
> - if not any(os.path.exists(iutil.getSysroot() + "/lib/systemd/system/" + path)
> - for path in services):
> - # none of the first boot utilities installed, nothing to do here
> - return
> -
> - if self.firstboot == FIRSTBOOT_SKIP:
> - action = "disable"
> - elif self.firstboot == FIRSTBOOT_RECONFIG:
> - f = open(iutil.getSysroot() + "/etc/reconfigSys", "w+")
> + # find if the unit files for the Initial Setup services are installed
> + services = [name for name in services if os.path.exists(os.path.join(iutil.getSysroot(), "lib/systemd/system/", name))]
> + if services and self.firstboot == FIRSTBOOT_RECONFIG:
> + # write the reconfig trigger file
> + f = open(os.path.join(iutil.getSysroot(), "/etc/reconfigSys"), "w+")
> f.close()
>
> - iutil.execInSysroot("systemctl", [action] + services)
> + for service in services:
> + # enable/disable all installed Initial Setup services
> + if self.firstboot == FIRSTBOOT_SKIP:
> + action = "disable"
I know we don't care about these things, but this if should go outside
of the cycle.
Looks good to me otherwise.
--
Vratislav Podzimek
Anaconda Rider | Red Hat, Inc. | Brno - Czech Republic
More information about the anaconda-patches
mailing list