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

Bugfix for issue #24561 #32247

Closed
wants to merge 1 commit into from
Closed

Bugfix for issue #24561 #32247

wants to merge 1 commit into from

Conversation

1001R
Copy link

@1001R 1001R commented Nov 22, 2024

Issue # (if applicable)

Closes #24561.

Reason for this change

If you use ProductStackHistory to manage the historic versions of your product and add a new version to it, the latest version (before adding the new one) changes because the asset hash computed for the product template changes. This happens because the asset hash for the current version and historic versions is computed in a different way.

Description of changes

I changed the code to make sure that the asset hash for a product template is computed the same way, no matter if derived directly from a ProductStack instance (as is the case for the current version) or read from a snapshot. For the current version, the code used to synthesize the template in memory and hash the string, before writing the template to disk. I changed the order, writing the template to disk and then use FileSystem.fingerprint on the file - which is exactly what is used for snapshot versions.

This way, the asset hashes of historic version of existing products based ProductStack won't change as the code changes affects only the current version.

Description of how you validated changes

I've added a unit test to cover this particular scenario. However, I wasn't able to update the integration tests. I tried but no matter what I did I always got the following error message although I configured the credentials for my account and bootstrapped it correctly. It's my first contribution, so I may have missed something obvious.

Could not assume role in target account using current credentials (which are for account ************) getaddrinfo ENOTFOUND sts.test-region.amazonaws.com . Please make sure that this role exists in the account. If it doesn't exist, (re)-bootstrap the environment with the right '--trust', using the latest version of the CDK CLI

Checklist


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

@aws-cdk-automation aws-cdk-automation requested a review from a team November 22, 2024 09:16
@github-actions github-actions bot added bug This issue is a bug. effort/medium Medium work item – several days of effort p2 beginning-contributor [Pilot] contributed between 0-2 PRs to the CDK labels Nov 22, 2024
Copy link
Collaborator

@aws-cdk-automation aws-cdk-automation left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The pull request linter has failed. See the aws-cdk-automation comment below for failure reasons. If you believe this pull request should receive an exemption, please comment and provide a justification.

A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed add Clarification Request to a comment.

@aws-cdk-automation
Copy link
Collaborator

The pull request linter fails with the following errors:

❌ The title of this pull request does not follow the Conventional Commits format, see https://www.conventionalcommits.org/.
❌ Pull requests from `main` branch of a fork cannot be accepted. Please reopen this contribution from another branch on your fork. For more information, see https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md#step-4-pull-request.

PRs must pass status checks before we can provide a meaningful review.

If you would like to request an exemption from the status checks or clarification on feedback, please leave a comment on this PR containing Exemption Request and/or Clarification Request.

@aws-cdk-automation
Copy link
Collaborator

Your pull request must be based off of a branch in a personal account (not an organization owned account, and not the main branch). You must also have the setting enabled that allows the CDK team to push changes to your branch (this setting is enabled by default for personal accounts, and cannot be enabled for organization owned accounts). The reason for this is that our automation needs to synchronize your branch with our main after it has been approved, and we cannot do that if we cannot push to your branch.

Copy link

Comments on closed issues and PRs are hard for our team to see.
If you need help, please open a new issue that references this one.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 22, 2024
@aws-cdk-automation
Copy link
Collaborator

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildv2Project1C6BFA3F-wQm2hXv2jqQv
  • Commit ID: fe543ea
  • Result: FAILED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
beginning-contributor [Pilot] contributed between 0-2 PRs to the CDK bug This issue is a bug. effort/medium Medium work item – several days of effort p2
Projects
None yet
Development

Successfully merging this pull request may close these issues.

(servicecatalog): ProductStackHistory changes last product version ID
2 participants