=== group_absent
**(name, org_admin_user=None, org_admin_password=None)**

Ensure an Uyuni system group is not present

....
name: Group Name
org_admin_user: organization administrator username
org_admin_password: organization administrator password
....

    return: dict for Salt communication
    
=== group_present
**(name, description, target=None, target_type='glob', org_admin_user=None, org_admin_password=None)**

Create or update an Uyuni system group

....
name: group name
description: group description
target: target expression used to filter which minions should be part of the group
target_type: target type, one of the following: glob, grain, grain_pcre, pillar, pillar_pcre,
            pillar_exact, compound, compound_pillar_exact. Default: glob.
org_admin_user: organization administrator username
org_admin_password: organization administrator password
....

    return: dict for Salt communication
    
=== org_absent
**(name, admin_user=None, admin_password=None)**

Ensure an Uyuni organization is not present
Note: the configured admin user must have the SUSE Manager/Uyuni Administrator role to perform this action

....
name: organization name
admin_user: uyuni admin user
admin_password: uyuni admin password
....

    return: dict for Salt communication
    
=== org_present
**(name, org_admin_user, org_admin_password, first_name, last_name, email, pam=False, admin_user=None, admin_password=None)**

Create or update an Uyuni organization
Note: the configured admin user must have the SUSE Manager/Uyuni Administrator role to perform this action

....
name: organization name
org_admin_user: organization admin user
org_admin_password: organization admin password
first_name: organization admin first name
last_name: organization admin last name
email: organization admin email
pam: organization admin pam authentication
admin_user: uyuni admin user
admin_password: uyuni admin password
....

    return: dict for Salt communication
    
=== org_trust
**(name, org_name, trusts, admin_user=None, admin_password=None)**

Establish trust relationships between Uyuni organizations.

....
name: state name
org_name: Organization name
trusts: list of organization names to trust
admin_user: administrator username
admin_password: administrator password
....

    return: dict for Salt communication
    
=== user_absent
**(name, org_admin_user=None, org_admin_password=None)**

Ensure an Uyuni user is not present.

....
name: user login name
org_admin_user: organization administrator username
org_admin_password: organization administrator password
....

    return:  dict for Salt communication
    
=== user_channels
**(name, password, manageable_channels=[], subscribable_channels=[], org_admin_user=None, org_admin_password=None)**

Ensure a user has access to the specified channels

....
name: user login name
password: user password
manageable_channels: channels user can manage
subscribable_channels: channels user can subscribe
org_admin_user: organization administrator username
org_admin_password: organization administrator password
....

    return: dict for Salt communication
    
=== user_present
**(name, password, email, first_name, last_name, use_pam_auth=False, roles=None, system_groups=None, org_admin_user=None, org_admin_password=None)**

Create or update an Uyuni user

....
name: user login name
password: desired password for the user
email: valid email address
first_name: First name
last_name: Last name
use_pam_auth: if you wish to use PAM authentication for this user
roles: roles to assign to user
system_groups: system_groups to assign to user
org_admin_user: organization administrator username
org_admin_password: organization administrator password
....

    return: dict for Salt communication
