https://github.com/org-formation/aws-resource-providers
A community driven repository where you can find AWS Resource Type Providers for different purposes (including org-formation ones).
https://github.com/org-formation/aws-resource-providers
aws-cloudformation aws-resources org-formation resource-providers
Last synced: 12 months ago
JSON representation
A community driven repository where you can find AWS Resource Type Providers for different purposes (including org-formation ones).
- Host: GitHub
- URL: https://github.com/org-formation/aws-resource-providers
- Owner: org-formation
- License: mit
- Created: 2020-08-13T18:32:21.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2025-04-29T17:03:09.000Z (about 1 year ago)
- Last Synced: 2025-06-05T17:07:59.566Z (about 1 year ago)
- Topics: aws-cloudformation, aws-resources, org-formation, resource-providers
- Language: TypeScript
- Homepage:
- Size: 1.52 MB
- Stars: 90
- Watchers: 7
- Forks: 18
- Open Issues: 37
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
- Security: security-hub/action-target/.npmrc
- Support: support/support-level/.npmrc
Awesome Lists containing this project
README
# AWS Resource Providers
[](https://opensource.org/licenses/MIT) [](https://github.com/org-formation/aws-resource-providers/issues)
A community driven repository where you can find AWS Resource Type Providers for different purposes (including org-formation ones)
## Resources
[](https://github.com/org-formation/aws-resource-providers/actions?query=branch%3Amaster+workflow%3Acicd) [](https://codecov.io/gh/org-formation/aws-resource-providers) [](https://nodejs.org/)
| Resource | Description | Status | Docs
|---|---|---|---|
| Community::CloudFormation::Delay | Resource that waits for a specified time period | in progress | [installation](cloud-formation/delay/installation.md)
[docs](cloud-formation/delay/docs/README.md)
[example](cloud-formation/delay/example.yml) |
| Community::CodeCommit::ApprovalRuleTemplate | Resource that allows for the creation of approval rule template for CodeCommit | in progress | [installation](code-commit/approval-rule-template/installation.md)
[docs](code-commit/approval-rule-template/docs/README.md)
[example](code-commit/approval-rule-template/example.yml) |
| Community::CodeCommit::RepositoryAssociation | Resource that allows for the association of a particular approval rule template to CodeCommit repositories | in progress | [installation](code-commit/repository-association/installation.md)
[docs](code-commit/repository-association/docs/README.md)
[example](code-commit/repository-association/example.yml) |
| Community::IAM::PasswordPolicy | Resource that allows for the creation of an IAM Password Policy (applies to entire account) | in progress | [installation](iam/password-policy/installation.md)
[docs](iam/password-policy/docs/README.md)
[example](iam/password-policy/example.yml) |
| Community::Organizations::EbsEncryptionDefaults | Region level EBS encryption defaults: encryption enabled/disabled and KmsKeyId | in progress | [installation](ec2/ebs-encryption-defaults/installation.md)
[docs](ec2/ebs-encryption-defaults/docs/README.md)
[example](ec2/ebs-encryption-defaults/example.yml) |
| Community::Organizations::NoDefaultVPC | When added to a template removes the Default VPC, when removed it re-adds it | in progress | [installation](ec2/no-default-vpc/installation.md)
[docs](ec2/no-default-vpc/docs/README.md)
[example](ec2/no-default-vpc/example.yml) |
| Community::Organizations::Policy | Resource that allows for the creation of AWS Organizations policies and attaching to different targets in the organization | in progress | [installation](organizations/policy/installation.md)
[docs](organizations/policy/docs/README.md)
[example](organizations/policy/example.yml) |
| Community::S3::PublicAccessBlock | Account level public access block (applies to all buckets within account) | in progress | [installation](s3/public-access-block/installation.md)
[docs](s3/public-access-block/docs/README.md)
[example](s3/public-access-block/example.yml) |
| Community::SSM::PublicAccessBlock | Region level settings to provide secure defaults on SSM | in progress | [installation](ssm/public-access-block/installation.md)
[docs](ssm/public-access-block/docs/README.md)
[example](ssm/public-access-block/example.yml) |
| Community::ServiceQuotas::CloudFormation | Custom Service Quota limits for CloudFormation resources. e.g: to increase the maximum number of stacks per account | in progress | [installation](service-quotas/cloud-formation/installation.md)
[docs](service-quotas/cloud-formation/docs/README.md)
[example](service-quotas/cloud-formation/example.yml) |
| Community::ServiceQuotas::S3 | Custom Service Quota limits for S3 resources. e.g: to increase the maximum number of buckets per account | in progress | [installation](service-quotas/s3/installation.md)
[docs](service-quotas/s3/docs/README.md)
[example](service-quotas/s3/example.yml) |
| Community::Account::AlternateContact | Resource that manages alternate contacts | in progress | [installation](account/alternate-contact/installation.md)
[docs](account/alternate-contact/docs/README.md)
[example](account/alternate-contact/example.yml) |
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](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-samlprovider.html) |
| Community::IAM::OpenIDConnectProvider | Resource that allows for the creation of an Open ID Connect Provider | [AWS::IAM::OIDCProvider](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-oidcprovider.html) |
## Development
Check out the master branch and run [Lerna](https://lerna.js.org/) 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](https://typescript-eslint.io/) and running unit tests via [Jest](https://jestjs.io/). The continuous integration runs these checks, but you can run them locally with:
```
npm run lint
npm test
```