def disable_service_when_delete_port(self, tenant, service,
                                      container_port):
     """删除端口时禁用相关服务"""
     # 禁用健康检测
     from console.services.app_config import probe_service
     probe = probe_repo.get_service_probe(service.service_id).first()
     if probe and container_port == probe.port:
         probe.is_used = False
         probe_service.update_service_probea(tenant=tenant,
                                             service=service,
                                             data=probe.to_dict())
Beispiel #2
0
 def disable_service_when_delete_port(self, tenant, service, container_port):
     """删除端口时禁用相关服务"""
     # 禁用健康检测
     from console.services.app_config import probe_service
     probe = probe_repo.get_service_probe(service.service_id).filter(is_used=True).first()
     if probe and container_port == probe.port:
         probe.is_used = False
         try:
             probe_service.update_service_probea(tenant=tenant, service=service, data=probe.to_dict())
         except RegionApiBaseHttpClient.CallApiError as e:
             logger.exception(e)
             if e.status != 404:
                 raise AbortRequest(msg=e.message, status_code=e.status)
Beispiel #3
0
    def put(self, request, *args, **kwargs):
        """
        修改服务探针,包括启用停用 mode参数必填
        ---
        serializer: ProbeSerilizer
        """
        try:
            data = request.data

            serializer = ProbeUpdateSerilizer(data=data)
            if not serializer.is_valid():
                result = general_message(400, "{0}".format(serializer.errors),
                                         "参数异常")
                return Response(result, status=result["code"])
            params = dict(serializer.data)

            code, msg, probe = probe_service.update_service_probea(
                tenant=self.tenant, service=self.service, data=params)
            if code != 200:
                return Response(general_message(code, "update probe error",
                                                msg),
                                status=code)
            result = general_message(200,
                                     u"success",
                                     "修改成功",
                                     bean=probe.to_dict())
        except Exception as e:
            logger.exception(e)
            result = error_message(e.message)
        return Response(result, status=result["code"])
    def put(self, request, *args, **kwargs):
        """
        修改组件探针,包括启用停用 mode参数必填
        ---
        serializer: ProbeSerilizer
        """
        data = request.data

        probe = probe_service.update_service_probea(tenant=self.tenant,
                                                    service=self.service,
                                                    data=data)
        result = general_message(200,
                                 u"success",
                                 "修改成功",
                                 bean=(probe.to_dict() if probe else probe))
        return Response(result, status=result["code"])
    def put(self, request, *args, **kwargs):
        """
        修改服务探针,包括启用停用 mode参数必填
        ---
        serializer: ProbeSerilizer
        """
        data = request.data

        try:
            code, msg, probe = probe_service.update_service_probea(tenant=self.tenant, service=self.service, data=data)
        except CallApiError as e:
            logger.exception(e)
            raise AbortRequest(msg=e.message, status_code=e.status)
        if code != 200:
            return Response(general_message(code, "update probe error", msg), status=code)
        result = general_message(200, u"success", "修改成功", bean=probe.to_dict())
        return Response(result, status=result["code"])