Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

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 compatibility 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

Custom AWS Provider Versions

Pulumi dependency resolution may result in awsx.* resources using a different version of the AWS Classic Provider than the rest of the program. The version used by default is fixed for each @pulumi/awsx release and can be found in package.json. When this becomes problematic, for example a newer version of AWS Classic Provider is desired, it can be specified explicitly. For example, in Python:

import pulumi
import pulumi_aws as aws
import pulumi_awsx as awsx

awsp = aws.Provider("awsp", opts=pulumi.ResourceOptions(version="6.36.0"))
lb = awsx.lb.ApplicationLoadBalancer("lb", opts=pulumi.ResourceOptions(providers={"aws": awsp}))

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

Metadata

Release files for pulumi-awsx 3.1.0a1756324610

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pulumi-awsx 3.1.0a1756324610
File Size Uploaded Provenance
pulumi_awsx-3.1.0a1756324610.tar.gz 117.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pulumi-awsx 3.1.0a1756324610
File Interpreter ABI Platform
pulumi_awsx-3.1.0a1756324610-py3-none-any.whl Python 3 none any Details

Total release size: 251.8 kB

Release files / pulumi_awsx-3.1.0a1756324610.tar.gz

Download URL pulumi_awsx-3.1.0a1756324610.tar.gz
Size 117.2 kB
Tags Source
SHA-256 checksum
How to use checksums
a56a0ee8383152f8ccdf523c0cd82013f30bcac52bac8d5a67671bd480897bff
BLAKE2b-256 checksum
How to use checksums
cad78c66b25ce6f9d789c25bbb676d6d32b1e2940bd3d4f09eabada0e32e5ba8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.8

Release files / pulumi_awsx-3.1.0a1756324610-py3-none-any.whl

Download URL pulumi_awsx-3.1.0a1756324610-py3-none-any.whl
Size 134.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
620e289aa964bfa45959f85514e0f3bab9d922225d405ac8ed4023f9f9a2832a
BLAKE2b-256 checksum
How to use checksums
fc0340a78396e7ecdb5552a1a8ac8869c2beb2d9049a7872c3fb7776248ddad9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.8

Security for pulumi-awsx 3.1.0a1756324610

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page