@cdklabs/aws-data-solutions-framework
Version:
L3 CDK Constructs used to build data solutions with AWS
23 lines • 3.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const aws_cdk_lib_1 = require("aws-cdk-lib");
const aws_iam_1 = require("aws-cdk-lib/aws-iam");
const dsf = require("../../index");
class ExampleGrantAthenaWorkGroupStack extends aws_cdk_lib_1.Stack {
constructor(scope, id) {
super(scope, id);
const athenaExampleRole = new aws_iam_1.Role(this, 'AthenaWgExampleRole', {
assumedBy: new aws_iam_1.ServicePrincipal('ec2.amazonaws.com')
});
/// !show
const athenaWg = new dsf.consumption.AthenaWorkGroup(this, 'AthenaWorkGroupGrant', {
name: 'athena-grant',
resultLocationPrefix: 'athena-results/',
});
athenaWg.grantRunQueries(athenaExampleRole);
/// !hide
}
}
const app = new aws_cdk_lib_1.App();
new ExampleGrantAthenaWorkGroupStack(app, 'ExampleGrantAthenaWorkGroupStack');
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRoZW5hLXdvcmtncm91cC1ncmFudC5saXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uc3VtcHRpb24vZXhhbXBsZXMvYXRoZW5hLXdvcmtncm91cC1ncmFudC5saXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw2Q0FBeUM7QUFFekMsaURBQTZEO0FBQzdELG1DQUFtQztBQUVuQyxNQUFNLGdDQUFpQyxTQUFRLG1CQUFLO0lBQ2xELFlBQVksS0FBZ0IsRUFBRSxFQUFVO1FBQ3RDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFFaEIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQUksQ0FBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUU7WUFDOUQsU0FBUyxFQUFFLElBQUksMEJBQWdCLENBQUMsbUJBQW1CLENBQUM7U0FDckQsQ0FBQyxDQUFBO1FBQ0YsU0FBUztRQUNULE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFO1lBQ2pGLElBQUksRUFBRSxjQUFjO1lBQ3BCLG9CQUFvQixFQUFFLGlCQUFpQjtTQUN4QyxDQUFDLENBQUE7UUFFRixRQUFRLENBQUMsZUFBZSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDM0MsU0FBUztJQUNYLENBQUM7Q0FDRjtBQUNELE1BQU0sR0FBRyxHQUFHLElBQUksaUJBQUcsRUFBRSxDQUFBO0FBQ3JCLElBQUksZ0NBQWdDLENBQUMsR0FBRyxFQUFFLGtDQUFrQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcHAsIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBSb2xlLCBTZXJ2aWNlUHJpbmNpcGFsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBkc2YgZnJvbSAnLi4vLi4vaW5kZXgnO1xuXG5jbGFzcyBFeGFtcGxlR3JhbnRBdGhlbmFXb3JrR3JvdXBTdGFjayBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZClcblxuICAgIGNvbnN0IGF0aGVuYUV4YW1wbGVSb2xlID0gbmV3IFJvbGUodGhpcywgJ0F0aGVuYVdnRXhhbXBsZVJvbGUnLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBTZXJ2aWNlUHJpbmNpcGFsKCdlYzIuYW1hem9uYXdzLmNvbScpXG4gICAgfSlcbiAgICAvLy8gIXNob3dcbiAgICBjb25zdCBhdGhlbmFXZyA9IG5ldyBkc2YuY29uc3VtcHRpb24uQXRoZW5hV29ya0dyb3VwKHRoaXMsICdBdGhlbmFXb3JrR3JvdXBHcmFudCcsIHtcbiAgICAgIG5hbWU6ICdhdGhlbmEtZ3JhbnQnLFxuICAgICAgcmVzdWx0TG9jYXRpb25QcmVmaXg6ICdhdGhlbmEtcmVzdWx0cy8nLFxuICAgIH0pXG5cbiAgICBhdGhlbmFXZy5ncmFudFJ1blF1ZXJpZXMoYXRoZW5hRXhhbXBsZVJvbGUpXG4gICAgLy8vICFoaWRlXG4gIH1cbn1cbmNvbnN0IGFwcCA9IG5ldyBBcHAoKVxubmV3IEV4YW1wbGVHcmFudEF0aGVuYVdvcmtHcm91cFN0YWNrKGFwcCwgJ0V4YW1wbGVHcmFudEF0aGVuYVdvcmtHcm91cFN0YWNrJylcbiJdfQ==