Beispiel #1
0
                    "alg": "SIP",
                    "enabled": args["enable_alg"]
                })

            # update the rules
            log.info("-- updating alg entry")
            r = cgx.put.element_extensions(element["site_id"], element["id"],
                                           alg["id"], alg)
            if not r:
                jd_detailed(r)
                raise ValueError("cant update alg extension")


if __name__ == "__main__":
    # init cloudgenix object and get command line arguments
    cgx, args = cgxinit.go()

    #init logging
    logging.basicConfig(level=logging.INFO)
    log = logging.getLogger("cgxSIPalg")

    #build site dist
    sites = {}
    for site in cgx.get.sites().cgx_content["items"]:
        # we only care about spoke sites as hub sites don't do NAT
        if site["element_cluster_role"] == "SPOKE":
            sites[site["id"]] = site["name"]
    if args["list"]:
        listALG(cgx, args, sites)
    else:
        updateSIPalg(cgx, args, sites)
#!/usr/bin/env python3

import cgxinit
from cloudgenix import jd
import sys

if __name__ == "__main__":
    sdk, args = cgxinit.go()

    # read lines from file
    prefixes = [prefix.strip() for prefix in args["list"].readlines()]

    # find the prefix
    prefix = None
    natprefixes = sdk.get.natglobalprefixes().cgx_content["items"]
    for natprefix in natprefixes:
        if natprefix['name'] == args['prefix']:
            prefix = natprefix
    if not prefix:
        print("Prefix wasn't found")
        sys.exit()

    # add to the existing ipv4 list
    prefix['ipv4_prefixes'].extend(prefixes)
    # make sure all the entries are unique
    prefix['ipv4_prefixes'] = list(set(prefix['ipv4_prefixes']))

    resp = sdk.put.natglobalprefixes(prefix['id'], prefix)
    if not resp:
        print("Error. Couldn't update the global prefix list")
        jd(resp)