33 lines
1.4 KiB
Python
33 lines
1.4 KiB
Python
|
import imp
|
||
|
import json
|
||
|
import myOpenstackApp.OpenStackConnection
|
||
|
|
||
|
class myopenstack_neutron():
|
||
|
def __init__(self,conn: myOpenstackApp.OpenStackConnection.OpenStackConnection_x ) -> None:
|
||
|
self.conn=conn
|
||
|
|
||
|
def getAllNetworks(_self, projectID):
|
||
|
result_Data=_self.conn.make_request("GET", "networks?project_id="+projectID, "",
|
||
|
_self.conn.ks.getEndpointByNameAndInterface("neutron",_self.conn.interface)["url"]).json()
|
||
|
return result_Data
|
||
|
|
||
|
def listAllFloatingIPsByProject(_self,projectID):
|
||
|
result_Data=_self.conn.make_request("GET", "floatingips?project_id="+projectID, "",
|
||
|
_self.conn.ks.getEndpointByNameAndInterface("neutron",_self.conn.interface)["url"]).json()
|
||
|
return result_Data
|
||
|
|
||
|
def ipInSubnet(_self,network,netmask,ip):
|
||
|
#Network, netmask and ip must be supplied in integer form
|
||
|
return (ip & netmask) == network
|
||
|
|
||
|
def createNetwork(_self,name,project_id,description=""):
|
||
|
data={
|
||
|
"network": {
|
||
|
"name": name,
|
||
|
"admin_state_up": true,
|
||
|
"tenant_id": project_id,
|
||
|
"description": description
|
||
|
}
|
||
|
}
|
||
|
newNetwork=_self.requestor.make_request("POST", "projects", data, )
|
||
|
return newNetwork
|