@topgroup/diginext
Version:
A BUILD SERVER & CLI to deploy apps to any Kubernetes clusters.
113 lines • 4.73 kB
TypeScript
import type { NextFunction } from "express-serve-static-core";
import type { IUser, IWorkspace } from "../entities";
import type { IResponsePagination, KubeService } from "../interfaces";
import type { KubeNode } from "../interfaces/KubeNode";
import type { MonitoringQueryFilter } from "../interfaces/MonitoringQuery";
import { MonitoringNamespaceQueryFilter, MonitoringQueryOptions, MonitoringQueryParams } from "../interfaces/MonitoringQuery";
import type { AppRequest, Ownership } from "../interfaces/SystemTypes";
import { MonitorNamespaceCreateData, MonitorService } from "../services/MonitorService";
export default class MonitorController {
user: IUser;
workspace: IWorkspace;
ownership: Ownership;
service: MonitorService;
filter: MonitoringQueryFilter;
options: MonitoringQueryOptions;
pagination: IResponsePagination;
/**
* Parse the filter & option from the URL
*/
parseFilter(req: AppRequest, res?: Response, next?: NextFunction): void;
/**
* List of nodes in a cluster
*/
getNodes(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData | KubeNode[]>;
/**
* List of namespaces in a cluster
*/
getNamespaces(queryParams?: MonitoringNamespaceQueryFilter): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of all resources of a namespace in a cluster
*/
allNamespaceResources(queryParams?: MonitoringNamespaceQueryFilter): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Create namespace in a cluster
*/
createNamespace(body?: MonitorNamespaceCreateData): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Create namespace in a cluster
*/
deleteNamespace(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of K8S services
*/
getServices(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Create service in a namespace
*/
createService(body?: {
/**
* Namespace's name
*/
name: string;
/**
* @default "default"
*/
namespace?: string;
/**
* Labels
*/
labels?: {
[key: string]: string;
};
/**
* Spec
*/
spec: KubeService["spec"];
}, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Delete service in a namespace
*/
deleteService(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of K8S Ingress
*/
getIngresses(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Delete K8S Ingress
*/
deleteIngresses(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of K8S Deployment
*/
getDeploys(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Delete K8S Deployment
*/
deleteDeploys(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of K8S StatefulSet
*/
getStatefulSets(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Delete K8S StatefulSet
*/
deleteStatefulSets(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of K8S Pod
*/
getPods(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Delete K8S Pod
*/
deletePods(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* List of K8S Secret
*/
getSecrets(queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
/**
* Delete K8S Secret
*/
deleteSecrets(body?: MonitoringQueryOptions, queryParams?: MonitoringQueryParams): Promise<import("../interfaces").ResponseData & IResponsePagination>;
}
//# sourceMappingURL=MonitorController.d.ts.map