Skip to main content

Pulumi Amazon Web Services (AWS) AWSX Components.

Project description

Actions Status Slack NPM version Python version NuGet version PkgGoDev License

Pulumi AWS Infrastructure Components

Pulumi's framework for Amazon Web Services (AWS) infrastructure.

To use this package, install the Pulumi CLI. For a streamlined Pulumi walkthrough, including language runtime installation and AWS configuration, see the Crosswalk for AWS documentation.

The AWS Infrastructure package is intended to provide component wrappers around many core AWS 'raw' resources to make them easier and more convenient to use. In general, the @pulumi/awsx package mirrors the module structure of @pulumi/aws (i.e. @pulumi/awsx/ecs or @pulumi/awsx/ec2). These components are designed to take care of much of the redundancy and boilerplate necessary when using the raw AWS resources, while still striving to expose all underlying functionality if needed.

The AWS Infrastructure package undergoes constant improvements and additions. While we will strive to maintain backward compatability here, we will occasionally make breaks here as appropriate if it helps improve the overall quality of this package.

The AWS Infrastructure package exposes many high level abstractions. Including:

  • ec2. A module that makes it easier to work with your AWS network, subnets, and security groups. By default, the resources in the package follow the AWS Best Practices, but can be configured as desired in whatever ways you want. Most commonly, this package is used to acquire the default Vpc for a region (using awsx.ec2.DefaultNetwork). However, it can also be used to easily create or augment an existing Vpc.

  • ecs. A module that makes it easy to create and configure clusters, tasks and services for running containers. Convenience resources are created to make the common tasks of creating EC2 or Fargate services and tasks much simpler.

  • lb. A module for simply setting up Elastic Load Balancing. This module provides convenient ways to set up either Network or Application load balancers, along with the appropriate ELB Target Groups and Listeners in order to have a high availability, automatically-scaled service. These ELB components also work well with the other awsx components. For example, an lb.defaultTarget can be passed in directly as the portMapping target of an ecs.FargateService.

Installing

This package is available in many languages in the standard packaging formats.

Node.js (Java/TypeScript)

To use from JavaScript or TypeScript in Node.js, install using either npm:

npm install @pulumi/awsx

or yarn:

yarn add @pulumi/awsx

Python

To use from Python, install using pip:

pip install pulumi-awsx

Go

To use from Go, use go get to grab the latest version of the library

go get github.com/pulumi/pulumi-awsx/sdk

.NET

To use from .NET, install using dotnet add package:

dotnet add package Pulumi.Awsx

Configuration

The configuration options available for this provider mirror those of the Pulumi AWS Classic Provider

Migration from 0.x to 1.0

Before version 1, this package only supported components in TypeScript. All the existing components from the 0.x releases are now available in the classic namespace. The classic namespace will remain until the next major version release but will only receive updates for critical security fixes.

  1. Change references from @pulumi/awsx to @pulumi/awsx/classic to maintain existing behaviour.
  2. Refactor to replace the classic components with the new top-level components.

Note: The new top-level components (outside the classic namespace) may require additional code changes and resource re-creation.

Notable changes

  • Removed ECS Cluster as this did not add any functionality over the AWS Classic ECS Cluster resource.
  • Removed Vpc.fromExistingIds() as this was originally added because other components depended on the concrete VPC component class. The new components in v1 no longer have hard dependencies on other resources, so instead the subnets from the existing VPC can be passed into other components directly.

References

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pulumi_awsx-1.0.0a1715626018.tar.gz (84.8 kB view details)

Uploaded Source

Built Distribution

pulumi_awsx-1.0.0a1715626018-py3-none-any.whl (99.5 kB view details)

Uploaded Python 3

File details

Details for the file pulumi_awsx-1.0.0a1715626018.tar.gz.

File metadata

File hashes

Hashes for pulumi_awsx-1.0.0a1715626018.tar.gz
Algorithm Hash digest
SHA256 32a2a4d633ccab64316df39a363d5e5f6a86bbe75e10edcedc4b2e7fb796e338
MD5 cb02aa9ef79a3a0cbe5032ca08ee3cb9
BLAKE2b-256 af15ee61758dc4eb67f9e38589a33c6541c0ca1ec26c6ce0a3ce5109ed032f26

See more details on using hashes here.

File details

Details for the file pulumi_awsx-1.0.0a1715626018-py3-none-any.whl.

File metadata

File hashes

Hashes for pulumi_awsx-1.0.0a1715626018-py3-none-any.whl
Algorithm Hash digest
SHA256 a7791b06cc89eb46deec942b2324f2b68c14402e82504d7ea79a9d4e8bd86ef5
MD5 3687cd91aadd21c1187a9e22f868b0ef
BLAKE2b-256 aa1eaf4a4d9be2b4d5c439ae2925007b4ac4e44e62a346a7ebb485de7bf4d7e7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page