Пример #1
0
def interface_remove_ip(interface_id, ip_id):
    """
    ::

      DELETE /v1/interfaces/<interface_id>/ips/<ip_id>

    Detach ip from interface
    """
    manager = create_manager("base")
    interface = manager.interface_remove_ip(interface_id, ip_id)
    clear_cache()
    return interface
Пример #2
0
def interface_remove_ip(interface_id, vlan_id):
    """
    ::

      DELETE /v1/interfaces/<interface_id>/vlans/<vlan_id>

    Detach VLAN from interface
    """
    manager = create_manager("base")
    interface = manager.interface_remove_vlan(interface_id, vlan_id)
    clear_cache()
    return interface
Пример #3
0
def dhcp_remove_vlan(dhcp_id, vlan_id):
    """
    ::

      DELETE /v1/dhcps/<dhcp_id>/vlans/<vlan_id>

    Detach vlan to DHCP device
    """
    manager = create_manager("dhcp")
    dhcp = manager.dhcp_remove_vlan(dhcp_id, vlan_id)
    clear_cache()
    return dhcp
Пример #4
0
def firewall_remove_anycast(firewall_id, anycast_id):
    """
    ::

      DELETE /v1/firewalls/<firewall_id>/anycasts/<anycast_id>

    Detach anycasts to firewall device
    """
    manager = create_manager("firewall")
    firewall = manager.firewall_remove_anycast(firewall_id, anycast_id)
    clear_cache()
    return firewall
Пример #5
0
def generic_resource_delete(resource, resource_id):
    """
    ::

      DELETE /v1/<resource>/<resource_id>

    Deletes resource
    """
    clear_cache()
    manager = create_manager(generic_router(resource))
    try:
        _delete = getattr(manager, "%s_delete" % (resource_map.get(resource)))
        return _delete(resource_id)
    except AttributeError:
        raise FeatureNotAvailable()
Пример #6
0
def interface_add_ip(interface_id):
    """
    ::

      POST /v1/interfaces/<interface_id>/ips

    Attach IP to interface
    """
    manager = create_manager('base')
    data = request.body.readline()
    if not data:
        abort(400, 'No data received')
    data = json.loads(data)
    interface = manager.interface_add_ip(interface_id, data)
    clear_cache()
    return interface
Пример #7
0
def interface_add_ip(interface_id):
    """
    ::

      POST /v1/interfaces/<interface_id>/vlans

    Attach VLAN to interface
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    interface = manager.interface_add_vlan(interface_id, data)
    clear_cache()
    return interface
Пример #8
0
def router_create():
    """
    ::

      POST /v1/routers

    Create a new router device
    """
    manager = create_manager("router")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    router = manager.router_create(data=data)
    location = "routers/%s" % (router["id"])
    response.set_header("Location", location)
    clear_cache()
    return router
Пример #9
0
def interface_create():
    """
    ::

      POST /v1/interfaces

    Create a new interface
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    interface = manager.interface_create(data)
    location = "interfaces/%s" % (interface["id"])
    response.set_header("Location", location)
    clear_cache()
    return interface
Пример #10
0
def subnet_ip_create():
    """
    ::

      POST /v1/ips

    Create a new ip in subnet
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    ip = manager.ip_create(data["subnet_id"], data)
    location = "ips/%s" % (ip["id"])
    response.set_header("Location", location)
    clear_cache()
    return ip
Пример #11
0
def vlan_subnet_create():
    """
    ::

      POST /v1/subnets

    Create a new subnet in vlan
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    subnet = manager.subnet_create(data["vlan_id"], data)
    location = "subnets/%s" % (subnet["id"])
    response.set_header("Location", location)
    clear_cache()
    return subnet
Пример #12
0
def anycast_create():
    """
    ::

      POST /v1/anycasts

    Create a new anycast range
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    anycast = manager.anycast_create(data)
    location = "anycasts/%s" % (anycast["id"])
    response.set_header("Location", location)
    clear_cache()
    return anycast
Пример #13
0
def firewall_add_anycast(firewall_id):
    """
    ::

      POST /v1/firewalls/<firewall_id>/anycasts

    Attach vlan to firewall device
    """
    manager = create_manager("firewall")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    firewall = manager.firewall_add_anycast(firewall_id, data)
    location = "firewall/relationship/%s" % (firewall["id"])
    response.set_header("Location", location)
    clear_cache()
    return firewall
Пример #14
0
def firewall_create():
    """
    ::

      POST /v1/firewalls

    Create a new firewall device
    """
    manager = create_manager("firewall")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    firewall = manager.firewall_create(data=data)
    location = "firewalls/%s" % (firewall["id"])
    response.set_header("Location", location)
    clear_cache()
    return firewall
Пример #15
0
def dhcp_add_vlan(dhcp_id):
    """
    ::

      POST /v1/dhcps/<dhcp_id>/vlans

    Attach vlan to DHCP device
    """
    manager = create_manager("dhcp")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    dhcp = manager.dhcp_add_vlan(dhcp_id, data["vlan_id"])
    location = "dhcps/relationship/%s" % (dhcp["id"])
    response.set_header("Location", location)
    clear_cache()
    return dhcp
Пример #16
0
def dhcp_create():
    """
    ::

      POST /v1/dhcps

    Create a new DHCP device
    """
    manager = create_manager("dhcp")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    dhcp = manager.dhcp_create(data=data)
    location = "dhcps/%s" % (dhcp["id"])
    response.set_header("Location", location)
    clear_cache()
    return dhcp
Пример #17
0
def datacenter_zone_create():
    """
    ::

      POST /v1/zones

    Create a new zone in datacenter
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    zone = manager.zone_create(data["datacenter_id"], data)
    location = "zones/%s" % (zone["id"])
    response.set_header("Location", location)
    clear_cache()
    return zone
Пример #18
0
def datacenter_create():
    """
    ::

      POST /v1/datacenters

    Create a new datacenter
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")
    data = json.loads(data)
    datacenter = manager.datacenter_create(data)
    location = "datacenters/%s" % (datacenter["id"])
    response.set_header("Location", location)
    clear_cache()
    return datacenter
Пример #19
0
def anycast_anycastip_create():
    """
    ::

      POST /v1/anycastips

    Create a new ip in anycast subnet
    """
    manager = create_manager('base')
    data = request.body.readline()
    if not data:
        abort(400, 'No data received')
    data = json.loads(data)
    ip = manager.anycastip_create(data['anycast_id'], data)
    location = "anycastips/%s" % (ip['id'])
    response.set_header("Location", location)
    clear_cache()
    return ip
Пример #20
0
def zone_vlan_create():
    """
    ::

      POST /v1/vlans

    Create a new vlan in zone
    """
    manager = create_manager("base")
    data = request.body.readline()
    if not data:
        abort(400, "No data received")

    data = json.loads(data)

    vlan = manager.vlan_create(data["zone_id"], data)
    location = "vlans/%s" % (vlan["id"])
    response.set_header("Location", location)
    clear_cache()
    return vlan