def delete_deployment(self, namespace, deployment_name, enforce=0): """删除deployment name""" url = "{host}/mesos/namespaces/{ns}/deployments/{name}".format( host=self.scheduler_host, ns=namespace, name=deployment_name) params = {"enforce": enforce} resp = http_delete(url, params=params, headers=self.headers) return resp
def delete_mesos_app_instance(self, namespace, app_name, enforce=0): """删除application实例""" url = "{host}/mesos/namespaces/{ns}/applications/{app_name}".format( host=self.scheduler_host, ns=namespace, app_name=app_name) params = {"enforce": enforce} resp = http_delete(url, params=params, headers=self.headers) return resp
def delete_ingress(self, namespace, name): """删除 ingress """ url = '{host}/namespaces/{namespace}/ingresses/{name}'.format( host=self.scheduler_host, namespace=namespace, name=name) resp = http_delete(url, headers=self.headers, **HTTP_KWARGS) return resp
def delete_configmap(self, namespace, name): url = "{host}/mesos/namespaces/{ns}/configmaps/{name}".format( host=self.scheduler_host, ns=namespace, name=name ) resp = http_delete(url, headers=self.headers) return resp
def delete_configmap(self, namespace, name): """删除configmap """ url = '{host}/namespaces/{namespace}/configmaps/{name}'.format( host=self.scheduler_host, namespace=namespace, name=name) resp = http_delete(url, headers=self.headers, **HTTP_KWARGS) return resp
def delete_namespace(self, name): """删除namespaces """ url = '{host}/namespaces/{name}'.format(host=self.scheduler_host, name=name) resp = http_delete(url, headers=self.headers) return resp
def delete_service(self, namespace, name): """删除service """ url = "{host}/mesos/namespaces/{ns}/services/{name}".format( host=self.scheduler_host, ns=namespace, name=name) resp = http_delete(url, headers=self.headers) return resp
def delete_service_monitor(self, namespace, name): context = self.get_context_or_raise() host = f"{self._bcs_server_host}{context['server_address_path']}".rstrip( "/") headers = {"Authorization": f"Bearer {context['user_token']}"} url = f"{host}/apis/monitoring.coreos.com/v1/namespaces/{namespace}/servicemonitors/{name}" return http_delete(url, headers=headers, raise_for_status=False)
def delete_statefulset(self, namespace, name): """删除statefulset """ url = '{host}/namespaces/{namespace}/statefulsets/{name}'.format( host=self.scheduler_host, namespace=namespace, name=name) resp = http_delete(url, headers=self.headers, **HTTP_KWARGS) return resp
def delete_chart_version(prefix_path, chart_name, version, username, pwd): url = f"{prefix_path}/api/charts/{chart_name}/{version}" resp = http_delete(url, auth=(username, pwd), raise_for_status=False) # 返回{"deleted" : True} 或 {"error" : "remove xxx failed: no such file or directory"} if not (resp.get("deleted") or "no such file or directory" in resp.get("error", "")): raise error_codes.APIError(_("删除chart失败,{}").format(resp)) return resp
def delete_command(self, category, namespace, name, params): """删除命令""" url = "{host}/mesos/command/{category}/{ns}/{name}".format( host=self.scheduler_host, category=category, ns=namespace, name=name) return http_delete(url, params=params, headers=self.headers)
def delete_namespace(access_token, project_id, cluster_id, ns_id): url = f'{CC_HOST}/projects/{project_id}/clusters/{cluster_id}/namespaces/{ns_id}/' headers = { "X-BKAPI-AUTHORIZATION": json.dumps({ "access_token": access_token }) } return http_delete(url, headers=headers)
def delete_custom_resource(self, name, namespace, group='clb.bmsf.tencent.com', apiversion='v1', plural='clbingresses'): url = f'{self.scheduler_host}/mesos/customresources/{group}/{apiversion}/namespaces/{namespace}/{plural}/{name}' # noqa result = http_delete(url, headers=self.headers) return self._handle_custom_resource_result(result)
def delete_deployment(self, namespace, deployment_name): """删除deployment """ url = '{host}/namespaces/{namespace}/deployments/{name}'.format( host=self.scheduler_host, namespace=namespace, name=deployment_name) resp = http_delete(url, headers=self.headers, **HTTP_KWARGS) return resp
def delete_cluster_namespace(access_token, project_id, cluster_id): """删除集群下的命名空间""" url = f"{BCS_CC_API_PRE_URL}/projects/{project_id}/clusters/{cluster_id}/batch_delete_namespaces/" headers = { "X-BKAPI-AUTHORIZATION": json.dumps({ "access_token": access_token, "project_id": project_id }) } return http_delete(url, headers=headers)
def delete_res(self, resource_type, resource_id): """ 删除资源 """ url = f'{settings.BK_IAM_HOST}/{self.system_prefix}/{self.system_id}/resources' data = { "scope_type": "project", "scope_id": self.project_code, "resource_type": resource_type, "resource_id": resource_id } return http_delete(url, json=data, **self.kwargs)
def delete_cluster_node(self, cluster_type, operator, ip_list, data=()): """删除集群节点 """ url = '{host}/clusters/{cluster_id}/nodes'.format( host=self.cluster_keeper_host, cluster_id=self.cluster_id, ) data = dict(data) data.update({ 'project_id': self.project_id, 'access_token': self.access_token, 'operator': operator, 'clusterType': cluster_type, 'ipList': ip_list, }) return http_delete(url, json=data, headers=self.headers, timeout=DEFAULT_TIMEOUT)
def delete_metrics(self, namespace, metric_name, cluster_type='mesos'): """ 删除监控 """ # 参数必须是一个列表 if not isinstance(metric_name, list): metric_name = [metric_name] name = ','.join(metric_name) url = '{host}/clustertype/{cluster_type}/clusters/{cluster_id}/namespaces/{namespace}/metrics?name={name}'.format( # noqa host=self.metric_host, cluster_type=cluster_type, cluster_id=self.cluster_id, namespace=namespace, name=name) resp = http_delete(url, headers=self.headers) return resp
def delete_cluster(access_token, project_id, cluster_id): """删除集群 """ url = f'{CC_HOST}/projects/{project_id}/clusters/{cluster_id}/' params = {"access_token": access_token} return http_delete(url, params=params)
def delete_hpa(self, namespace, name): """删除HPA """ url = f'{self.api_host}/v4/scheduler/mesos/crd/namespaces/{namespace}/autoscaler/{name}' result = http_delete(url, headers=self.headers) return result
def delete_cluster(access_token, project_id, cluster_id): """删除集群""" url = f"{BCS_CC_API_PRE_URL}/projects/{project_id}/clusters/{cluster_id}/" params = {"access_token": access_token} return http_delete(url, params=params)
def delete_service_monitor(self, namespace, name): url = f"{self.context['host']}/apis/monitoring.coreos.com/v1/namespaces/{namespace}/servicemonitors/{name}" return http_delete(url, headers=self._headers_for_service_monitor, raise_for_status=False)
def delete_service_monitor(self, namespace, name): """删除servicemonitor""" url_prefix = self._get_service_monitor_url(namespace) url = f"{url_prefix}/{name}" return http_delete(url, headers=self.headers, raise_for_status=False)