예제 #1
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        app_cookie_persistence_profile=dict(type='dict', ),
        description=dict(type='str', ),
        hdr_persistence_profile=dict(type='dict', ),
        http_cookie_persistence_profile=dict(type='dict', ),
        ip_persistence_profile=dict(type='dict', ),
        is_federated=dict(type='bool', ),
        name=dict(type='str', required=True),
        persistence_type=dict(type='str', required=True),
        server_hm_down_recovery=dict(type='str', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'applicationpersistenceprofile', set([]))
예제 #2
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        cloud_ref=dict(type='str', ),
        dns_info=dict(type='list', ),
        east_west_placement=dict(type='bool', ),
        name=dict(type='str', required=True),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        use_standard_alb=dict(type='bool', ),
        uuid=dict(type='str', ),
        vip=dict(type='list', ),
        vrf_context_ref=dict(type='str', ),
        vsvip_cloud_config_cksum=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'vsvip', set([]))
예제 #3
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        admin_auth_configuration=dict(type='dict', ),
        default_license_tier=dict(type='str', ),
        dns_configuration=dict(type='dict', ),
        dns_virtualservice_refs=dict(type='list', ),
        docker_mode=dict(type='bool', ),
        email_configuration=dict(type='dict', ),
        global_tenant_config=dict(type='dict', ),
        linux_configuration=dict(type='dict', ),
        mgmt_ip_access_control=dict(type='dict', ),
        ntp_configuration=dict(type='dict', ),
        portal_configuration=dict(type='dict', ),
        proxy_configuration=dict(type='dict', ),
        secure_channel_configuration=dict(type='dict', ),
        snmp_configuration=dict(type='dict', ),
        ssh_ciphers=dict(type='list', ),
        ssh_hmacs=dict(type='list', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
        welcome_workflow_complete=dict(type='bool', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'systemconfiguration', set([]))
예제 #4
0
def main():
    argument_specs = dict(
        state=dict(default='present',
                   choices=['absent', 'present']),
        name=dict(type='str', required=True),
        obj_username=dict(type='str', required=True),
        obj_password=dict(type='str', required=True, no_log=True),
        access=dict(type='list',),
        email=dict(type='str',),
        is_superuser=dict(type='bool',),
        is_active=dict(type='bool',),
        avi_api_update_method=dict(default='put',
                                   choices=['post', 'put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        user_profile_ref=dict(type='str',),
        default_tenant_ref=dict(type='str', default='/api/tenant?name=admin'),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs, supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'user',
                           set([]))
예제 #5
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        cloud_ref=dict(type='str', ),
        configured_subnets=dict(type='list', ),
        dhcp_enabled=dict(type='bool', ),
        exclude_discovered_subnets=dict(type='bool', ),
        ip6_autocfg_enabled=dict(type='bool', ),
        name=dict(type='str', required=True),
        synced_from_se=dict(type='bool', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
        vcenter_dvs=dict(type='bool', ),
        vimgrnw_ref=dict(type='str', ),
        vrf_context_ref=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'network', set([]))
예제 #6
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        bgp_profile=dict(type='dict', ),
        cloud_ref=dict(type='str', ),
        debugvrfcontext=dict(type='dict', ),
        description=dict(type='str', ),
        gateway_mon=dict(type='list', ),
        internal_gateway_monitor=dict(type='dict', ),
        name=dict(type='str', required=True),
        static_routes=dict(type='list', ),
        system_default=dict(type='bool', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'vrfcontext', set([]))
예제 #7
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        action_group_ref=dict(type='str', ),
        alert_rule=dict(type='dict', required=True),
        autoscale_alert=dict(type='bool', ),
        category=dict(type='str', required=True),
        description=dict(type='str', ),
        enabled=dict(type='bool', ),
        expiry_time=dict(type='int', ),
        name=dict(type='str', required=True),
        obj_uuid=dict(type='str', ),
        object_type=dict(type='str', ),
        recommendation=dict(type='str', ),
        rolling_window=dict(type='int', ),
        source=dict(type='str', required=True),
        summary=dict(type='str', ),
        tenant_ref=dict(type='str', ),
        threshold=dict(type='int', ),
        throttle=dict(type='int', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'alertconfig', set([]))
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        auto_disable_old_prod_pools=dict(type='bool', ),
        description=dict(type='str', ),
        evaluation_duration=dict(type='int', ),
        name=dict(type='str', required=True),
        rules=dict(type='list', ),
        scheme=dict(type='str', ),
        target_test_traffic_ratio=dict(type='int', ),
        tenant_ref=dict(type='str', ),
        test_traffic_ratio_rampup=dict(type='int', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
        webhook_ref=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'poolgroupdeploymentpolicy', set([]))
예제 #9
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        allocate_ip_in_vrf=dict(type='bool', ),
        aws_profile=dict(type='dict', ),
        azure_profile=dict(type='dict', ),
        custom_profile=dict(type='dict', ),
        gcp_profile=dict(type='dict', ),
        infoblox_profile=dict(type='dict', ),
        internal_profile=dict(type='dict', ),
        name=dict(type='str', required=True),
        oci_profile=dict(type='dict', ),
        openstack_profile=dict(type='dict', ),
        proxy_configuration=dict(type='dict', ),
        tenant_ref=dict(type='str', ),
        tencent_profile=dict(type='dict', ),
        type=dict(type='str', required=True),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'ipamdnsproviderprofile', set([]))
예제 #10
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        ca_certs=dict(type='list', ),
        created_by=dict(type='str', ),
        crl_check=dict(type='bool', ),
        crls=dict(type='list', ),
        ignore_peer_chain=dict(type='bool', ),
        is_federated=dict(type='bool', ),
        name=dict(type='str', required=True),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
        validate_only_leaf_crl=dict(type='bool', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'pkiprofile', set([]))
예제 #11
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        description=dict(type='str', ),
        intelligent_autoscale=dict(type='bool', ),
        intelligent_scalein_margin=dict(type='int', ),
        intelligent_scaleout_margin=dict(type='int', ),
        max_scalein_adjustment_step=dict(type='int', ),
        max_scaleout_adjustment_step=dict(type='int', ),
        max_size=dict(type='int', ),
        min_size=dict(type='int', ),
        name=dict(type='str', required=True),
        scalein_alertconfig_refs=dict(type='list', ),
        scalein_cooldown=dict(type='int', ),
        scaleout_alertconfig_refs=dict(type='list', ),
        scaleout_cooldown=dict(type='int', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        use_predicted_load=dict(type='bool', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'serverautoscalepolicy', set([]))
예제 #12
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        azure_serviceprincipal=dict(type='dict', ),
        azure_userpass=dict(type='dict', ),
        gcp_credentials=dict(type='dict', ),
        name=dict(type='str', required=True),
        oci_credentials=dict(type='dict', ),
        private_key=dict(
            type='str',
            no_log=True,
        ),
        public_key=dict(type='str', ),
        tenant_ref=dict(type='str', ),
        tencent_credentials=dict(type='dict', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'cloudconnectoruser', set(['private_key']))
예제 #13
0
def main():
    argument_specs = dict()
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    try:
        api_creds = AviCredentials()
        api_creds.update_from_ansible_module(module)
        api = ApiSession.get_session(api_creds.controller,
                                     api_creds.username,
                                     password=api_creds.password,
                                     timeout=api_creds.timeout,
                                     tenant=api_creds.tenant,
                                     tenant_uuid=api_creds.tenant_uuid,
                                     token=api_creds.token,
                                     port=api_creds.port)

        remote_api_version = api.remote_api_version
        remote = {}
        for key in remote_api_version.keys():
            remote[key.lower()] = remote_api_version[key]
        api.close()
        module.exit_json(changed=False, obj=remote)
    except Exception as e:
        module.fail_json(msg=("Unable to get an AVI session. %s" % e))
def main():
    argument_specs = dict(
        state=dict(default='present',
                   choices=['absent', 'present']),
        avi_api_update_method=dict(default='put',
                                   choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        backup_config_ref=dict(type='str',),
        enabled=dict(type='bool',),
        end_date_time=dict(type='str',),
        frequency=dict(type='int',),
        frequency_unit=dict(type='str',),
        name=dict(type='str', required=True),
        run_mode=dict(type='str',),
        run_script_ref=dict(type='str',),
        scheduler_action=dict(type='str',),
        start_date_time=dict(type='str',),
        tenant_ref=dict(type='str',),
        url=dict(type='str',),
        uuid=dict(type='str',),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(
        argument_spec=argument_specs, supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'scheduler',
                           set([]))
예제 #15
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        cloud_config_cksum=dict(type='str', ),
        created_by=dict(type='str', ),
        description=dict(type='str', ),
        http_request_policy=dict(type='dict', ),
        http_response_policy=dict(type='dict', ),
        http_security_policy=dict(type='dict', ),
        is_internal_policy=dict(type='bool', ),
        name=dict(type='str', required=True),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'httppolicyset', set([]))
예제 #16
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        accepted_ciphers=dict(type='str', ),
        accepted_versions=dict(type='list', ),
        cipher_enums=dict(type='list', ),
        description=dict(type='str', ),
        dhparam=dict(type='str', ),
        enable_ssl_session_reuse=dict(type='bool', ),
        name=dict(type='str', required=True),
        prefer_client_cipher_ordering=dict(type='bool', ),
        send_close_notify=dict(type='bool', ),
        ssl_rating=dict(type='dict', ),
        ssl_session_timeout=dict(type='int', ),
        tags=dict(type='list', ),
        tenant_ref=dict(type='str', ),
        type=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'sslprofile', set([]))
def main():
    argument_specs = dict(
        state=dict(default='present',
                   choices=['absent', 'present']),
        avi_api_update_method=dict(default='put',
                                   choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        action_script_config_ref=dict(type='str',),
        autoscale_trigger_notification=dict(type='bool',),
        description=dict(type='str',),
        email_config_ref=dict(type='str',),
        external_only=dict(type='bool', required=True),
        level=dict(type='str', required=True),
        name=dict(type='str', required=True),
        snmp_trap_profile_ref=dict(type='str',),
        syslog_config_ref=dict(type='str',),
        tenant_ref=dict(type='str',),
        url=dict(type='str',),
        uuid=dict(type='str',),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(
        argument_spec=argument_specs, supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'actiongroupconfig',
                           set([]))
예제 #18
0
def main():
    argument_specs = dict(
        state=dict(default='present',
                   choices=['absent', 'present']),
        avi_api_update_method=dict(default='put',
                                   choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        addrs=dict(type='list',),
        apic_epg_name=dict(type='str',),
        country_codes=dict(type='list',),
        description=dict(type='str',),
        ip_ports=dict(type='list',),
        marathon_app_name=dict(type='str',),
        marathon_service_port=dict(type='int',),
        name=dict(type='str', required=True),
        prefixes=dict(type='list',),
        ranges=dict(type='list',),
        tenant_ref=dict(type='str',),
        url=dict(type='str',),
        uuid=dict(type='str',),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(
        argument_spec=argument_specs, supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'ipaddrgroup',
                           set([]))
예제 #19
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        availability_zone=dict(type='str', ),
        cloud_ref=dict(type='str', ),
        container_mode=dict(type='bool', ),
        container_type=dict(type='str', ),
        controller_created=dict(type='bool', ),
        controller_ip=dict(type='str', ),
        data_vnics=dict(type='list', ),
        enable_state=dict(type='str', ),
        flavor=dict(type='str', ),
        host_ref=dict(type='str', ),
        hypervisor=dict(type='str', ),
        mgmt_vnic=dict(type='dict', ),
        name=dict(type='str', ),
        resources=dict(type='dict', ),
        se_group_ref=dict(type='str', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'serviceengine', set([]))
예제 #20
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        description=dict(type='str', ),
        http=dict(type='dict', ),
        ldap=dict(type='dict', ),
        name=dict(type='str', required=True),
        pa_agent_ref=dict(type='str', ),
        saml=dict(type='dict', ),
        tacacs_plus=dict(type='dict', ),
        tenant_ref=dict(type='str', ),
        type=dict(type='str', required=True),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'authprofile', set([]))
예제 #21
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        created_by=dict(type='str', ),
        datascript=dict(type='list', ),
        description=dict(type='str', ),
        ipgroup_refs=dict(type='list', ),
        name=dict(type='str', required=True),
        pool_group_refs=dict(type='list', ),
        pool_refs=dict(type='list', ),
        protocol_parser_refs=dict(type='list', ),
        string_group_refs=dict(type='list', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'vsdatascriptset', set([]))
예제 #22
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        description=dict(type='str', ),
        dns_monitor=dict(type='dict', ),
        external_monitor=dict(type='dict', ),
        failed_checks=dict(type='int', ),
        http_monitor=dict(type='dict', ),
        https_monitor=dict(type='dict', ),
        is_federated=dict(type='bool', ),
        monitor_port=dict(type='int', ),
        name=dict(type='str', required=True),
        radius_monitor=dict(type='dict', ),
        receive_timeout=dict(type='int', ),
        send_interval=dict(type='int', ),
        sip_monitor=dict(type='dict', ),
        successful_checks=dict(type='int', ),
        tcp_monitor=dict(type='dict', ),
        tenant_ref=dict(type='str', ),
        type=dict(type='str', required=True),
        udp_monitor=dict(type='dict', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'healthmonitor', set([]))
예제 #23
0
def main():
    argument_specs = dict(
        old_password=dict(type='str', required=True, no_log=True),
        # Flag to specify priority of old/new password while establishing session with controller.
        # To handle both Saas and conventional (Entire state in playbook) scenario.
        force_change=dict(type='bool', default=False))
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    api_creds = AviCredentials()
    api_creds.update_from_ansible_module(module)
    old_password = module.params.get('old_password')
    force_change = module.params.get('force_change', False)
    data = {'old_password': old_password, 'password': api_creds.password}
    # First try old password if 'force_change' is set to true
    if force_change:
        first_pwd = old_password
        second_pwd = api_creds.password
    # First try new password if 'force_change' is set to false or not specified in playbook.
    else:
        first_pwd = api_creds.password
        second_pwd = old_password
    password_changed = False
    try:
        api = ApiSession.get_session(api_creds.controller,
                                     api_creds.username,
                                     password=first_pwd,
                                     timeout=api_creds.timeout,
                                     tenant=api_creds.tenant,
                                     tenant_uuid=api_creds.tenant_uuid,
                                     token=api_creds.token,
                                     port=api_creds.port)
        if force_change:
            rsp = api.put('useraccount', data=data)
            if rsp:
                password_changed = True
    except Exception:
        pass
    if not password_changed:
        api = ApiSession.get_session(api_creds.controller,
                                     api_creds.username,
                                     password=second_pwd,
                                     timeout=api_creds.timeout,
                                     tenant=api_creds.tenant,
                                     tenant_uuid=api_creds.tenant_uuid,
                                     token=api_creds.token,
                                     port=api_creds.port)
        if not force_change:
            rsp = api.put('useraccount', data=data)
            if rsp:
                password_changed = True
    if password_changed:
        return ansible_return(module, rsp, True, req=data)
    else:
        return ansible_return(module, rsp, False, req=data)
예제 #24
0
def main():
    argument_specs = dict(
        state=dict(default='present',
                   choices=['absent', 'present']),
        avi_api_update_method=dict(default='put',
                                   choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        apic_configuration=dict(type='dict',),
        apic_mode=dict(type='bool',),
        autoscale_polling_interval=dict(type='int',),
        aws_configuration=dict(type='dict',),
        azure_configuration=dict(type='dict',),
        cloudstack_configuration=dict(type='dict',),
        custom_tags=dict(type='list',),
        dhcp_enabled=dict(type='bool',),
        dns_provider_ref=dict(type='str',),
        docker_configuration=dict(type='dict',),
        east_west_dns_provider_ref=dict(type='str',),
        east_west_ipam_provider_ref=dict(type='str',),
        enable_vip_static_routes=dict(type='bool',),
        gcp_configuration=dict(type='dict',),
        ip6_autocfg_enabled=dict(type='bool',),
        ipam_provider_ref=dict(type='str',),
        license_tier=dict(type='str',),
        license_type=dict(type='str',),
        linuxserver_configuration=dict(type='dict',),
        mesos_configuration=dict(type='dict',),
        mtu=dict(type='int',),
        name=dict(type='str', required=True),
        nsx_configuration=dict(type='dict',),
        obj_name_prefix=dict(type='str',),
        openstack_configuration=dict(type='dict',),
        oshiftk8s_configuration=dict(type='dict',),
        prefer_static_routes=dict(type='bool',),
        proxy_configuration=dict(type='dict',),
        rancher_configuration=dict(type='dict',),
        state_based_dns_registration=dict(type='bool',),
        tenant_ref=dict(type='str',),
        url=dict(type='str',),
        uuid=dict(type='str',),
        vca_configuration=dict(type='dict',),
        vcenter_configuration=dict(type='dict',),
        vtype=dict(type='str', required=True),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(
        argument_spec=argument_specs, supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'cloud',
                           set([]))
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        se_agent_properties=dict(type='dict', ),
        se_bootup_properties=dict(type='dict', ),
        se_runtime_properties=dict(type='dict', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'seproperties', set([]))
예제 #26
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        aws_access_key=dict(
            type='str',
            no_log=True,
        ),
        aws_bucket_id=dict(type='str', ),
        aws_secret_access=dict(
            type='str',
            no_log=True,
        ),
        backup_file_prefix=dict(type='str', ),
        backup_passphrase=dict(
            type='str',
            no_log=True,
        ),
        maximum_backups_stored=dict(type='int', ),
        name=dict(type='str', required=True),
        remote_directory=dict(type='str', ),
        remote_hostname=dict(type='str', ),
        save_local=dict(type='bool', ),
        ssh_user_ref=dict(type='str', ),
        tenant_ref=dict(type='str', ),
        upload_to_remote_host=dict(type='bool', ),
        upload_to_s3=dict(type='bool', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(
        module, 'backupconfiguration',
        set(['backup_passphrase', 'aws_access_key', 'aws_secret_access']))
예제 #27
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        name=dict(type='str', required=True),
        nodes=dict(type='list', ),
        rejoin_nodes_automatically=dict(type='bool', ),
        tenant_ref=dict(type='str', ),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
        virtual_ip=dict(type='dict', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'cluster', set([]))
예제 #28
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        account_lock_timeout=dict(type='int', ),
        credentials_timeout_threshold=dict(type='int', ),
        max_concurrent_sessions=dict(type='int', ),
        max_login_failure_count=dict(type='int', ),
        max_password_history_count=dict(type='int', ),
        name=dict(type='str', required=True),
        url=dict(type='str', ),
        uuid=dict(type='str', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'useraccountprofile', set([]))
예제 #29
0
def main():
    argument_specs = dict(
        state=dict(default='present',
                   choices=['absent', 'present']),
        avi_api_update_method=dict(default='put',
                                   choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        ca_certs=dict(type='list',),
        certificate=dict(type='dict', required=True),
        certificate_base64=dict(type='bool',),
        certificate_management_profile_ref=dict(type='str',),
        created_by=dict(type='str',),
        dynamic_params=dict(type='list',),
        enckey_base64=dict(type='str',),
        enckey_name=dict(type='str',),
        format=dict(type='str',),
        hardwaresecuritymodulegroup_ref=dict(type='str',),
        key=dict(type='str', no_log=True,),
        key_base64=dict(type='bool',),
        key_params=dict(type='dict',),
        key_passphrase=dict(type='str', no_log=True,),
        name=dict(type='str', required=True),
        status=dict(type='str',),
        tenant_ref=dict(type='str',),
        type=dict(type='str',),
        url=dict(type='str',),
        uuid=dict(type='str',),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(
        argument_spec=argument_specs, supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'sslkeyandcertificate',
                           set(['key_passphrase', 'key']))
예제 #30
0
def main():
    argument_specs = dict(
        state=dict(default='present', choices=['absent', 'present']),
        avi_api_update_method=dict(default='put', choices=['put', 'patch']),
        avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
        application_persistence_profile_ref=dict(type='str', ),
        controller_health_status_enabled=dict(type='bool', ),
        created_by=dict(type='str', ),
        description=dict(type='str', ),
        domain_names=dict(type='list', ),
        down_response=dict(type='dict', ),
        enabled=dict(type='bool', ),
        groups=dict(type='list', ),
        health_monitor_refs=dict(type='list', ),
        health_monitor_scope=dict(type='str', ),
        hm_off=dict(type='bool', ),
        is_federated=dict(type='bool', ),
        min_members=dict(type='int', ),
        name=dict(type='str', required=True),
        num_dns_ip=dict(type='int', ),
        pool_algorithm=dict(type='str', ),
        site_persistence_enabled=dict(type='bool', ),
        tenant_ref=dict(type='str', ),
        ttl=dict(type='int', ),
        url=dict(type='str', ),
        use_edns_client_subnet=dict(type='bool', ),
        uuid=dict(type='str', ),
        wildcard_match=dict(type='bool', ),
    )
    argument_specs.update(avi_common_argument_spec())
    module = AnsibleModule(argument_spec=argument_specs,
                           supports_check_mode=True)
    if not HAS_AVI:
        return module.fail_json(msg=(
            'Avi python API SDK (avisdk>=17.1) or requests is not installed. '
            'For more details visit https://github.com/avinetworks/sdk.'))
    return avi_ansible_api(module, 'gslbservice', set([]))