-
Notifications
You must be signed in to change notification settings - Fork 3.9k
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
fix(toolkit): multi-stack apps cannot be synthesized or deployed #911
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…ression) Due to a recent cx protocol change (#868), some toolkit commands stopped respecting the "selected" stacks (the ones specified in the command line). "cdk synth" would always return the first stack, and "cdk deploy" would always deploy all stacks. Since we have test coverage gaps in the toolkit (#294), we did not discover this before we released. This change includes an initial set of integration tests for the toolkit. At the moment they should be manually executed when toolkit changes are made, but we will execute them in a pipeline. Fixes #910
eladb
changed the title
fix(toolkit): commands wouldn't work against the selected stacks (reg…
fix(toolkit): commands wouldn't work against the selected stacks
Oct 12, 2018
eladb
changed the title
fix(toolkit): commands wouldn't work against the selected stacks
fix(toolkit): multi-stack apps cannot be synthesized or deployed
Oct 12, 2018
RomainMuller
approved these changes
Oct 12, 2018
Otherwise, lerna thinks it's a real module and gets really confused
RomainMuller
added a commit
that referenced
this pull request
Oct 12, 2018
__IMPORTANT NOTE__: This release includes a [breaking change](#845) in the AWS CodePipeline construct library: * The `inputArtifacts` and `outputArtifacts` properties of `Action` were intended for internal usage only, and have consequently been renamed to `_inputArtifacts` and `_outputArtifacts` respectively. * The `artifact` property of `Action` classes was renamed to `outputArtifact`. * The `artifactName` property of `Action` classes was renamed to `outputArtifactName`. * It is no longer possible to add output artifacts to `Actions` by instantiating `Artifact`. This release also includes a [fix](#911) for a bug that would make the toolkit unusable for multi-stack applications. In order to benefit from this fix, a globally installed CDK toolkit must also be updated: ```shell $ npm i -g aws-cdk $ cdk --version 0.12.0 (build ...) ``` Like always, you will also need to update your project's library versions: |Language|Update?| |--------|-------| |JavaScript/TypeScript (npm)|[`npx npm-check-updates -u`](https://www.npmjs.com/package/npm-check-updates)| |Java (maven)|[`mvn versions:use-latest-versions`](https://www.mojohaus.org/versions-maven-plugin/use-latest-versions-mojo.html) |.NET (NuGet)|[`nuget update`](https://docs.microsoft.com/en-us/nuget/tools/cli-ref-update) * **aws-cdk:** multi-stack apps can be synthesized or deployed [#911](#911). * **@aws-cdk/aws-codebuild:** allow passing oauth token to GitHubEnterpriseSource [#908](#908) * **@aws-cdk/aws-codepipeline:** make input and output artifact names optional when creating Actions. [#845](#945) * **@aws-cdk/aws-cloudformation:** add permission management to CreateUpdate and Delete Stack CodePipeline Actions. [#880](#880)
RomainMuller
added a commit
that referenced
this pull request
Oct 12, 2018
* **aws-codebuild:** allow passing oauth token to GitHubEnterpriseSource ([#908](#908)) ([c23da91](c23da91)) * **toolkit:** multi-stack apps cannot be synthesized or deployed ([#911](#911)) ([5511076](5511076)), closes [#868](#868) [#294](#294) [#910](#910) * **aws-cloudformation:** add permission management to CreateUpdate and Delete Stack CodePipeline Actions. ([#880](#880)) ([8b3ae43](8b3ae43)) * **aws-codepipeline:** make input and output artifact names optional when creating Actions. ([#845](#845)) ([3d91c93](3d91c93)) * **aws-codepipeline:** this commit contains the following breaking changes: * Rename 'artifactName' in Action construction properties to 'outputArtifactName' * Rename the 'artifact' property of Actions to 'outputArtifact' * No longer allow adding output artifacts to Actions by instantiating the Artifact class * Rename Action#input/outputArtifacts properties to _input/_outputArtifacts Previously, we always required customers to explicitly name the output artifacts the Actions used in the Pipeline, and to explicitly "wire together" the outputs of one Action as inputs to another. With this change, the CodePipeline Construct generates artifact names, if the customer didn't provide one explicitly, and tries to find the first available output artifact to use as input to a newly created Action that needs it, thus turning both the input and output artifacts from required to optional properties.
Merged
RomainMuller
added a commit
that referenced
this pull request
Oct 12, 2018
* **aws-codebuild:** allow passing oauth token to GitHubEnterpriseSource ([#908](#908)) ([c23da91](c23da91)) * **toolkit:** multi-stack apps cannot be synthesized or deployed ([#911](#911)) ([5511076](5511076)), closes [#868](#868) [#294](#294) [#910](#910) * **aws-cloudformation:** add permission management to CreateUpdate and Delete Stack CodePipeline Actions. ([#880](#880)) ([8b3ae43](8b3ae43)) * **aws-codepipeline:** make input and output artifact names optional when creating Actions. ([#845](#845)) ([3d91c93](3d91c93)) * **aws-codepipeline:** this commit contains the following breaking changes: * Rename 'artifactName' in Action construction properties to 'outputArtifactName' * Rename the 'artifact' property of Actions to 'outputArtifact' * No longer allow adding output artifacts to Actions by instantiating the Artifact class * Rename Action#input/outputArtifacts properties to _input/_outputArtifacts Previously, we always required customers to explicitly name the output artifacts the Actions used in the Pipeline, and to explicitly "wire together" the outputs of one Action as inputs to another. With this change, the CodePipeline Construct generates artifact names, if the customer didn't provide one explicitly, and tries to find the first available output artifact to use as input to a newly created Action that needs it, thus turning both the input and output artifacts from required to optional properties.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Due to a recent cx protocol change (#868), some toolkit commands stopped respecting the "selected" stacks (the ones specified in the command line).
"cdk synth" would always return the first stack, and "cdk deploy" would always deploy all stacks.
Since we have test coverage gaps in the toolkit (#294), we did not discover this before we released.
This change includes an initial set of integration tests for the toolkit. At the moment they should be manually executed when toolkit changes are made, but we will execute them in a pipeline.
Fixes #910
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license.