@topgroup/diginext
Version:
A BUILD SERVER & CLI to deploy apps to any Kubernetes clusters.
307 lines • 9.56 kB
TypeScript
import mongoose from "mongoose";
import type { HiddenBodyKeys } from "../interfaces";
import type { CloudProviderType } from "../interfaces/SystemTypes";
import type { IBase } from "./Base";
import type { ICluster } from "./Cluster";
export interface ICloudProvider extends IBase {
/**
* Cloud provider name
*/
name?: string;
/**
* Cloud provider short name, without spacing & special characters
*/
shortName?: CloudProviderType;
/**
* Content of the API access token to use services on this cloud provider
* - Apply for: Digital Ocean
*/
apiAccessToken?: string;
/**
* Content of the Service Account credentials ti access services on this cloud provider
* - Apply for: Google Cloud, AWS,...
* - For example: Kubernetes Clusters, Single Sign-On,...
*/
serviceAccount?: string;
/**
* List of available clusters on this provider
*/
clusters?: string[] | ICluster[];
}
export type CloudProviderDto = Omit<ICloudProvider, keyof HiddenBodyKeys>;
export declare const cloudProviderSchema: mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
collection: string;
timestamps: true;
}, {
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}>> & mongoose.FlatRecord<{
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}> & {
_id: mongoose.Types.ObjectId;
}>;
export declare const CloudProviderModel: mongoose.Model<{
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}, {}, {}, {}, mongoose.Document<unknown, {}, {
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}> & {
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
} & {
_id: mongoose.Types.ObjectId;
}, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, {
collection: string;
timestamps: true;
}, {
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}>> & mongoose.FlatRecord<{
createdAt: NativeDate;
updatedAt: NativeDate;
} & {
public: boolean;
active: boolean;
createdAt: Date;
updatedAt: Date;
clusters: mongoose.Types.ObjectId[];
workspace?: mongoose.Types.ObjectId;
workspaceId?: mongoose.Types.ObjectId;
name?: string;
slug?: string;
project?: mongoose.Types.ObjectId;
projectId?: mongoose.Types.ObjectId;
owner?: mongoose.Types.ObjectId;
metadata?: any;
ownerSlug?: string;
ownerId?: mongoose.Types.ObjectId;
workspaceSlug?: string;
updatedBy?: mongoose.Types.ObjectId;
updatedById?: mongoose.Types.ObjectId;
deletedBy?: mongoose.Types.ObjectId;
deletedById?: mongoose.Types.ObjectId;
deletedAt?: Date;
migratedAt?: Date;
serviceAccount?: string;
apiAccessToken?: string;
shortName?: "custom" | "gcloud" | "digitalocean";
}> & {
_id: mongoose.Types.ObjectId;
}>>;
//# sourceMappingURL=CloudProvider.d.ts.map