Package: pulumi-awsx
Pulumi AWS Infrastructure ComponentsPulumi'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 theCrosswalk for AWS documentation.The AWS Infrastructure package is intended to providecomponentwrappers around many core AWS 'raw' resources to make them easier and more convenient to use.  In general, the@pulumi/awsxpackage mirrors the module structure of@pulumi/aws(i.e.@pulumi/awsx/ecsor@pulumi/awsx/ec2).  Thesecomponentsare 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 theAWS 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 (usingawsx.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 upElastic Load Balancing. This module provides convenient ways to set up eitherNetworkorApplicationload 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, anlb.defaultTargetcan be passed in directly as theportMappingtarget of anecs.FargateService.InstallingThis 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 eithernpm:npminstall@pulumi/awsxoryarn:yarnadd@pulumi/awsxPythonTo use from Python, install usingpip:pipinstallpulumi-awsxGoTo use from Go, usego getto grab the latest version of the librarygogetgithub.com/pulumi/pulumi-awsx/sdk.NETTo use from .NET, install usingdotnet add package:dotnetaddpackagePulumi.AwsxConfigurationThe configuration options available for this provider mirror those of thePulumi AWS Classic ProviderMigration from 0.x to 1.0Before version 1, this package only supported components in TypeScript. All the existing components from the 0.x releases are now available in theclassicnamespace. Theclassicnamespace will remain until the next major version release but will only receive updates for critical security fixes.Change references from@pulumi/awsxto@pulumi/awsx/classicto maintain existing behaviour.Refactor to replace the classic components with the new top-level components.Note:The new top-level components (outside theclassicnamespace) may require additional code changes and resource re-creation.Notable changesRemoved ECS Cluster as this did not add any functionality over theAWS Classic ECS Cluster resource.RemovedVpc.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.ReferencesTutorialAPI Reference DocumentationExamplesCrosswalk for AWS Guide