def update_port(self, tenant_id, netw_id, portw_id, **params): """ Updates the properties of a specific port on the specified Virtual Network. :returns: a mapping sequence with the following signature: {'port-id': uuid representing the updated port on specified quantum network 'port-state': update port state (UP or DOWN) } :raises: exception.StateInvalid :raises: exception.PortNotFound """ if not nvplib.check_tenant(self.controller, netw_id, tenant_id): raise exception.NetworkNotFound(net_id=netw_id) LOG.debug("Update port request: %s" % (params)) params["controller"] = self.controller result = nvplib.update_port(netw_id, portw_id, **params) LOG.debug("update_port() completed for tenant: %s" % tenant_id) port = { 'port-id': portw_id, 'port-state': result["admin_status_enabled"], 'port-op-status': result["port-op-status"], } LOG.debug("returning updated port %s: " % port) return port
def update_port(self, context, id, port): """ Updates the properties of a specific port on the specified Virtual Network. Returns: {"id": uuid represeting the port. "network_id": uuid of network. "tenant_id": tenant_id "mac_address": mac address to use on this port. "admin_state_up": sets admin state of port. if down, port does not forward packets. "status": dicates whether port is currently operational (limit values to "ACTIVE", "DOWN", "BUILD", and "ERROR"?) "fixed_ips": list of subnet ID's and IP addresses to be used on this port "device_id": identifies the device (e.g., virtual server) using this port. } :raises: exception.StateInvalid :raises: exception.PortNotFound """ params = {} port_quantum = super(NvpPluginV2, self).get_port(context, id) port_nvp, cluster = ( nvplib.get_port_by_quantum_tag(self.clusters.itervalues(), port_quantum["network_id"], id)) params["cluster"] = cluster params["port"] = port_quantum LOG.debug(_("Update port request: %s"), params) nvplib.update_port(port_quantum['network_id'], port_nvp['uuid'], **params) return super(NvpPluginV2, self).update_port(context, id, port)
def update_port(self, context, id, port): """ Updates the properties of a specific port on the specified Virtual Network. Returns: {"id": uuid represeting the port. "network_id": uuid of network. "tenant_id": tenant_id "mac_address": mac address to use on this port. "admin_state_up": sets admin state of port. if down, port does not forward packets. "status": dicates whether port is currently operational (limit values to "ACTIVE", "DOWN", "BUILD", and "ERROR"?) "fixed_ips": list of subnet ID's and IP addresses to be used on this port "device_id": identifies the device (e.g., virtual server) using this port. } :raises: exception.StateInvalid :raises: exception.PortNotFound """ params = {} quantum_db = super(NvpPluginV2, self).get_port(context, id) port_nvp, cluster = (nvplib.get_port_by_quantum_tag( self.clusters, quantum_db["network_id"], id)) LOG.debug("Update port request: %s" % (params)) params["cluster"] = cluster params["port"] = port["port"] params["port"]["id"] = quantum_db["id"] params["port"]["tenant_id"] = quantum_db["tenant_id"] result = nvplib.update_port(quantum_db["network_id"], port_nvp["uuid"], **params) LOG.debug("update_port() completed for tenant: %s" % context.tenant_id) return super(NvpPluginV2, self).update_port(context, id, port)