Skip to content

Commit

Permalink
Document AWS version resolution
Browse files Browse the repository at this point in the history
Documents how AWS provider version is selected and gives an example of overriding it.

Fixes #1191
  • Loading branch information
t0yv0 committed May 30, 2024
1 parent 512ee59 commit 0298329
Showing 1 changed file with 17 additions and 1 deletion.
18 changes: 17 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ To use this package, [install the Pulumi CLI](https://www.pulumi.com/docs/get-st

The AWS Infrastructure package is intended to provide [component](https://www.pulumi.com/docs/intro/concepts/resources/components/) 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](https://www.pulumi.com/docs/intro/concepts/resources/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 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:

Expand Down Expand Up @@ -77,6 +77,22 @@ dotnet add package Pulumi.Awsx

The configuration options available for this provider mirror those of the [Pulumi AWS Classic Provider](https://github.com/pulumi/pulumi-aws#configuration)

### 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](https://github.com/pulumi/pulumi-awsx/blob/master/awsx/package.json#L25). When this becomes problematic,
for example a newer version of AWS Classic Provider is desired, it can be specified explicitly. For example, in Python:

```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.
Expand Down

0 comments on commit 0298329

Please sign in to comment.