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

rolectl tries to contact roled early (see rk.connected check). This is the first place where rolectl stops. The second one is the first line after 'elif command == "deploy":'

In the "--next-boot" case this needs to be done later. The question is if it would not be better to have a separte command to prepare next-boot deployments.


- Thomas Woerner


On August 5th, 2015, 12:42 a.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. 5, 2015, 12:42 a.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

  • src/rolekit/server/rolebase.py (b8bc640bd70fe995e4183c71bd77b355a42a4228)
  • src/rolekit/server/io/rolesettings.py (18f4871faf87ba23d21a3f9bc2c13b14463a8ccf)
  • src/rolekit/rolectl/__init__.py (PRE-CREATION)
  • src/rolekit/config/__init__.py.in (d9295f37061576fe697402206e18342e0f0a22be)
  • src/rolectl (ac36bb94c80992c51dcadfa24d93806bc6598954)
  • src/Makefile.am (bbcdf37b417416fa0a5eeeb800a81417f3b81380)
  • config/Makefile.am (480f74f450bb2c6397848e20e3973be806123302)
  • rolekit.spec (0acce035a3745572226e93443515eb0d20b0c77e)

View Diff