This is a project containing components for use with Pulumi, a tool for provisioning cloud infrastructure based on a description written with general purpose programming languages.
This project provides a Pulumi component named Vpc
, which can be used to create an AWS VPC based on some of the
good practices described by the AWS documentation, posts made by AWS solutions engineers, and the experience of the
package author, contributors and reviewers.
For example, address space is assigned in an asymetric manner between public and private subnets, as described in the article Practical VPC Design. VPC Endpoints for S3 and DynamoDB can optionally be configured, and flow logging can be enabled if desired.
The Vpc
component is implemented in both Node.js (using TypeScript) and Python 3, with identical functionality and a
very similar API between the two languages. Both support Pulumi v2.1.0 and above.
This package does not currently support entirely private VPCs (i.e. those without an internet gateway attached), though it is intended to support such designs in future.
A CHANGELOG is maintained for this project.
$ npm install --save '@jen20/pulumi-aws-vpc'
$ pip3 install 'jen20_pulumi_aws_vpc'
An example of the usage in a Pulumi program of each component is available:
This package is licensed under the Mozilla Public License, v2.0.
Please feel free to open issues or pull requests on GitHub!