ci: publish otel plugin lambda layer - #619
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
| python -m pytest \ | ||
| .github/scripts/tests/test_build_lambda_layer.py \ | ||
| .github/scripts/tests/test_parse_sdk_branch.py |
There was a problem hiding this comment.
Codex AI review
[P2] Run the SDK-version resolver tests in CI
This explicit pytest list omits test_resolve_layer_sdk_version.py, and the root test configuration excludes .github/scripts/tests, so the newly added pin-selection logic is never tested in CI. A regression could bundle the wrong SDK version or break a release. Add the resolver test here and add .github/scripts/resolve_layer_sdk_version.py to both path filters above.
Codex AI reviewFound one CI wiring issue. The AWS publishing loop still lacks end-to-end coverage, leaving provider/API behavior as residual risk. Reviewed commit |
| python -m pytest \ | ||
| .github/scripts/tests/test_build_lambda_layer.py \ | ||
| .github/scripts/tests/test_parse_sdk_branch.py |
There was a problem hiding this comment.
Claude AI review
The new resolve_layer_sdk_version.py script is never exercised in CI. This pytest invocation lists test files explicitly and omits test_resolve_layer_sdk_version.py, so those tests never run — pytest only executes the two files passed as arguments. Relatedly, resolve_layer_sdk_version.py is missing from the paths filters (lines 6 and 12) that gate this workflow, unlike build_lambda_layer.py, so a change to that script alone won't even trigger this job.
This matters because resolve_layer_sdk_version.py is the guard that decides which SDK version is bundled into a published layer (pinned version for OTel-only releases; enforced-matching pin for combined releases). A regression there could publish a layer against the wrong or unpublished SDK version, and CI would stay green.
Add the test file to the pytest command (suggested below) and add .github/scripts/resolve_layer_sdk_version.py to both paths lists so source-only changes retrigger the job.
| python -m pytest \ | |
| .github/scripts/tests/test_build_lambda_layer.py \ | |
| .github/scripts/tests/test_parse_sdk_branch.py | |
| python -m pytest \ | |
| .github/scripts/tests/test_build_lambda_layer.py \ | |
| .github/scripts/tests/test_resolve_layer_sdk_version.py \ | |
| .github/scripts/tests/test_parse_sdk_branch.py |
Claude AI reviewThis PR adds a release-triggered workflow plus two helper scripts ( The workflow logic is generally sound: the One confirmed finding (see inline): the CI job that is supposed to exercise these scripts omits the new Residual risk not covered by tests: Reviewed commit |
Summary
aws-durable-execution-sdk-python-otel-pluginlayer name using thelambda-layer-publishenvironment andLAYER_PUBLISH_ROLE_ARNLAYER_PUBLISH_REGIONSas an overrideValidation
hatch run test:all .github/scripts/tests/test_build_lambda_layer.py .github/scripts/tests/test_parse_sdk_branch.pyhatch fmt --check .github/scripts/build_lambda_layer.py .github/scripts/tests/test_build_lambda_layer.pyactionlint .github/workflows/lambda-layer-publish.yml .github/workflows/test-parser.yml