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
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
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
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
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()
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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