def initial(self, request, *args, **kwargs): super(ComposeBaseView, self).initial(request, *args, **kwargs) compose_id = kwargs.get("compose_id", None) if not compose_id: raise ImportError("You url not contains args - compose_id -") group_compose = compose_repo.get_group_compose_by_compose_id(compose_id) if group_compose: self.group_compose = group_compose else: raise BusinessException( Response(general_message(404, "compose not found", "compose组{0}不存在".format(compose_id)), status=404)) self.initial_header_info(request)
def check_compose(self, region, tenant, compose_id): group_compose = compose_repo.get_group_compose_by_compose_id(compose_id) if not group_compose: return 404, "未找到对应的compose内容", None body = dict() body["tenant_id"] = tenant.tenant_id body["source_type"] = "docker-compose" body["source_body"] = group_compose.compose_content res, body = region_api.service_source_check(region, tenant.tenant_name, body) bean = body["bean"] group_compose.check_uuid = bean["check_uuid"] group_compose.check_event_id = bean["event_id"] group_compose.create_status = "checking" group_compose.save() group = group_repo.get_group_by_pk(tenant.tenant_id, region, group_compose.group_id) compose_bean = group_compose.to_dict() if group: compose_bean["group_name"] = group.group_name return 200, "success", compose_bean
def get_group_compose_by_compose_id(self, compose_id): return compose_repo.get_group_compose_by_compose_id(compose_id)