noggin.representation package

Submodules

noggin.representation.agreement module

class noggin.representation.agreement.Agreement(raw)[source]

Bases: Representation

attr_names = {'description': 'description', 'enabled': 'ipaenabledflag', 'groups': 'member_group', 'name': 'cn', 'uniqueid': 'ipauniqueid', 'users': 'memberuser_user'}
attr_types = {'enabled': 'bool', 'groups': 'list', 'users': 'list'}
ipa_object = 'fasagreement'
pkey = 'name'
property slug

noggin.representation.base module

class noggin.representation.base.Representation(raw)[source]

Bases: object

as_dict()[source]
attr_names = {}
attr_options = {}
attr_types = {}
diff_fields(other)[source]

Compares two instances of the same class, and returns the properties with values that are different

property dn
get_attr_option(attr)[source]
classmethod get_ipa_pkey()[source]
pkey = None
noggin.representation.base.attr_to_bool(value)[source]
noggin.representation.base.attr_to_date(value)[source]
noggin.representation.base.attr_to_list(value)[source]
noggin.representation.base.attr_to_str(value)[source]

noggin.representation.group module

class noggin.representation.group.Group(raw)[source]

Bases: Representation

attr_names = {'description': 'description', 'discussion_url': 'fasdiscussionurl', 'irc_channel': 'fasircchannel', 'mailing_list': 'fasmailinglist', 'members': 'member_user', 'name': 'cn', 'sponsors': 'membermanager_user', 'urls': 'fasurl'}
attr_types = {'members': 'list', 'sponsors': 'list', 'urls': 'list'}
ipa_object = 'group'
pkey = 'name'

noggin.representation.otptoken module

class noggin.representation.otptoken.OTPToken(raw)[source]

Bases: Representation

attr_names = {'description': 'description', 'disabled': 'ipatokendisabled', 'uniqueid': 'ipatokenuniqueid'}
attr_types = {'disabled': 'bool'}
ipa_object = 'otptoken'
pkey = 'uniqueid'
property uri

noggin.representation.user module

class noggin.representation.user.User(raw)[source]

Bases: Representation

anonymize()[source]
attr_names = {'agreements': 'memberof_fasagreement', 'commonname': 'cn', 'creation_time': 'fascreationtime', 'displayname': 'displayname', 'firstname': 'givenname', 'gecos': 'gecos', 'github': 'fasgithubusername', 'gitlab': 'fasgitlabusername', 'gpgkeys': 'fasgpgkeyid', 'ircnick': 'fasircnick', 'is_private': 'fasisprivate', 'krbname': 'krbcanonicalname', 'last_password_change': 'krblastpwdchange', 'lastname': 'sn', 'locale': 'faslocale', 'mail': 'mail', 'pronouns': 'faspronoun', 'rhbz_mail': 'fasrhbzemail', 'roles': 'memberof_role', 'rss_url': 'fasrssurl', 'sshpubkeys': 'ipasshpubkey', 'status_note': 'fasstatusnote', 'timezone': 'fastimezone', 'username': 'uid', 'website_url': 'faswebsiteurl'}
attr_options = {'firstname': 'o_givenname', 'lastname': 'o_sn', 'mail': 'o_mail'}
attr_types = {'agreements': 'list', 'creation_time': 'date', 'gpgkeys': 'list', 'groups': 'list', 'ircnick': 'list', 'is_private': 'bool', 'last_password_change': 'date', 'pronouns': 'list', 'roles': 'list', 'rss_url': 'list', 'sshpubkeys': 'list', 'website_url': 'list'}
property groups

Merge the direct and the indirect groups.

ipa_object = 'user'
property locked
property name
pkey = 'username'

Module contents