def METHOD_NAME():
    argspec = hashivault_argspec()
    argspec['state'] = dict(required=False, type='str', choices=['present', 'update', 'absent'],
                            default='present')
    argspec['version'] = dict(required=False, type='int', default=2)
    argspec['mount_point'] = dict(required=False, type='str', default='secret')
    argspec['secret'] = dict(required=True, type='str')
    argspec['data'] = dict(required=False, default={}, type='dict', no_log=True)
    argspec['cas'] = dict(required=False, type='int')
    argspec['permanent'] = dict(required=False, type='bool', default=False)
    module = hashivault_init(argspec, supports_check_mode=True)
    result = hashivault_secret(module)
    if result.get('failed'):
        module.fail_json(**result)
    else:
        module.exit_json(**result)