@stacksjs/cloud
Version:
The Stacks cloud/serverless integration & implementation.
32 lines (29 loc) • 985 B
TypeScript
import type { Construct } from 'constructs';
import type { NestedCloudProps } from '../types';
export declare interface FileSystemStackProps extends NestedCloudProps {
vpc: ec2.Vpc
}
export declare class FileSystemStack {
fileSystem: efs.FileSystem
accessPoint: efs.AccessPoint
constructor(scope: Construct, props: FileSystemStackProps) {
this.fileSystem = new efs.FileSystem(scope, 'FileSystem', {
fileSystemName: `${props.slug}-${props.appEnv}-efs`,
vpc: props.vpc,
removalPolicy: RemovalPolicy.DESTROY,
lifecyclePolicy: efs.LifecyclePolicy.AFTER_7_DAYS,
performanceMode: efs.PerformanceMode.GENERAL_PURPOSE,
throughputMode: efs.ThroughputMode.BURSTING,
enableAutomaticBackups: true,
encrypted: true,
})
this.accessPoint = new efs.AccessPoint(scope, 'FileSystemAccessPoint', {
fileSystem: this.fileSystem,
path: '/',
posixUser: {
uid: '1000',
gid: '1000',
},
})
}
}