Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update pulumi/pkg and pulumi/sdk dependencies to v3.109.0 #553

Merged
merged 19 commits into from
Mar 10, 2024

Conversation

t0yv0
Copy link
Member

@t0yv0 t0yv0 commented Mar 8, 2024

To take full advantage of pulumi/pulumi#15526 this codebase need to depend on a later version of pulumi/pkg. Should be hopefully a routine dependency update.

@t0yv0 t0yv0 requested a review from a team March 8, 2024 16:55
@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

Something a tad fishy in pulumi/pulumi-aws#3595

@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

It appears that the codebase attempts to pin AWS to 5.35.0 but during some of the tests aws-6.25.0 gets installed anyway, which may be a change coming from the upgrade?

warning: using pulumi-language-yaml from $PATH at /home/runner/work/pulumi-yaml/pulumi-yaml/bin/pulumi-language-yaml
[resource plugin aws-native-0.98.0] installing
[resource plugin aws-6.25.0] installing

@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

Ah looks like because of pulumi/pulumi#15568 there is a problem now with the auto-pin behavior this repository depended on. Since the new ProgramTest creates a separate sandbox for the test, TestExampleWebserver now starts auto-upgrading aws to 6.x with this change which hits the regression listed above.

@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

** TODO FAIL: TestExampleAwsStaticWebsite (12.16s)

[[file:~/code/pulumi-yaml/pkg/tests/example_test.go::func TestExampleAwsStaticWebsite(t *testing.T) {][Test]]

Error: websiteURL does not exist on site-bucket

  on Pulumi.yaml line 6:

   6:     websiteUrl: ${site-bucket.websiteURL}

Existing properties are: websiteUrl, bucketName, domainName, id, tags and 22 others


Similarly caused by inadvertent AWS upgrade to 6.x

@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

The TestExampleAwsx failure similarly caused by a schema change, which might have been called out in the major version rel notes...

Previewing update (p-it-antons-mac-awsx-farga-bfb0d9b9):
[resource plugin awsx-2.5.0] installing
@ previewing update....[resource plugin aws-6.25.0] installing

+ pulumi:pulumi:Stack: (create)
    [urn=urn:pulumi:p-it-antons-mac-awsx-farga-bfb0d9b9::awsx::pulumi:pulumi:Stack::awsx-p-it-antons-mac-awsx-farga-bfb0d9b9]
@ previewing update....
Downloading provider: aws

@ previewing update.....
Error: awsx:ecs:FargateService is not assignable from {cluster: string, taskDefinitionArgs: {container: {cpu: number, image: string, memory: number, portMappings: List<{containerPort: number, targetGroup: aws:lb/targetGroup:TargetGroup}>}}}

  on Pulumi.yaml line 14:

  14:                 container:

  15:                     cpu: 512

  16:                     image: nginx:latest

  17:                     memory: 128

  18:                     portMappings:

  19:                         - containerPort: 80

  20:                           targetGroup: ${lb.defaultTargetGroup}

Cannot assign '{cluster: string, taskDefinitionArgs: {container: {cpu: number, image: string, memory: number, portMappings: List<{containerPort: number, targetGroup: aws:lb/targetGroup:TargetGroup}>}}}' to 'awsx:ecs:FargateService':

  taskDefinitionArgs: Cannot assign '{container: {cpu: number, image: string, memory: number, portMappings: List<{containerPort: number, targetGroup: aws:lb/targetGroup:TargetGroup}>}}' to 'awsx:ecs:FargateServiceTaskDefinition':

    container: Cannot assign '{cpu: number, image: string, memory: number, portMappings: List<{containerPort: number, targetGroup: aws:lb/targetGroup:TargetGroup}>}' to 'awsx:ecs:TaskDefinitionContainerDefinition':

      name: Missing required property 'name'

Resources:
    + 1 to create

@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

Per conversation with @Frassle looking into pinning provider versions in each individual test using this method from https://www.pulumi.com/docs/languages-sdks/yaml/yaml-language-reference/

resources:
  something:
    type: aws:s3:Bucket
    properties:
      ...
    options:
      version: 5.6.0

@t0yv0
Copy link
Member Author

t0yv0 commented Mar 8, 2024

One more problem here, reusing PulumiPulumiProgramTests from pkg/codegen/testing/test is no longer working since
pulumi/pulumi#15549 because it generates relative links that no longer resolve.

This was referenced Mar 9, 2024
@Frassle Frassle merged commit f72e939 into main Mar 10, 2024
5 checks passed
@Frassle Frassle deleted the dependencies/pulumi-v3.109.0 branch March 10, 2024 10:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants