本文整理汇总了Python中vnc_api.vnc_api.VncApi.fabric_delete方法的典型用法代码示例。如果您正苦于以下问题:Python VncApi.fabric_delete方法的具体用法?Python VncApi.fabric_delete怎么用?Python VncApi.fabric_delete使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vnc_api.vnc_api.VncApi
的用法示例。
在下文中一共展示了VncApi.fabric_delete方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: SanityBase
# 需要导入模块: from vnc_api.vnc_api import VncApi [as 别名]
# 或者: from vnc_api.vnc_api.VncApi import fabric_delete [as 别名]
#.........这里部分代码省略.........
device_image_vendor_name=img_vendor
)
img_uuid = self._api.device_image_create(image)
image = self._api.device_image_read(id=img_uuid)
except RefsExistError:
self._logger.warn("Image '%s' already exists", img_name)
image = self._api.device_image_read(fq_name=img_fqname)
self._logger.debug(
"Image created:\n%s",
pprint.pformat(self._api.obj_to_dict(image), indent=4))
return image
# end create_image_and_device
def cleanup_fabric(self, fab_name):
"""delete fabric including all prouters in the fabric"""
try:
self._logger.info('Deleting fabric "%s" ...', fab_name)
fab_fqname = ['default-global-system-config', fab_name]
fab = self._api.fabric_read(fq_name=fab_fqname)
# delete all namespaces in this fabric
fab_namespaces = self._api.fabric_namespaces_list(
parent_id=fab.uuid)
for namespace in fab_namespaces.get('fabric-namespaces') or []:
self._logger.debug(
"Delete namespace: %s", namespace.get('fq_name'))
self._api.fabric_namespace_delete(namespace.get('fq_name'))
# delete fabric
self._logger.debug("Delete fabric: %s", fab_fqname)
self._api.fabric_delete(fab_fqname)
# delete all prouters in this fabric
for prouter in fab.get_physical_router_back_refs() or []:
self._delete_prouter(prouter.get('uuid'))
except NoIdError:
self._logger.warn('Fabric "%s" not found', fab_name)
# end cleanup_fabric
def cleanup_image(self, img_name,):
# image cleanup
self._logger.info("Clean up image and prouter from db")
try:
img_fqname = ['default-global-system-config', img_name]
img = self._api.device_image_read(fq_name=img_fqname)
self._logger.debug(
"Delete Image: %s", img_fqname)
self._api.device_image_delete(img_fqname)
except NoIdError:
self._logger.warn('Image "%s" not found', img_name)
def _delete_prouter(self, uuid):
prouter = self._api.physical_router_read(id=uuid)
# delete all physical and logical interfaces
ifds = self._api.physical_interfaces_list(parent_id=uuid)
for ifd in ifds.get('physical-interfaces') or []:
# delete all child logical interfaces
ifls = self._api.logical_interfaces_list(parent_id=ifd.get('uuid'))
for ifl in ifls.get('logical-interfaces') or []:
self._logger.debug(
示例2:
# 需要导入模块: from vnc_api.vnc_api import VncApi [as 别名]
# 或者: from vnc_api.vnc_api.VncApi import fabric_delete [as 别名]
namespaces = vnc_api.fabric_namespaces_list(detail=True)
for ns in namespaces:
vnc_api.fabric_namespace_delete(id=ns.uuid)
fabs = vnc_api.fabrics_list(detail=True)
for fab in fabs:
# remove fabric->vn refs
fab.set_virtual_network_list([])
vnc_api.fabric_update(fab)
# remove fabric->node_profile refs
fab.set_node_profile_list([])
vnc_api.fabric_update(fab)
# remove fabric
vnc_api.fabric_delete(id=fab.uuid)
role_configs = vnc_api.role_configs_list(detail=True)
for role_config in role_configs:
vnc_api.role_config_delete(id=role_config.uuid)
node_profiles = vnc_api.node_profiles_list(detail=True)
for node_profile in node_profiles:
node_profile.set_hardware_list([])
vnc_api.node_profile_update(node_profile)
vnc_api.node_profile_delete(id=node_profile.uuid)
job_templates = vnc_api.job_templates_list(detail=True)
for job_template in job_templates:
vnc_api.job_template_delete(id=job_template.uuid)