@aws-cdk/integ-runner
Version:
CDK Integration Testing Tool
123 lines • 3.16 kB
TypeScript
import type { DefaultCdkOptions, DestroyOptions as BaseDestroyOptions, DeployOptions as BaseDeployOptions } from '@aws-cdk/cloud-assembly-schema/lib/integ-tests';
import type { DeploymentMethod } from '@aws-cdk/toolkit-lib';
/**
* Events emitted during watch mode
*/
export type WatchEvents = {
onStdout?: (chunk: any) => void;
onStderr?: (chunk: any) => void;
onClose?: (code: number | null) => void;
};
/**
* Options to use with cdk synth
*/
export interface SynthOptions {
/**
* The command to use to execute the app.
* This is typically the same thing that normally
* gets passed to `--app`
*
* e.g. "node 'bin/my-app.ts'"
* or 'go run main.go'
*/
readonly app: string;
/**
* Emits the synthesized cloud assembly into a directory
*
* @default cdk.out
*/
readonly output?: string;
/**
* Additional context
*
* @default - no additional context
*/
readonly context?: Record<string, string>;
/**
* Additional environment variables to set in the
* execution environment
*
* @default - no additional env
*/
readonly env?: {
readonly [name: string]: string;
};
}
/**
* Options for cdk list
*/
export interface ListOptions extends DefaultCdkOptions {
}
/**
* Options to use with cdk deploy
*/
export interface DeployOptions extends BaseDeployOptions {
/**
* Whether to show CloudWatch logs for hotswapped resources
* locally in the users terminal
*
* @default - false
*/
readonly traceLogs?: boolean;
}
/**
* Options to use with cdk watch
*/
export interface WatchOptions extends DeployOptions {
/**
* Deployment method
*/
readonly deploymentMethod?: DeploymentMethod;
}
/**
* Options for cdk destroy
*/
export type DestroyOptions = BaseDestroyOptions;
/**
* Options to create a Cloud Assembly
*/
export interface CxOptions extends DefaultCdkOptions {
/**
* Resolve the current default environment an provide as environment variables to the app.
*
* @default true
*/
readonly resolveDefaultEnvironment?: boolean;
/**
* Additional environment variables
*
* These environment variables will be set in addition to the environment
* variables currently set in the process. A value of `undefined` will
* unset a particular environment variable.
*/
readonly env?: Record<string, string | undefined>;
}
/**
* AWS CDK CLI operations interface
*
* This interface defines the contract for CDK operations that can be
* performed by different engine implementations.
*/
export interface ICdk {
/**
* cdk synth
*/
synth(options: SynthOptions): Promise<void>;
/**
* cdk list
*/
list(options: ListOptions): Promise<string[]>;
/**
* cdk deploy
*/
deploy(options: DeployOptions): Promise<void>;
/**
* cdk destroy
*/
destroy(options: DestroyOptions): Promise<void>;
/**
* cdk watch
*/
watch(options: DeployOptions, events?: WatchEvents): Promise<void>;
}
//# sourceMappingURL=cdk-interface.d.ts.map