Skip to content

Commit 677e108

Browse files
authored
chore(release): 2.167.0 (#32114)
2 parents 7bb9203 + 589df9c commit 677e108

File tree

707 files changed

+273961
-100139
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

707 files changed

+273961
-100139
lines changed

.github/workflows/codecov.yml

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Codecov
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
pull_request:
7+
branches: [ "main" ]
8+
9+
jobs:
10+
collect:
11+
name: collect
12+
if: github.repository == 'aws/aws-cdk'
13+
runs-on: ubuntu-latest
14+
steps:
15+
- name: Checkout
16+
uses: actions/checkout@v4
17+
18+
- name: Set up Node
19+
uses: actions/setup-node@v4
20+
21+
- name: Install dependencies
22+
run: cd packages/aws-cdk && yarn install
23+
24+
- name: Build CLI
25+
run: cd packages/aws-cdk && npx lerna run build --scope=aws-cdk
26+
27+
- name: Run tests
28+
run: cd packages/aws-cdk && yarn test
29+
30+
- name: Upload results to Codecov
31+
uses: codecov/codecov-action@v4
32+
with:
33+
directory: packages/aws-cdk/coverage
34+
fail_ci_if_error: true
35+
flags: suite.unit
36+
token: ${{ secrets.CODECOV_TOKEN }}

.mergify.yml

+24
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ queue_rules:
1515
- "#changes-requested-reviews-by=0"
1616
- status-success~=AWS CodeBuild us-east-1
1717
- status-success=validate-pr
18+
- status-success=codecov/patch
19+
- status-success=codecov/patch/packages/aws-cdk
20+
- status-success=codecov/project
21+
- status-success=codecov/project/packages/aws-cdk
1822
commit_message_template: |-
1923
{{ title }} (#{{ number }})
2024
{{ body }}
@@ -33,6 +37,10 @@ queue_rules:
3337
- "#changes-requested-reviews-by=0"
3438
- status-success~=AWS CodeBuild us-east-1
3539
- status-success=validate-pr
40+
- status-success=codecov/patch
41+
- status-success=codecov/patch/packages/aws-cdk
42+
- status-success=codecov/project
43+
- status-success=codecov/project/packages/aws-cdk
3644
commit_message_template: |-
3745
{{ title }} (#{{ number }})
3846
{{ body }}
@@ -64,6 +72,10 @@ pull_request_rules:
6472
- "#changes-requested-reviews-by=0"
6573
- status-success~=AWS CodeBuild us-east-1
6674
- status-success=validate-pr
75+
- status-success=codecov/patch
76+
- status-success=codecov/patch/packages/aws-cdk
77+
- status-success=codecov/project
78+
- status-success=codecov/project/packages/aws-cdk
6779
- name: automatic merge (2+ approvers)
6880
actions:
6981
comment:
@@ -84,6 +96,10 @@ pull_request_rules:
8496
- "#changes-requested-reviews-by=0"
8597
- status-success~=AWS CodeBuild us-east-1
8698
- status-success=validate-pr
99+
- status-success=codecov/patch
100+
- status-success=codecov/patch/packages/aws-cdk
101+
- status-success=codecov/project
102+
- status-success=codecov/project/packages/aws-cdk
87103
- name: automatic merge (no-squash)
88104
actions:
89105
comment:
@@ -104,6 +120,10 @@ pull_request_rules:
104120
- "#changes-requested-reviews-by=0"
105121
- status-success~=AWS CodeBuild us-east-1
106122
- status-success=validate-pr
123+
- status-success=codecov/patch
124+
- status-success=codecov/patch/packages/aws-cdk
125+
- status-success=codecov/project
126+
- status-success=codecov/project/packages/aws-cdk
107127
- name: remove stale reviews
108128
actions:
109129
dismiss_reviews:
@@ -143,3 +163,7 @@ pull_request_rules:
143163
- "#changes-requested-reviews-by=0"
144164
- status-success~=AWS CodeBuild us-east-1
145165
- status-success=validate-pr
166+
- status-success=codecov/patch
167+
- status-success=codecov/patch/packages/aws-cdk
168+
- status-success=codecov/project
169+
- status-success=codecov/project/packages/aws-cdk

CHANGELOG.v2.alpha.md

+13
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,19 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [2.167.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.166.0-alpha.0...v2.167.0-alpha.0) (2024-11-13)
6+
7+
8+
### Features
9+
10+
* **ivs:** support recording configuration for channel ([#31899](https://github.com/aws/aws-cdk/issues/31899)) ([8a3734d](https://github.com/aws/aws-cdk/commit/8a3734d25ce36460b6fee583a7e2049b17f79d87)), closes [#31780](https://github.com/aws/aws-cdk/issues/31780)
11+
* **redshift:** relocating a cluster ([#31993](https://github.com/aws/aws-cdk/issues/31993)) ([b763d86](https://github.com/aws/aws-cdk/commit/b763d866d660f72bf70c1cf37dadd58769642746))
12+
13+
14+
### Bug Fixes
15+
16+
* **scheduler-targets-alpha:** add dlq policy to execution role instead of queue policy ([#32032](https://github.com/aws/aws-cdk/issues/32032)) ([b953b2a](https://github.com/aws/aws-cdk/commit/b953b2a3f01a1e75baf6426bbff5f63e49d3e626)), closes [#31785](https://github.com/aws/aws-cdk/issues/31785)
17+
518
## [2.166.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.165.0-alpha.0...v2.166.0-alpha.0) (2024-11-06)
619

720

CHANGELOG.v2.md

+21
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,27 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [2.167.0](https://github.com/aws/aws-cdk/compare/v2.166.0...v2.167.0) (2024-11-13)
6+
7+
8+
### Features
9+
10+
* **cli:** upgrade aws-sdk to sdkv3 ([#31702](https://github.com/aws/aws-cdk/issues/31702)) ([5bc0662](https://github.com/aws/aws-cdk/commit/5bc0662bacf7eca814f09b7560d77a68e3f5ddea)), closes [#25870](https://github.com/aws/aws-cdk/issues/25870) [#26292](https://github.com/aws/aws-cdk/issues/26292) [#20956](https://github.com/aws/aws-cdk/issues/20956) [#24744](https://github.com/aws/aws-cdk/issues/24744) [#27265](https://github.com/aws/aws-cdk/issues/27265)
11+
* **elasticloadbalancingv2:** enable zonal shift for network load balancer ([#31990](https://github.com/aws/aws-cdk/issues/31990)) ([497abdc](https://github.com/aws/aws-cdk/commit/497abdc72482173c45a674ab24f2c18dbdcfaf93)), closes [#31983](https://github.com/aws/aws-cdk/issues/31983)
12+
* **kms:** support KEY_AGREEMENT for keyUsage ([#30993](https://github.com/aws/aws-cdk/issues/30993)) ([2323877](https://github.com/aws/aws-cdk/commit/23238774aa3ca9a80dd406a43e51c3a6bbb68d42)), closes [#30989](https://github.com/aws/aws-cdk/issues/30989)
13+
* **lambda:** add Python 3.13 runtime ([#32054](https://github.com/aws/aws-cdk/issues/32054)) ([e0ebcfe](https://github.com/aws/aws-cdk/commit/e0ebcfe8821d97788356798512a5c4e1e508cd7c))
14+
* **lambda:** add supportsSnapStart config to dotnet8 and python 3.12 ([#32112](https://github.com/aws/aws-cdk/issues/32112)) ([53f4713](https://github.com/aws/aws-cdk/commit/53f47133fd8ce1bfdd77eb81c197665006b35105))
15+
* **lambda:** support for customer managed encryption (CMCMK) ([#32072](https://github.com/aws/aws-cdk/issues/32072)) ([2f16415](https://github.com/aws/aws-cdk/commit/2f16415c45fcbd11103788ed0aece10e521c8e59))
16+
* update L1 CloudFormation resource definitions ([#32090](https://github.com/aws/aws-cdk/issues/32090)) ([6303b72](https://github.com/aws/aws-cdk/commit/6303b72580e0381dcbb291ad7f424cfd4b5de329))
17+
* **rds:** support minor engine versions for oracle ([#32058](https://github.com/aws/aws-cdk/issues/32058)) ([3d72b63](https://github.com/aws/aws-cdk/commit/3d72b63b0f2cf0649f5e1c5d0469faf51441db49))
18+
* **rds:** support minor versions for RDS for SQL Server ([#32055](https://github.com/aws/aws-cdk/issues/32055)) ([8c80bf8](https://github.com/aws/aws-cdk/commit/8c80bf8a6c0e8c1113135bb6c91b8432ad562c47))
19+
* **service-catalog:** allow Product Stack to override analytics reporting and stack descriptions ([#31985](https://github.com/aws/aws-cdk/issues/31985)) ([d8ad02a](https://github.com/aws/aws-cdk/commit/d8ad02a956a07e917919e2f4666f6488ca6592e6)), closes [#31924](https://github.com/aws/aws-cdk/issues/31924)
20+
21+
22+
### Bug Fixes
23+
24+
* **ecr:** allow creating repository uri to use tokens like cfn params ([#32053](https://github.com/aws/aws-cdk/issues/32053)) ([5648199](https://github.com/aws/aws-cdk/commit/5648199440e4ff89d1f2869865752ed140c256db)), closes [#31860](https://github.com/aws/aws-cdk/issues/31860)
25+
526
## [2.166.0](https://github.com/aws/aws-cdk/compare/v2.165.0...v2.166.0) (2024-11-06)
627

728

CONTRIBUTING.md

+34
Original file line numberDiff line numberDiff line change
@@ -764,6 +764,40 @@ You can find the dependabot config file [here](./.github/dependabot.yml).
764764
**If you think your PR introduces a new unconventional dependency, make sure to call it
765765
out in the description so that we can discuss the best way to manage that dependency.**
766766

767+
### Addressing Code Coverage Gaps
768+
769+
We leverage [Codecov](https://about.codecov.io/) to track code coverage of the project.
770+
If your PR doesn't meet the coverage requirements, you'll see failing status checks, which will prevent the PR from merging.
771+
772+
There are two requirements we define, each are enforced both on the overall
773+
project as well as individual packages.
774+
775+
1. Coverage percentage must not decrease.
776+
2. Patch percentage must be at least 95%.
777+
778+
Following is an example of status checks for a PR that violates both requirements:
779+
780+
![](./images/codecov-violations.png)
781+
782+
To fix and diagnose coverage gaps in your PR, there are two options:
783+
784+
1. Push your changes to the PR and wait for Codecov to comment on the PR.
785+
2. If you find option 1 too slow, you can open a local coverage report located in `<path-to-package>/coverage/index.html`
786+
787+
> [!NOTE]
788+
> Coverage percentage in local reports differs slightly from the percentage you'll see on Codecov.
789+
> This is ok, and is related to how Codecov handles function signatures (probably).
790+
> Ultimately Codecov is the source of truth, but you can still use local reports to locate uncovered
791+
> lines and address them.
792+
793+
Even though it should be rare, sometimes specific lines will be hard to cover by tests.
794+
To disable coverage of specific lines, you can use:
795+
796+
```ts
797+
/* istanbul ignore next */
798+
console.log('This cannot be covered')
799+
```
800+
767801
### Step 5: Merge
768802

769803
* Make sure your PR builds successfully (we have CodeBuild setup to automatically build all PRs).

codecov.yml

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# https://docs.codecov.com/docs/codecovyml-reference#coverage
2+
coverage:
3+
status:
4+
project:
5+
default:
6+
# require the overall project coverage to never decrease
7+
target: auto
8+
patch:
9+
default:
10+
# require the overall patch coverage to be at least 95%
11+
target: 95
12+
13+
14+
# https://docs.codecov.com/docs/codecovyml-reference#comment
15+
comment:
16+
layout: "header, diff, flags, components"
17+
18+
# https://docs.codecov.com/docs/codecovyml-reference#component_management
19+
component_management:
20+
default_rules:
21+
statuses:
22+
# every component will produce its own status check that requires overall coverage doesnt decrease
23+
- type: project
24+
target: auto
25+
# every component will produce its own status check that requires patch coverage of at least 95%
26+
- type: patch
27+
target: 95
28+
individual_components:
29+
- component_id: packages_aws_cdk # identifier that should not be changed
30+
name: packages/aws-cdk # display name that can change freely
31+
paths:
32+
- packages/aws-cdk/**

images/codecov-violations.png

98.9 KB
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
The output of this test is changed by the sdk upgrade. The type and content of the error have changed from sdkv2 to sdkv3. We now receive more specific information about the error type.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Skipping test due to the incompatibility in error output between sdkv2 and sdkv3
2+
hotswap deployment for ecs service detects failed deployment and errors

packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts

+15-8
Original file line numberDiff line numberDiff line change
@@ -2160,11 +2160,12 @@ integTest(
21602160
const functionName = response.Stacks?.[0].Outputs?.[0].OutputValue;
21612161

21622162
// THEN
2163-
21642163
// The deployment should not trigger a full deployment, thus the stack's status must remains
21652164
// "CREATE_COMPLETE"
21662165
expect(response.Stacks?.[0].StackStatus).toEqual('CREATE_COMPLETE');
2167-
expect(deployOutput).toContain(`Lambda Function '${functionName}' hotswapped!`);
2166+
// The entire string fails locally due to formatting. Making this test less specific
2167+
expect(deployOutput).toMatch(/hotswapped!/);
2168+
expect(deployOutput).toContain(functionName);
21682169
}),
21692170
);
21702171

@@ -2205,7 +2206,9 @@ integTest(
22052206
// The deployment should not trigger a full deployment, thus the stack's status must remains
22062207
// "CREATE_COMPLETE"
22072208
expect(response.Stacks?.[0].StackStatus).toEqual('CREATE_COMPLETE');
2208-
expect(deployOutput).toContain(`Lambda Function '${functionName}' hotswapped!`);
2209+
// The entire string fails locally due to formatting. Making this test less specific
2210+
expect(deployOutput).toMatch(/hotswapped!/);
2211+
expect(deployOutput).toContain(functionName);
22092212
} finally {
22102213
// Ensure cleanup in reverse order due to use of import/export
22112214
await fixture.cdkDestroy('lambda-hotswap');
@@ -2244,7 +2247,9 @@ integTest(
22442247
// The deployment should not trigger a full deployment, thus the stack's status must remains
22452248
// "CREATE_COMPLETE"
22462249
expect(response.Stacks?.[0].StackStatus).toEqual('CREATE_COMPLETE');
2247-
expect(deployOutput).toContain(`ECS Service '${serviceName}' hotswapped!`);
2250+
// The entire string fails locally due to formatting. Making this test less specific
2251+
expect(deployOutput).toMatch(/hotswapped!/);
2252+
expect(deployOutput).toContain(serviceName);
22482253
}),
22492254
);
22502255

@@ -2257,7 +2262,7 @@ integTest(
22572262
});
22582263

22592264
// WHEN
2260-
await fixture.cdkDeploy('ecs-hotswap', {
2265+
const deployOutput = await fixture.cdkDeploy('ecs-hotswap', {
22612266
options: ['--hotswap'],
22622267
modEnv: {
22632268
DYNAMIC_ECS_PROPERTY_VALUE: 'new value',
@@ -2283,14 +2288,15 @@ integTest(
22832288
}),
22842289
);
22852290
expect(describeServicesResponse.services?.[0].deployments).toHaveLength(1); // only one deployment present
2291+
expect(deployOutput).toMatch(/hotswapped!/);
22862292
}),
22872293
);
22882294

22892295
integTest(
22902296
'hotswap deployment for ecs service detects failed deployment and errors',
22912297
withExtendedTimeoutFixture(async (fixture) => {
22922298
// GIVEN
2293-
await fixture.cdkDeploy('ecs-hotswap');
2299+
await fixture.cdkDeploy('ecs-hotswap', { verbose: true });
22942300

22952301
// WHEN
22962302
const deployOutput = await fixture.cdkDeploy('ecs-hotswap', {
@@ -2299,10 +2305,11 @@ integTest(
22992305
USE_INVALID_ECS_HOTSWAP_IMAGE: 'true',
23002306
},
23012307
allowErrExit: true,
2308+
verbose: true,
23022309
});
23032310

2304-
const expectedSubstring = 'Resource is not in the state deploymentCompleted';
2305-
2311+
// THEN
2312+
const expectedSubstring = 'Resource is not in the expected state due to waiter status: TIMEOUT';
23062313
expect(deployOutput).toContain(expectedSubstring);
23072314
expect(deployOutput).not.toContain('hotswapped!');
23082315
}),

packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.codepipeline-with-nested-stack.js.snapshot/cdk.out

+1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/@aws-cdk-testing/framework-integ/test/aws-codepipeline-actions/test/integ.codepipeline-with-nested-stack.js.snapshot/code-pipeline-nested-stack.assets.json

+34
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)