def dns_exists_v2()

in src/ansible_collections/alibaba/apsarastack/plugins/modules/ali_dns_domain.py [0:0]


def dns_exists_v2(module, dns_conn, domain_name=None, domain_id=None):
    if not domain_name and not domain_id:
        return False
    try:
        i = 1
        params = {
            "PageNumber": i,
            "PageSize": 10,
        }
        response = do_common_request(
            dns_conn, "POST", "CloudDns", "2021-06-24", "DescribeGlobalZones", body=params)
        for domain in response["Data"]:
            if domain_name:
                if domain["Name"] == domain_name:
                    return domain
            else:
                if domain["Id"] == domain_id:
                    return domain
        while response["Data"] and (i-1) * params["PageSize"] + len(response["Data"]) < response["TotalItems"]:
            i += 1
            params = {
                "PageNumber": i,
                "PageSize": 10,
            }
            response = do_common_request(
                dns_conn, "POST", "CloudDns", "2021-06-24", "DescribeGlobalZones", body=params)
            for domain in response["Data"]:
                if domain_name:
                    if domain["Name"] == domain_name:
                        return domain
                else:
                    if domain["Id"] == domain_id:
                        return domain
    except Exception as e:
        module.fail_json(msg="Failed to dns_exists_v2: {0}".format(e))