/aws-resource-providers

A community driven repository where you can find AWS Resource Type Providers for different purposes (including org-formation ones).

Primary LanguageTypeScriptMIT LicenseMIT

AWS Resource Providers

License MIT contributions welcome

A community driven repository where you can find AWS Resource Type Providers for different purposes (including org-formation ones)

Resources

GitHub Workflow Status Codecov Node.js version

Resource Description Status Docs
Community::CloudFormation::Delay Resource that waits for a specified time period in progress installation
docs
example
Community::CodeCommit::ApprovalRuleTemplate Resource that allows for the creation of approval rule template for CodeCommit in progress installation
docs
example
Community::CodeCommit::RepositoryAssociation Resource that allows for the association of a particular approval rule template to CodeCommit repositories in progress installation
docs
example
Community::IAM::PasswordPolicy Resource that allows for the creation of an IAM Password Policy (applies to entire account) in progress installation
docs
example
Community::Organizations::EbsEncryptionDefaults Region level EBS encryption defaults: encryption enabled/disabled and KmsKeyId in progress installation
docs
example
Community::Organizations::NoDefaultVPC When added to a template removes the Default VPC, when removed it re-adds it in progress installation
docs
example
Community::Organizations::Policy Resource that allows for the creation of AWS Organizations policies and attaching to different targets in the organization in progress installation
docs
example
Community::S3::PublicAccessBlock Account level public access block (applies to all buckets within account) in progress installation
docs
example
Community::SSM::PublicAccessBlock Region level settings to provide secure defaults on SSM in progress installation
docs
example
Community::ServiceQuotas::CloudFormation Custom Service Quota limits for CloudFormation resources. e.g: to increase the maximum number of stacks per account in progress installation
docs
example
Community::ServiceQuotas::S3 Custom Service Quota limits for S3 resources. e.g: to increase the maximum number of buckets per account in progress installation
docs
example
Community::Account::AlternateContact Resource that manages alternate contacts in progress installation
docs
example

The following resource providers used to be part of this community effort but are now supported by AWS natively:

Resource Description AWS Native resource
Community::IAM::SamlProvider Resource that allows for the creation of an SAML based Identity Provider AWS::IAM::SAMLProvider
Community::IAM::OpenIDConnectProvider Resource that allows for the creation of an Open ID Connect Provider AWS::IAM::OIDCProvider

Development

Check out the master branch and run Lerna to get started:

npm run bootstrap

Now that you have the dependencies installed for every package, you can run this command in the individual package folder to compile them. By doing so in the root, all packages will be compiled.

npm run build

Linting is done via TypeScript ESLint and running unit tests via Jest. The continuous integration runs these checks, but you can run them locally with:

npm run lint
npm test