mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-28 06:28:56 +00:00
Reformat everything.
This commit is contained in:
parent
3f2213791a
commit
340ff8586d
1008 changed files with 61301 additions and 58309 deletions
|
|
@ -297,8 +297,13 @@ end_state:
|
|||
view: true
|
||||
"""
|
||||
|
||||
from ansible_collections.community.general.plugins.module_utils.identity.keycloak.keycloak import KeycloakAPI, camel, \
|
||||
keycloak_argument_spec, get_token, KeycloakError
|
||||
from ansible_collections.community.general.plugins.module_utils.identity.keycloak.keycloak import (
|
||||
KeycloakAPI,
|
||||
camel,
|
||||
keycloak_argument_spec,
|
||||
get_token,
|
||||
KeycloakError,
|
||||
)
|
||||
from ansible.module_utils.basic import AnsibleModule
|
||||
|
||||
|
||||
|
|
@ -311,31 +316,34 @@ def main():
|
|||
argument_spec = keycloak_argument_spec()
|
||||
|
||||
meta_args = dict(
|
||||
state=dict(default='present', choices=['present', 'absent']),
|
||||
realm=dict(default='master'),
|
||||
id=dict(type='str'),
|
||||
name=dict(type='str'),
|
||||
attributes=dict(type='dict'),
|
||||
state=dict(default="present", choices=["present", "absent"]),
|
||||
realm=dict(default="master"),
|
||||
id=dict(type="str"),
|
||||
name=dict(type="str"),
|
||||
attributes=dict(type="dict"),
|
||||
parents=dict(
|
||||
type='list', elements='dict',
|
||||
options=dict(
|
||||
id=dict(type='str'),
|
||||
name=dict(type='str')
|
||||
),
|
||||
type="list",
|
||||
elements="dict",
|
||||
options=dict(id=dict(type="str"), name=dict(type="str")),
|
||||
),
|
||||
)
|
||||
|
||||
argument_spec.update(meta_args)
|
||||
|
||||
module = AnsibleModule(argument_spec=argument_spec,
|
||||
supports_check_mode=True,
|
||||
required_one_of=([['id', 'name'],
|
||||
['token', 'auth_realm', 'auth_username', 'auth_password', 'auth_client_id', 'auth_client_secret']]),
|
||||
required_together=([['auth_username', 'auth_password']]),
|
||||
required_by={'refresh_token': 'auth_realm'},
|
||||
)
|
||||
module = AnsibleModule(
|
||||
argument_spec=argument_spec,
|
||||
supports_check_mode=True,
|
||||
required_one_of=(
|
||||
[
|
||||
["id", "name"],
|
||||
["token", "auth_realm", "auth_username", "auth_password", "auth_client_id", "auth_client_secret"],
|
||||
]
|
||||
),
|
||||
required_together=([["auth_username", "auth_password"]]),
|
||||
required_by={"refresh_token": "auth_realm"},
|
||||
)
|
||||
|
||||
result = dict(changed=False, msg='', diff={}, group='')
|
||||
result = dict(changed=False, msg="", diff={}, group="")
|
||||
|
||||
# Obtain access token, initialize API
|
||||
try:
|
||||
|
|
@ -345,25 +353,28 @@ def main():
|
|||
|
||||
kc = KeycloakAPI(module, connection_header)
|
||||
|
||||
realm = module.params.get('realm')
|
||||
state = module.params.get('state')
|
||||
gid = module.params.get('id')
|
||||
name = module.params.get('name')
|
||||
attributes = module.params.get('attributes')
|
||||
realm = module.params.get("realm")
|
||||
state = module.params.get("state")
|
||||
gid = module.params.get("id")
|
||||
name = module.params.get("name")
|
||||
attributes = module.params.get("attributes")
|
||||
|
||||
parents = module.params.get('parents')
|
||||
parents = module.params.get("parents")
|
||||
|
||||
# attributes in Keycloak have their values returned as lists
|
||||
# using the API. attributes is a dict, so we'll transparently convert
|
||||
# the values to lists.
|
||||
if attributes is not None:
|
||||
for key, val in module.params['attributes'].items():
|
||||
module.params['attributes'][key] = [val] if not isinstance(val, list) else val
|
||||
for key, val in module.params["attributes"].items():
|
||||
module.params["attributes"][key] = [val] if not isinstance(val, list) else val
|
||||
|
||||
# Filter and map the parameters names that apply to the group
|
||||
group_params = [x for x in module.params
|
||||
if x not in list(keycloak_argument_spec().keys()) + ['state', 'realm', 'parents'] and
|
||||
module.params.get(x) is not None]
|
||||
group_params = [
|
||||
x
|
||||
for x in module.params
|
||||
if x not in list(keycloak_argument_spec().keys()) + ["state", "realm", "parents"]
|
||||
and module.params.get(x) is not None
|
||||
]
|
||||
|
||||
# See if it already exists in Keycloak
|
||||
if gid is None:
|
||||
|
|
@ -389,23 +400,23 @@ def main():
|
|||
|
||||
# Cater for when it doesn't exist (an empty dict)
|
||||
if not before_group:
|
||||
if state == 'absent':
|
||||
if state == "absent":
|
||||
# Do nothing and exit
|
||||
if module._diff:
|
||||
result['diff'] = dict(before='', after='')
|
||||
result['changed'] = False
|
||||
result['end_state'] = {}
|
||||
result['msg'] = 'Group does not exist; doing nothing.'
|
||||
result["diff"] = dict(before="", after="")
|
||||
result["changed"] = False
|
||||
result["end_state"] = {}
|
||||
result["msg"] = "Group does not exist; doing nothing."
|
||||
module.exit_json(**result)
|
||||
|
||||
# Process a creation
|
||||
result['changed'] = True
|
||||
result["changed"] = True
|
||||
|
||||
if name is None:
|
||||
module.fail_json(msg='name must be specified when creating a new group')
|
||||
module.fail_json(msg="name must be specified when creating a new group")
|
||||
|
||||
if module._diff:
|
||||
result['diff'] = dict(before='', after=desired_group)
|
||||
result["diff"] = dict(before="", after=desired_group)
|
||||
|
||||
if module.check_mode:
|
||||
module.exit_json(**result)
|
||||
|
|
@ -420,27 +431,27 @@ def main():
|
|||
|
||||
after_group = kc.get_group_by_name(name, realm, parents=parents)
|
||||
|
||||
result['end_state'] = after_group
|
||||
result["end_state"] = after_group
|
||||
|
||||
result['msg'] = f"Group {after_group['name']} has been created with ID {after_group['id']}"
|
||||
result["msg"] = f"Group {after_group['name']} has been created with ID {after_group['id']}"
|
||||
module.exit_json(**result)
|
||||
|
||||
else:
|
||||
if state == 'present':
|
||||
if state == "present":
|
||||
# Process an update
|
||||
|
||||
# no changes
|
||||
if desired_group == before_group:
|
||||
result['changed'] = False
|
||||
result['end_state'] = desired_group
|
||||
result['msg'] = f"No changes required to group {before_group['name']}."
|
||||
result["changed"] = False
|
||||
result["end_state"] = desired_group
|
||||
result["msg"] = f"No changes required to group {before_group['name']}."
|
||||
module.exit_json(**result)
|
||||
|
||||
# doing an update
|
||||
result['changed'] = True
|
||||
result["changed"] = True
|
||||
|
||||
if module._diff:
|
||||
result['diff'] = dict(before=before_group, after=desired_group)
|
||||
result["diff"] = dict(before=before_group, after=desired_group)
|
||||
|
||||
if module.check_mode:
|
||||
module.exit_json(**result)
|
||||
|
|
@ -448,33 +459,33 @@ def main():
|
|||
# do the update
|
||||
kc.update_group(desired_group, realm=realm)
|
||||
|
||||
after_group = kc.get_group_by_groupid(desired_group['id'], realm=realm)
|
||||
after_group = kc.get_group_by_groupid(desired_group["id"], realm=realm)
|
||||
|
||||
result['end_state'] = after_group
|
||||
result["end_state"] = after_group
|
||||
|
||||
result['msg'] = f"Group {after_group['id']} has been updated"
|
||||
result["msg"] = f"Group {after_group['id']} has been updated"
|
||||
module.exit_json(**result)
|
||||
|
||||
else:
|
||||
# Process a deletion (because state was not 'present')
|
||||
result['changed'] = True
|
||||
result["changed"] = True
|
||||
|
||||
if module._diff:
|
||||
result['diff'] = dict(before=before_group, after='')
|
||||
result["diff"] = dict(before=before_group, after="")
|
||||
|
||||
if module.check_mode:
|
||||
module.exit_json(**result)
|
||||
|
||||
# delete it
|
||||
gid = before_group['id']
|
||||
gid = before_group["id"]
|
||||
kc.delete_group(groupid=gid, realm=realm)
|
||||
|
||||
result['end_state'] = {}
|
||||
result["end_state"] = {}
|
||||
|
||||
result['msg'] = f"Group {before_group['name']} has been deleted"
|
||||
result["msg"] = f"Group {before_group['name']} has been deleted"
|
||||
|
||||
module.exit_json(**result)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue