def create_instance(self, request, project_id, cluster_id, ns, data, category="application", kind=2): """创建实例 """ if kind == 2: client = MesosClient(request.user.token.access_token, project_id, cluster_id, None) if category == "application": resp = client.create_application(ns, data) else: resp = client.create_deployment(ns, data) else: client = K8SClient(request.user.token.access_token, project_id, cluster_id, None) curr_func = getattr(client, FUNC_MAP[category] % "create") resp = curr_func(ns, data) if resp.get("code") != ErrorCode.NoError: return APIResponse({ "code": resp.get("code") or DEFAULT_ERROR_CODE, "message": resp.get("message") }) return APIResponse({ "code": resp.get("code", DEFAULT_ERROR_CODE), "message": resp.get("message") })
def create_mesos_deployment(config, access_token=None, project_id=None, cluster_id=None, client=None): if not client: client = MesosClient(access_token, project_id, cluster_id, None) return client.create_deployment(config["metadata"]["namespace"], config)