UNPKG

@cdklabs/aws-data-solutions-framework

Version:
65 lines 7.95 kB
"use strict"; // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 Object.defineProperty(exports, "__esModule", { value: true }); const cdk = require("aws-cdk-lib"); const aws_iam_1 = require("aws-cdk-lib/aws-iam"); const path = require("path"); /// !show const dsf_provider_1 = require("../lib/dsf-provider"); class ExampleIsCompleteDsfProviderStack extends cdk.Stack { constructor(scope, id) { super(scope, id); /// !hide const myOnEventManagedPolicy = new aws_iam_1.ManagedPolicy(this, 'Policy1', { document: new aws_iam_1.PolicyDocument({ statements: [ new aws_iam_1.PolicyStatement({ actions: [ 's3:*', ], effect: aws_iam_1.Effect.ALLOW, resources: ['*'], }), ], }), }); const myIsCompleteManagedPolicy = new aws_iam_1.ManagedPolicy(this, 'Policy2', { document: new aws_iam_1.PolicyDocument({ statements: [ new aws_iam_1.PolicyStatement({ actions: [ 's3:*', ], effect: aws_iam_1.Effect.ALLOW, resources: ['*'], }), ], }), }); /// !show const myProvider = new dsf_provider_1.DsfProvider(this, 'Provider', { providerName: 'my-provider', onEventHandlerDefinition: { managedPolicy: myOnEventManagedPolicy, handler: 'on-event.handler', depsLockFilePath: path.join(__dirname, './resources/lambda/my-cr/package-lock.json'), entryFile: path.join(__dirname, './resources/lambda/my-cr/on-event.mjs'), }, isCompleteHandlerDefinition: { managedPolicy: myIsCompleteManagedPolicy, handler: 'is-complete.handler', depsLockFilePath: path.join(__dirname, './resources/lambda/my-cr/package-lock.json'), entryFile: path.join(__dirname, './resources/lambda/my-cr/is-complete.mjs'), } }); new cdk.CustomResource(this, 'CustomResource', { serviceToken: myProvider.serviceToken, resourceType: 'Custom::MyCustomResource', }); } } /// !hide const app = new cdk.App(); new ExampleIsCompleteDsfProviderStack(app, 'ExampleIsCompleteDsfProviderStack'); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHNmLXByb3ZpZGVyLWlzLWNvbXBsZXRlLmxpdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9leGFtcGxlcy9kc2YtcHJvdmlkZXItaXMtY29tcGxldGUubGl0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxxRUFBcUU7QUFDckUsc0NBQXNDOztBQUV0QyxtQ0FBbUM7QUFDbkMsaURBQTZGO0FBQzdGLDZCQUE2QjtBQUU3QixTQUFTO0FBQ1Qsc0RBQWtEO0FBRWxELE1BQU0saUNBQWtDLFNBQVEsR0FBRyxDQUFDLEtBQUs7SUFDdkQsWUFBWSxLQUFnQixFQUFFLEVBQVU7UUFDdEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixTQUFTO1FBQ1QsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLHVCQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUNoRSxRQUFRLEVBQUUsSUFBSSx3QkFBYyxDQUFDO2dCQUMzQixVQUFVLEVBQUU7b0JBQ1YsSUFBSSx5QkFBZSxDQUFDO3dCQUNsQixPQUFPLEVBQUU7NEJBQ1AsTUFBTTt5QkFDUDt3QkFDRCxNQUFNLEVBQUUsZ0JBQU0sQ0FBQyxLQUFLO3dCQUNwQixTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUM7cUJBQ2pCLENBQUM7aUJBQ0g7YUFDRixDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLHVCQUFhLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUNuRSxRQUFRLEVBQUUsSUFBSSx3QkFBYyxDQUFDO2dCQUMzQixVQUFVLEVBQUU7b0JBQ1YsSUFBSSx5QkFBZSxDQUFDO3dCQUNsQixPQUFPLEVBQUU7NEJBQ1AsTUFBTTt5QkFDUDt3QkFDRCxNQUFNLEVBQUUsZ0JBQU0sQ0FBQyxLQUFLO3dCQUNwQixTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUM7cUJBQ2pCLENBQUM7aUJBQ0g7YUFDRixDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBRUgsU0FBUztRQUNULE1BQU0sVUFBVSxHQUFHLElBQUksMEJBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ25ELFlBQVksRUFBRSxhQUFhO1lBQzNCLHdCQUF3QixFQUFFO2dCQUN4QixhQUFhLEVBQUUsc0JBQXNCO2dCQUNyQyxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSw0Q0FBNEMsQ0FBQztnQkFDcEYsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLHVDQUF1QyxDQUFDO2FBQ3pFO1lBQ0QsMkJBQTJCLEVBQUU7Z0JBQzNCLGFBQWEsRUFBRSx5QkFBeUI7Z0JBQ3hDLE9BQU8sRUFBRSxxQkFBcUI7Z0JBQzlCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLDRDQUE0QyxDQUFDO2dCQUNwRixTQUFTLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsMENBQTBDLENBQUM7YUFDNUU7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQzdDLFlBQVksRUFBRSxVQUFVLENBQUMsWUFBWTtZQUNyQyxZQUFZLEVBQUUsMEJBQTBCO1NBQ3pDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQUNELFNBQVM7QUFDVCxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUMxQixJQUFJLGlDQUFpQyxDQUFDLEdBQUcsRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgTWFuYWdlZFBvbGljeSwgUG9saWN5RG9jdW1lbnQsIFBvbGljeVN0YXRlbWVudCwgRWZmZWN0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG4vLy8gIXNob3dcbmltcG9ydCB7IERzZlByb3ZpZGVyIH0gZnJvbSAnLi4vbGliL2RzZi1wcm92aWRlcic7XG5cbmNsYXNzIEV4YW1wbGVJc0NvbXBsZXRlRHNmUHJvdmlkZXJTdGFjayBleHRlbmRzIGNkay5TdGFja3tcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgXG4gICAgLy8vICFoaWRlXG4gICAgY29uc3QgbXlPbkV2ZW50TWFuYWdlZFBvbGljeSA9IG5ldyBNYW5hZ2VkUG9saWN5KHRoaXMsICdQb2xpY3kxJywge1xuICAgICAgZG9jdW1lbnQ6IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgJ3MzOionLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuICAgICAgICAgICAgcmVzb3VyY2VzOiBbJyonXSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSxcbiAgICAgIH0pLFxuICAgIH0pO1xuICAgIFxuICAgIGNvbnN0IG15SXNDb21wbGV0ZU1hbmFnZWRQb2xpY3kgPSBuZXcgTWFuYWdlZFBvbGljeSh0aGlzLCAnUG9saWN5MicsIHtcbiAgICAgIGRvY3VtZW50OiBuZXcgUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICdzMzoqJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBlZmZlY3Q6IEVmZmVjdC5BTExPVyxcbiAgICAgICAgICAgIHJlc291cmNlczogWycqJ10sXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KSxcbiAgICB9KTtcbiAgICBcbiAgICAvLy8gIXNob3dcbiAgICBjb25zdCBteVByb3ZpZGVyID0gbmV3IERzZlByb3ZpZGVyKHRoaXMsICdQcm92aWRlcicsIHtcbiAgICAgIHByb3ZpZGVyTmFtZTogJ215LXByb3ZpZGVyJyxcbiAgICAgIG9uRXZlbnRIYW5kbGVyRGVmaW5pdGlvbjoge1xuICAgICAgICBtYW5hZ2VkUG9saWN5OiBteU9uRXZlbnRNYW5hZ2VkUG9saWN5LFxuICAgICAgICBoYW5kbGVyOiAnb24tZXZlbnQuaGFuZGxlcicsXG4gICAgICAgIGRlcHNMb2NrRmlsZVBhdGg6IHBhdGguam9pbihfX2Rpcm5hbWUsICcuL3Jlc291cmNlcy9sYW1iZGEvbXktY3IvcGFja2FnZS1sb2NrLmpzb24nKSxcbiAgICAgICAgZW50cnlGaWxlOiBwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi9yZXNvdXJjZXMvbGFtYmRhL215LWNyL29uLWV2ZW50Lm1qcycpLFxuICAgICAgfSxcbiAgICAgIGlzQ29tcGxldGVIYW5kbGVyRGVmaW5pdGlvbjoge1xuICAgICAgICBtYW5hZ2VkUG9saWN5OiBteUlzQ29tcGxldGVNYW5hZ2VkUG9saWN5LFxuICAgICAgICBoYW5kbGVyOiAnaXMtY29tcGxldGUuaGFuZGxlcicsXG4gICAgICAgIGRlcHNMb2NrRmlsZVBhdGg6IHBhdGguam9pbihfX2Rpcm5hbWUsICcuL3Jlc291cmNlcy9sYW1iZGEvbXktY3IvcGFja2FnZS1sb2NrLmpzb24nKSxcbiAgICAgICAgZW50cnlGaWxlOiBwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi9yZXNvdXJjZXMvbGFtYmRhL215LWNyL2lzLWNvbXBsZXRlLm1qcycpLFxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgbmV3IGNkay5DdXN0b21SZXNvdXJjZSh0aGlzLCAnQ3VzdG9tUmVzb3VyY2UnLCB7XG4gICAgICBzZXJ2aWNlVG9rZW46IG15UHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpNeUN1c3RvbVJlc291cmNlJyxcbiAgICB9KTtcbiAgfVxufVxuLy8vICFoaWRlXG5jb25zdCBhcHAgPSBuZXcgY2RrLkFwcCgpO1xubmV3IEV4YW1wbGVJc0NvbXBsZXRlRHNmUHJvdmlkZXJTdGFjayhhcHAsICdFeGFtcGxlSXNDb21wbGV0ZURzZlByb3ZpZGVyU3RhY2snKTtcblxuXG5cbiJdfQ==