@studion/infra-code-blocks
Version:
Studion common infra components
39 lines (38 loc) • 1.51 kB
TypeScript
import * as pulumi from '@pulumi/pulumi';
import { EcsService, EcsServiceArgs } from './ecs-service';
import { Password } from './password';
export type MongoArgs = Pick<EcsServiceArgs, 'size' | 'clusterId' | 'clusterName' | 'vpcId' | 'vpcCidrBlock' | 'tags'> & {
privateSubnetIds: pulumi.Input<pulumi.Input<string>[]>;
/**
* Username for the master DB user.
*/
username: pulumi.Input<string>;
/**
* Password for the master DB user. If not specified it will be autogenerated.
* The value will be stored as a secret in AWS Secret Manager.
*/
password?: pulumi.Input<string>;
/**
* Mongo Docker image. Defaults to mongo:7.0.3.
*/
image?: pulumi.Input<string>;
/**
* Exposed service port. Defaults to 27017.
*/
port?: pulumi.Input<number>;
/**
* Configuration for persistent storage using EFS volumes.
* By default, creates a volume named 'mongo' mounted at '/data/db'.
* You can override this by providing your own volume and mount point configuration.
*/
persistentStorageConfig?: EcsServiceArgs['persistentStorageConfig'];
};
export declare class Mongo extends pulumi.ComponentResource {
readonly name: string;
readonly username: pulumi.Output<string>;
readonly port: pulumi.Output<number>;
readonly host: pulumi.Output<string>;
readonly service: EcsService;
readonly password: Password;
constructor(name: string, args: MongoArgs, opts?: pulumi.ComponentResourceOptions);
}