• Stars
    star
    140
  • Rank 261,473 (Top 6 %)
  • Language
    TypeScript
  • License
    Apache License 2.0
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Useful constants for aws-cdk

CDK Constants

This repository contains constants that make it easier to work with the aws-cdk (CDK).

Why?

The CDK is awesome but it currently lacks types when initializing constructs such as IAM service principals and managed policies. Finding the right construct names requires diving into AWS documentation. Because there is no verification of these construct initializers, errors are only surfaced after deployment and via a rollback.

This library aims to be an up to date constants library for all things AWS so the above never happens again!

Quickstart

Install or update from npm

TypeScript/Javascript

npm i cdk-constants

Python

pip install cdk-constants

Usage

** TypeScript **

import { ServicePrincipals, ManagedPolicies } from "cdk-constants";

const lambdaRole = new Role(this, "lambdaDomainChecker", {
  assumedBy: new ServicePrincipal(ServicePrincipals.LAMBDA),
  managedPolicies: [
    ManagedPolicy.fromAwsManagedPolicyName(
      ManagedPolicies.AWS_LAMBDA_BASIC_EXECUTION_ROLE
    )
  ]
});

** Python **

from cdk_constants import ServicePrincipals, ManagedPolicies

lambda_role = Role(self, "lambdaDomainChecker",
    assumed_by=ServicePrincipal(ServicePrincipals.LAMBDA),
    managed_policies=[
        ManagedPolicy.from_aws_managed_policy_name(ManagedPolicies.AWS_LAMBDA_BASIC_EXECUTION_ROLE)
    ]
)

Properties

ServicePrincipals

  • AWS services principals

ManagedPolicies

  • Managed AWS policies

Credits

cdk-constants wouldn't be possible without modules from the following authors

Contributions

All contributors are welcome. As you are reading this, AWS has probably released a new service. Please see CONTRIBUTING for information on how to setup a development environment and submit code.

Some upcoming items on the roadmap:

  • list of aws regions and azs, including gov and china
  • list of all iam permissions
  • jsii compilation into different languages that CDK supports

License

cdk-constants is distributed under the Apache License, Version 2.0.

See LICENSE for more information.