@topgroup/diginext
Version:
A BUILD SERVER & CLI to deploy apps to any Kubernetes clusters.
60 lines • 2.03 kB
TypeScript
import type { IApp, IBuild, ICluster, IRelease, IUser, IWorkspace } from "../../entities";
import type { FetchDeploymentResult } from "./fetch-deployment";
import type { GenerateDeploymentResult } from "./generate-deployment";
export type DeployBuildOptions = {
/**
* ### `REQUIRED`
* Deploy environment
*/
env: string;
/**
* ### `REQUIRED`
* The USER who process this request
*/
owner: IUser;
/**
* ### `REQUIRED`
* Workspace
*/
workspace: IWorkspace;
/**
* Current version of the Diginext CLI
*/
cliVersion?: string;
/**
* ### CAUTION
* If `TRUE`, it will find and wipe out the current deployment, then deploy a new one!
*/
shouldUseFreshDeploy?: boolean;
/**
* ### ONLY APPLY FOR DEPLOYING to PROD
* Force roll out the release to "prod" deploy environment (skip the "prerelease" environment)
* @default false
*/
forceRollOut?: boolean;
/**
* ### WARNING
* Skip checking deployed POD's ready status.
* - The response status will always be SUCCESS even if the pod is unable to start up properly.
* @default false
*/
skipReadyCheck?: boolean;
/**
* ### WARNING
* Skip watching the progress of deployment, let it run in background, won't return the deployment's status.
* @default true
*/
deployInBackground?: boolean;
};
export type DeployBuildResult = {
app: IApp;
build: IBuild;
release: IRelease;
deployment: GenerateDeploymentResult;
endpoint: string;
prerelease: FetchDeploymentResult;
};
export declare const processDeployBuild: (build: IBuild, release: IRelease, cluster: ICluster, options: DeployBuildOptions) => Promise<void>;
export declare const deployBuild: (build: IBuild, options: DeployBuildOptions) => Promise<DeployBuildResult>;
export declare const deployWithBuildSlug: (buildSlug: string, options: DeployBuildOptions) => Promise<DeployBuildResult>;
//# sourceMappingURL=deploy-build.d.ts.map