gke.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:cloudark 作者: cloud-ark 项目源码 文件源码
def delete_cluster(self, env_id, env_info, resource_obj):
        fmlogger.debug("Deleting GKE cluster")

        res_db.Resource().update(resource_obj.id, {'status': 'deleting'})
        try:
            filtered_description = ast.literal_eval(resource_obj.filtered_description)
            cluster_name = filtered_description['cluster_name']
            project = filtered_description['project']
            zone = filtered_description['zone']

            # Network delete is not working for some reason. So temporarily
            # commenting it out.
            #try:
            #    self._delete_network(project, cluster_name)
            #except Exception as e:
            #    fmlogger.error("Exception deleting network %s " % str(e))
            #    env_update = {}
            #    env_update['output_config'] = str({'error': str(e)})
            #    env_db.Environment().update(env_id, env_update)

            self._delete_firewall_rule(project, cluster_name)

            try:
                resp = self.gke_service.projects().zones().clusters().delete(
                    projectId=project,
                    zone=zone,
                    clusterId=cluster_name
                ).execute()
                fmlogger.debug(resp)
            except Exception as e:
                fmlogger.error("Encountered exception when deleting cluster %s" % e)

            available = True
            while available:
                try:
                    resp = self.gke_service.projects().zones().clusters().get(
                        projectId=project,
                        zone=zone,
                        clusterId=cluster_name).execute()
                except Exception as e:
                    fmlogger.error("Exception encountered in retrieving cluster. Cluster does not exist. %s " % e)
                    available = False
                    break
                time.sleep(3)
        except Exception as e:
            fmlogger.error(e)

        res_db.Resource().delete(resource_obj.id)
        fmlogger.debug("Done deleting GKE cluster.")
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号