This is an automatically generated e-mail. To reply, visit: http://reviewboard-fedoraserver.rhcloud.com/r/179/

On August 27th, 2015, 1:16 p.m. UTC, Thomas Woerner wrote:

The patch does not apply cleanly right now.

A solution for the following issues might be delayed for F-23 final: - The service of a delayed deploy should be removed at the next boot if deployment was successful. Right now the service is inactive and not deactivated. Which might make a later delayed deploy of the role with the same name not working. - Additionally there is no way to remove the pendingrole services altogether with the settings file. - There is an additional check needed if a user defined name for the instance is already used by another role instance. Otherwise there will be an error at the next boot while deploying the role. This could happen if delayed deploy is used in a already running system (which is not forbidden).

The service of a delayed deploy is removed at the end of a successful deploy process. See line 993-1015 of rolebase.py. If it's not actually removed, then it's possible there's an SELinux permission bug. But the ConditionPathExists bit of the unit file prevents it from trying to continue deploying.

Yes, we should open a bug to allow cancelling a pending deployment (before it starts, of course).

That last one should be an issue with this patch. I'll fix it.


- Stephen


On August 26th, 2015, 6:23 p.m. UTC, Stephen Gallagher wrote:

Review request for RoleKit Mailing List, Miloslav Trmac, Nils Philippsen, Stephen Gallagher, and Thomas Woerner.
By Stephen Gallagher.

Updated Aug. 26, 2015, 6:23 p.m.

Bugs: 1
Repository: rolekit

Description

We want to be able to support configuring role deployments during
automated system setup (such as Anaconda kickstart for Fedora and
Red Hat Enterprise Linux systems). With this patch, we add a
--next-boot argument to 'rolectl deploy'. This will cause a one-
time systemd service unit to be created and configured to run at
the first boot.

This service unit will execute the real 'rolectl deploy' after the
network is online and will process the role deployment, then
delete the temporary files. These files will not be deleted in the
event of an error.

Fixes https://github.com/libre-server/rolekit/issues/1

Testing

Deployed the memcache role with --next-boot. Tested it by doing 'systemctl start pendingrole-memcache-name.service'

It has not been tested with an actual kickstart yet; I am waiting for Alpha RC1 to arrive and will test it with that.

Diffs

  • config/Makefile.am (480f74f450bb2c6397848e20e3973be806123302)
  • doc/xml/rolectl.xml (6048870abcf21942d37a87275029ad3fed311258)
  • rolekit.spec (0acce035a3745572226e93443515eb0d20b0c77e)
  • shell-completion/bash/rolectl (b32b71e7713d7a40236db07faae8ecca481753dd)
  • src/Makefile.am (bbcdf37b417416fa0a5eeeb800a81417f3b81380)
  • src/rolectl (ade941d99ce04d62b17714ee4c624d2b73249281)
  • src/rolekit/config/__init__.py.in (d9295f37061576fe697402206e18342e0f0a22be)
  • src/rolekit/rolectl/__init__.py (PRE-CREATION)
  • src/rolekit/server/io/rolesettings.py (18f4871faf87ba23d21a3f9bc2c13b14463a8ccf)
  • src/rolekit/server/rolebase.py (121a9b706ee2dda37eff116b8fc7a50143b2e1a6)

View Diff