1 | ;
|
2 | var _a;
|
3 | Object.defineProperty(exports, "__esModule", { value: true });
|
4 | exports.FileSystem = void 0;
|
5 | const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
|
6 | const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
7 | const iam = require("@aws-cdk/aws-iam");
|
8 | const core_1 = require("@aws-cdk/core");
|
9 | /**
|
10 | * Represents the filesystem for the Lambda function
|
11 | */
|
12 | class FileSystem {
|
13 | /**
|
14 | * @param config the FileSystem configurations for the Lambda function
|
15 | */
|
16 | constructor(config) {
|
17 | this.config = config;
|
18 | try {
|
19 | jsiiDeprecationWarnings._aws_cdk_aws_lambda_FileSystemConfig(config);
|
20 | }
|
21 | catch (error) {
|
22 | if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
|
23 | Error.captureStackTrace(error, FileSystem);
|
24 | }
|
25 | throw error;
|
26 | }
|
27 | }
|
28 | /**
|
29 | * mount the filesystem from Amazon EFS
|
30 | * @param ap the Amazon EFS access point
|
31 | * @param mountPath the target path in the lambda runtime environment
|
32 | */
|
33 | static fromEfsAccessPoint(ap, mountPath) {
|
34 | return new FileSystem({
|
35 | localMountPath: mountPath,
|
36 | arn: ap.accessPointArn,
|
37 | dependency: [ap.fileSystem.mountTargetsAvailable],
|
38 | connections: ap.fileSystem.connections,
|
39 | policies: [
|
40 | new iam.PolicyStatement({
|
41 | actions: ['elasticfilesystem:ClientMount'],
|
42 | resources: ['*'],
|
43 | conditions: {
|
44 | StringEquals: {
|
45 | 'elasticfilesystem:AccessPointArn': ap.accessPointArn,
|
46 | },
|
47 | },
|
48 | }),
|
49 | new iam.PolicyStatement({
|
50 | actions: ['elasticfilesystem:ClientWrite'],
|
51 | resources: [core_1.Stack.of(ap).formatArn({
|
52 | service: 'elasticfilesystem',
|
53 | resource: 'file-system',
|
54 | resourceName: ap.fileSystem.fileSystemId,
|
55 | })],
|
56 | }),
|
57 | ],
|
58 | });
|
59 | }
|
60 | }
|
61 | exports.FileSystem = FileSystem;
|
62 | _a = JSII_RTTI_SYMBOL_1;
|
63 | FileSystem[_a] = { fqn: "@aws-cdk/aws-lambda.FileSystem", version: "1.190.0" };
|
64 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXN5c3RlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZpbGVzeXN0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsd0NBQXdDO0FBQ3hDLHdDQUFtRDtBQXNDbkQ7O0dBRUc7QUFDSCxNQUFhLFVBQVU7SUFrQ3JCOztPQUVHO0lBQ0gsWUFBc0MsTUFBd0I7UUFBeEIsV0FBTSxHQUFOLE1BQU0sQ0FBa0I7Ozs7OzsrQ0FyQ25ELFVBQVU7Ozs7S0FxQzhDO0lBcENuRTs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLGtCQUFrQixDQUFDLEVBQW9CLEVBQUUsU0FBaUI7UUFDdEUsT0FBTyxJQUFJLFVBQVUsQ0FBQztZQUNwQixjQUFjLEVBQUUsU0FBUztZQUN6QixHQUFHLEVBQUUsRUFBRSxDQUFDLGNBQWM7WUFDdEIsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQztZQUNqRCxXQUFXLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXO1lBQ3RDLFFBQVEsRUFBRTtnQkFDUixJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7b0JBQ3RCLE9BQU8sRUFBRSxDQUFDLCtCQUErQixDQUFDO29CQUMxQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUM7b0JBQ2hCLFVBQVUsRUFBRTt3QkFDVixZQUFZLEVBQUU7NEJBQ1osa0NBQWtDLEVBQUUsRUFBRSxDQUFDLGNBQWM7eUJBQ3REO3FCQUNGO2lCQUNGLENBQUM7Z0JBQ0YsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO29CQUN0QixPQUFPLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztvQkFDMUMsU0FBUyxFQUFFLENBQUMsWUFBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUM7NEJBQ2pDLE9BQU8sRUFBRSxtQkFBbUI7NEJBQzVCLFFBQVEsRUFBRSxhQUFhOzRCQUN2QixZQUFZLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxZQUFZO3lCQUN6QyxDQUFDLENBQUM7aUJBQ0osQ0FBQzthQUNIO1NBQ0YsQ0FBQyxDQUFDO0tBQ0o7O0FBaENILGdDQXNDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3Rpb25zIH0gZnJvbSAnQGF3cy1jZGsvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBlZnMgZnJvbSAnQGF3cy1jZGsvYXdzLWVmcyc7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnQGF3cy1jZGsvYXdzLWlhbSc7XG5pbXBvcnQgeyBJRGVwZW5kYWJsZSwgU3RhY2sgfSBmcm9tICdAYXdzLWNkay9jb3JlJztcblxuLyoqXG4gKiBGaWxlU3lzdGVtIGNvbmZpZ3VyYXRpb25zIGZvciB0aGUgTGFtYmRhIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZVN5c3RlbUNvbmZpZyB7XG4gIC8qKlxuICAgKiBtb3VudCBwYXRoIGluIHRoZSBsYW1iZGEgcnVudGltZSBlbnZpcm9ubWVudFxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYWxNb3VudFBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogQVJOIG9mIHRoZSBhY2Nlc3MgcG9pbnRcbiAgICovXG4gIHJlYWRvbmx5IGFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBhcnJheSBvZiBJRGVwZW5kYWJsZSB0aGF0IGxhbWJkYSBmdW5jdGlvbiBkZXBlbmRzIG9uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZGVwZW5kZW5jeVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwZW5kZW5jeT86IElEZXBlbmRhYmxlW11cblxuICAvKipcbiAgICogY29ubmVjdGlvbnMgb2JqZWN0IHVzZWQgdG8gYWxsb3cgaW5ncmVzcyB0cmFmZmljIGZyb20gbGFtYmRhIGZ1bmN0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gY29ubmVjdGlvbnMgcmVxdWlyZWQgdG8gYWRkIGV4dHJhIGluZ3Jlc3MgcnVsZXMgZm9yIExhbWJkYSBmdW5jdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY29ubmVjdGlvbnM/OiBDb25uZWN0aW9ucztcblxuICAvKipcbiAgICogYWRkaXRpb25hbCBJQU0gcG9saWNpZXMgcmVxdWlyZWQgZm9yIHRoZSBsYW1iZGEgZnVuY3Rpb25cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhZGRpdGlvbmFsIHBvbGljaWVzIHJlcXVpcmVkXG4gICAqL1xuICByZWFkb25seSBwb2xpY2llcz86IGlhbS5Qb2xpY3lTdGF0ZW1lbnRbXTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBmaWxlc3lzdGVtIGZvciB0aGUgTGFtYmRhIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWxlU3lzdGVtIHtcbiAgLyoqXG4gICAqIG1vdW50IHRoZSBmaWxlc3lzdGVtIGZyb20gQW1hem9uIEVGU1xuICAgKiBAcGFyYW0gYXAgdGhlIEFtYXpvbiBFRlMgYWNjZXNzIHBvaW50XG4gICAqIEBwYXJhbSBtb3VudFBhdGggdGhlIHRhcmdldCBwYXRoIGluIHRoZSBsYW1iZGEgcnVudGltZSBlbnZpcm9ubWVudFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tRWZzQWNjZXNzUG9pbnQoYXA6IGVmcy5JQWNjZXNzUG9pbnQsIG1vdW50UGF0aDogc3RyaW5nKTogRmlsZVN5c3RlbSB7XG4gICAgcmV0dXJuIG5ldyBGaWxlU3lzdGVtKHtcbiAgICAgIGxvY2FsTW91bnRQYXRoOiBtb3VudFBhdGgsXG4gICAgICBhcm46IGFwLmFjY2Vzc1BvaW50QXJuLFxuICAgICAgZGVwZW5kZW5jeTogW2FwLmZpbGVTeXN0ZW0ubW91bnRUYXJnZXRzQXZhaWxhYmxlXSxcbiAgICAgIGNvbm5lY3Rpb25zOiBhcC5maWxlU3lzdGVtLmNvbm5lY3Rpb25zLFxuICAgICAgcG9saWNpZXM6IFtcbiAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgIGFjdGlvbnM6IFsnZWxhc3RpY2ZpbGVzeXN0ZW06Q2xpZW50TW91bnQnXSxcbiAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgICAgIFN0cmluZ0VxdWFsczoge1xuICAgICAgICAgICAgICAnZWxhc3RpY2ZpbGVzeXN0ZW06QWNjZXNzUG9pbnRBcm4nOiBhcC5hY2Nlc3NQb2ludEFybixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSksXG4gICAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICBhY3Rpb25zOiBbJ2VsYXN0aWNmaWxlc3lzdGVtOkNsaWVudFdyaXRlJ10sXG4gICAgICAgICAgcmVzb3VyY2VzOiBbU3RhY2sub2YoYXApLmZvcm1hdEFybih7XG4gICAgICAgICAgICBzZXJ2aWNlOiAnZWxhc3RpY2ZpbGVzeXN0ZW0nLFxuICAgICAgICAgICAgcmVzb3VyY2U6ICdmaWxlLXN5c3RlbScsXG4gICAgICAgICAgICByZXNvdXJjZU5hbWU6IGFwLmZpbGVTeXN0ZW0uZmlsZVN5c3RlbUlkLFxuICAgICAgICAgIH0pXSxcbiAgICAgICAgfSksXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBjb25maWcgdGhlIEZpbGVTeXN0ZW0gY29uZmlndXJhdGlvbnMgZm9yIHRoZSBMYW1iZGEgZnVuY3Rpb25cbiAgICovXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgY29uZmlnOiBGaWxlU3lzdGVtQ29uZmlnKSB7IH1cbn1cbiJdfQ== |
\ | No newline at end of file |