rolekit D-Bus API v2

Stephen Gallagher sgallagh at
Tue Jul 1 12:45:11 UTC 2014

Hash: SHA1

On 07/01/2014 02:56 AM, Marius Vollmer wrote:
> Thomas Woerner <twoerner at> writes:
>> org.fedoraproject.rolekit1.roles.$name
> I don't understand the purpose of "$name" here.  Why not 
> "org.fedoraproject.rolekit1.role"?  This is the one concrete
> interface that we want all roles to implement.  It can have one
> concrete name, no?
>> deploy(a{sv})            # deploy role (i.e. running initial
>> setup # post-package-install, ipa-server-install) # with the
>> given parameters in key value # pairs in a dictionary, these
>> parameters should be # saved in the role configuration setings
>> by # the role after successful deployment
> As a generic client that wants to discover and deploy roles, how do
> I determine the parameters?  Is it OK to just pass an empty
> dictionary?

Roles are not meant to be "discoverable" (other than whether a
particular role is available for installation). These are going to be
a fixed, documented set of arguments unique to each role. We will do
input validation in the role implementation, but I'm not sure how (or
if) we could make those arguments discoverable (or if we'd want to).
The expectation here is that a client of the API would know which
attributes are needed for the role from the documentation.

>> updateRole()             # update role: yum update;
>> restartServices; # updateFirewall
> How can I see whether an update is available?
> It would be nice to be able to show a localized description and an
> icon in the UI.  Can we get that from somewhere?

Again, these things aren't really supposed to be *discoverable*, but
this is a reasonable request (for 2.0, IMHO).

>> STARTED = "started" RUNNING = "running"
> What's the difference between these two?  A description of the
> states would be helpful.

Those shouldn't be different. I wonder if he meant to have "starting"
rather than "started" there.

>> ERROR = "error"
> I guess an interactive client will want to offer different actions 
> depending on the state of a role.  For example, when the state is 
> "nascent", it would offer to deplpy the role, but not to "start"
> it. When it is "ready-to-start" or "stopped", it would offer to
> start it. Etc.
> What should it offer in the "error" state?  Nothing?

Please see the attached image. (This was sent out previously in the
"Server Role States" thread)

Version: GnuPG v1
Comment: Using GnuPG with Thunderbird -

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Server Role States.png
Type: image/png
Size: 26983 bytes
Desc: not available
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Server Role States.png.sig
Type: application/pgp-signature
Size: 72 bytes
Desc: not available
URL: <>

More information about the server mailing list