def main():
    module = AnsibleModule(argument_spec=dict(
        baseuri=dict(required=True),
        resource=dict(),
        ref=dict(type='dict'),
        username=dict(required=False, default=default_rf_username),
        password=dict(required=False, default=default_rf_password,
                      no_log=True),
        resolve=dict(type='list', default=[]),
        tls_verify=dict(required=False, default=True, type='bool'),
        tls_ca=dict(required=False),
        timeout=dict(required=False, type='int'),
    ))

    resource = module.params.get('resource')
    ref = module.params.get('ref')

    try:
        if ref:
            resource = ref['@odata.id']
    except KeyError:
        module.fail_jason(msg='Ref is not in expected format')

    if not ref and not resource:
        module.fail_jason(msg='You must provide either ref or resource')

    if module.params['tls_verify']:
        if module.params.get('tls_ca'):
            tls_verify = module.params['tls_ca']
        else:
            tls_verify = True
    else:
        tls_verify = False

    try:
        sess = Redfish(module.params['baseuri'],
                       verify=tls_verify,
                       timeout=module.params.get('timeout'))
        sess.auth = (module.params['username'], module.params['password'])

        info = sess.get_resource(resource)
        sess.resolve(info, module.params['resolve'])
    except RedfishError as err:
        module.fail_json(msg=str(err))
    else:
        module.exit_json(resource=module.params['resource'], result=info)
Beispiel #2
0
def run_module():
    module_args = dict(name=dict(type='str', required=True),
                       new=dict(type='bool', required=False, default=False))

    result = dict(changed=False, original_message='', message='')
    module = AnsibleModule(argument_spec=module_args, supports_check_mode=True)

    if module.check_mode:
        return result

    result['original_message'] = module.params['name']
    result['message'] = 'hello ' + module.params[
        'name'] + ' pleasure to meet you!'

    if module.params['new']:
        result['changed'] = True

    if module.params['name'] == 'fail me':
        module.fail_jason(msg='You requested the module to fail', **result)

    module.exit_json(**result)
Beispiel #3
0
def run_module():
    module_args = dict (
            name=dict(type='str', required=True),
            new=dict(type='bool', required=False, default=False),
            turtle01=dict(type='str', required=False, default='box')
            )

    result = dict(
            changed=False,
            original_message='',
            message=''
            )
    module = AnsibleModule(
            argument_spec=module_args,
            supports_check_mode=True            
            )

    if module.check_mode:
        return result

    result['original_message'] =  module.params['name']
    result['message']= 'hello ' + module.params['name'] + ' pleasure to meet you!'

    if module.params['turtle01'] != 'box':
        result['message'] = result['message'] + ' Wow your ' + module.params[turtle01] + ' is a cutie' 

    if module.params['new']:
        result['changed'] = True

    if module.params['name'].lower() == 'hughes':
        result['message'] += 'And you work at Hughes!!! What a great place to work!!'

    if module.params['name'] == 'fail me':
        module.fail_jason(msg='You requested the module to fail',  **result)

    module.exit_json(**result)