ci: add appsec system-tests to the ci by florentinl · Pull Request #651 · DataDog/datadog-lambda-python
What does this PR do?
This PR adds the AppSec integration tests suite to the CI on each PR and on main. To do so, we reuse the workflow from the system-tests repo and provide the current dev version of the library through an artifact.
Motivation
The goal is to catch regressions regarding AppSec in AWS Lambda by running the integration tests suite.
Testing Guidelines
The workflow runs successfully in this PR: https://github.com/DataDog/datadog-lambda-python/actions/runs/17149705700
Additional Notes
-
The implementation of the lambda test environment in the system test was done in this PR: [python_lambda] Add scenario for testing the python tracer for AWS Lambda system-tests#4891
-
The workflow is documented here: https://github.com/DataDog/system-tests/blob/main/docs/CI/github-actions.md
-
Contrary to the
Build Layers for system-testsworkflow (used for the system-test nightly runs), we don't patch theddtraceversion and keep the one used by the rest of the CI. (It wouldn't make sense to block this repo because of unreleased changes on the dd-trace-py side) -
This causes an extra build of the layer. I don't think there is an obvious way to reuse an existing one.
Types of Changes
- Bug fix
- New feature
- Breaking change
- Misc (docs, refactoring, dependency upgrade, etc.)
Check all that apply
- This PR's description is comprehensive
- This PR contains breaking changes that are documented in the description
- This PR introduces new APIs or parameters that are documented and unlikely to change in the foreseeable future
- This PR impacts documentation, and it has been updated (or a ticket has been logged)
- This PR's changes are covered by the automated tests
- This PR collects user input/sensitive content into Datadog
- This PR passes the integration tests (ask a Datadog member to run the tests)