Skip to content

Commit be68e39

Browse files
authored
Merge branch 'main' into cbeauchesne/green-ci-policy
2 parents 7bff138 + 1cd1e73 commit be68e39

File tree

176 files changed

+2525
-2184
lines changed

Some content is hidden

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

176 files changed

+2525
-2184
lines changed

.gitlab-ci.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ stages:
88
variables:
99
REPO_LANG: python # "python" is used everywhere rather than "py"
1010
REPO_NOTIFICATION_CHANNEL: "#apm-python-release"
11+
RELEASE_ALLOW_TEST_FAILURES: false
12+
RELEASE_ALLOW_BENCHMARK_FAILURES: false
1113
# CI_DEBUG_SERVICES: "true"
1214

1315
default:
@@ -49,6 +51,11 @@ tests-gen:
4951
run-tests-trigger:
5052
stage: tests
5153
needs: [ tests-gen ]
54+
# Allow the child job to fail if explicitly asked
55+
rules:
56+
- if: $RELEASE_ALLOW_TEST_FAILURES == "true"
57+
allow_failure: true
58+
- allow_failure: false
5259
trigger:
5360
include:
5461
- artifact: .gitlab/tests-gen.yml
@@ -58,6 +65,10 @@ run-tests-trigger:
5865
microbenchmarks:
5966
stage: benchmarks
6067
needs: [ "download_ddtrace_artifacts" ]
68+
rules:
69+
- if: $RELEASE_ALLOW_BENCHMARK_FAILURES == "true"
70+
allow_failure: true
71+
- allow_failure: false
6172
trigger:
6273
include: .gitlab/benchmarks/microbenchmarks.yml
6374
strategy: depend
@@ -158,7 +169,7 @@ publish-lib-init-pinned-tags:
158169
configure_system_tests:
159170
variables:
160171
SYSTEM_TESTS_SCENARIOS_GROUPS: "simple_onboarding,simple_onboarding_profiling,docker-ssi,lib-injection"
161-
172+
162173
deploy_to_reliability_env:
163174
needs: []
164175

.gitlab/benchmarks/microbenchmarks.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ variables:
1616
tags: ["runner:apm-k8s-tweaked-metal"]
1717
image: $MICROBENCHMARKS_CI_IMAGE
1818
interruptible: true
19-
timeout: 1h
19+
timeout: 30m
2020
dependencies: [ "baseline:build", "candidate" ]
2121
script: |
2222
export REPORTS_DIR="$(pwd)/reports/" && (mkdir "${REPORTS_DIR}" || :)
@@ -149,7 +149,8 @@ microbenchmarks:
149149
- "appsec_iast_aspects_ospath"
150150
- "appsec_iast_aspects_re_module"
151151
- "appsec_iast_aspects_split"
152-
- "appsec_iast_django_startup"
152+
# Flaky timeouts on starting up
153+
# - "appsec_iast_django_startup"
153154
- "appsec_iast_propagation"
154155
# Flaky. Timeout errors
155156
# - "encoder"
@@ -162,6 +163,15 @@ microbenchmarks:
162163
- "startup"
163164
- "ddtrace_run"
164165

166+
"microbenchmarks flaky":
167+
extends: .benchmarks
168+
allow_failure: true
169+
parallel:
170+
matrix:
171+
- SCENARIO:
172+
# Flaky timeouts on starting up
173+
- "appsec_iast_django_startup"
174+
165175
benchmarks-pr-comment:
166176
image: $MICROBENCHMARKS_CI_IMAGE
167177
tags: ["arch:amd64"]

.gitlab/benchmarks/serverless.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@ benchmark-serverless:
77
project: DataDog/serverless-tools
88
strategy: depend
99
needs: []
10-
# TODO: Revert this once the build issue has been resolved
11-
allow_failure: true
10+
rules:
11+
- if: $RELEASE_ALLOW_BENCHMARK_FAILURES == "true"
12+
allow_failure: true
13+
- allow_failure: false
1214
variables:
1315
UPSTREAM_PIPELINE_ID: $CI_PIPELINE_ID
1416
UPSTREAM_PROJECT_URL: $CI_PROJECT_URL

.gitlab/tests.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
stages:
2-
- precheck
2+
- setup
33
- riot
44
- hatch
55

@@ -17,7 +17,7 @@ include:
1717
extends: .testrunner
1818
stage: hatch
1919
# Hatch doesn't use pre-built wheels or venvs so we can start them right away
20-
needs: []
20+
needs: [ prechecks ]
2121
parallel: 4
2222
# DEV: This is the max retries that GitLab currently allows for
2323
before_script:
@@ -58,7 +58,7 @@ include:
5858
.test_base_riot:
5959
extends: .testrunner
6060
stage: riot
61-
needs: [ build_base_venvs ]
61+
needs: [ build_base_venvs, prechecks ]
6262
parallel: 4
6363
services:
6464
- !reference [.services, ddagent]

.riot/requirements/d449a90.txt renamed to .riot/requirements/10ba61c.txt

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,30 @@
22
# This file is autogenerated by pip-compile with Python 3.13
33
# by the following command:
44
#
5-
# pip-compile --allow-unsafe --no-annotate .riot/requirements/d449a90.in
5+
# pip-compile --allow-unsafe --no-annotate .riot/requirements/10ba61c.in
66
#
7-
attrs==25.1.0
8-
coverage[toml]==7.6.12
7+
attrs==25.3.0
8+
coverage[toml]==7.8.0
99
gunicorn==23.0.0
1010
hypothesis==6.45.0
11-
iniconfig==2.0.0
12-
lz4==4.4.3
11+
iniconfig==2.1.0
12+
jsonschema==4.23.0
13+
jsonschema-specifications==2024.10.1
14+
lz4==4.4.4
1315
mock==5.2.0
1416
opentracing==2.4.0
1517
packaging==24.2
1618
pluggy==1.5.0
17-
protobuf==6.30.0
19+
protobuf==6.30.2
1820
py-cpuinfo==8.0.0
1921
pytest==8.3.5
2022
pytest-asyncio==0.21.1
2123
pytest-benchmark==5.1.0
22-
pytest-cov==6.0.0
24+
pytest-cov==6.1.1
2325
pytest-cpp==2.6.0
2426
pytest-mock==3.14.0
2527
pytest-randomly==3.16.0
28+
referencing==0.36.2
29+
rpds-py==0.24.0
2630
sortedcontainers==2.4.0
27-
uwsgi==2.0.28
31+
uwsgi==2.0.29

.riot/requirements/cb9a5da.txt renamed to .riot/requirements/137ea60.txt

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,16 @@
22
# This file is autogenerated by pip-compile with Python 3.13
33
# by the following command:
44
#
5-
# pip-compile --allow-unsafe --no-annotate .riot/requirements/cb9a5da.in
5+
# pip-compile --allow-unsafe --no-annotate .riot/requirements/137ea60.in
66
#
7-
attrs==25.1.0
8-
coverage[toml]==7.6.12
7+
attrs==25.3.0
8+
coverage[toml]==7.8.0
99
gunicorn==23.0.0
1010
hypothesis==6.45.0
11-
iniconfig==2.0.0
12-
lz4==4.4.3
11+
iniconfig==2.1.0
12+
jsonschema==4.23.0
13+
jsonschema-specifications==2024.10.1
14+
lz4==4.4.4
1315
mock==5.2.0
1416
opentracing==2.4.0
1517
packaging==24.2
@@ -19,9 +21,11 @@ py-cpuinfo==8.0.0
1921
pytest==8.3.5
2022
pytest-asyncio==0.21.1
2123
pytest-benchmark==5.1.0
22-
pytest-cov==6.0.0
24+
pytest-cov==6.1.1
2325
pytest-cpp==2.6.0
2426
pytest-mock==3.14.0
2527
pytest-randomly==3.16.0
28+
referencing==0.36.2
29+
rpds-py==0.24.0
2630
sortedcontainers==2.4.0
27-
uwsgi==2.0.28
31+
uwsgi==2.0.29

.riot/requirements/b83f7ca.txt renamed to .riot/requirements/1387420.txt

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,36 +2,41 @@
22
# This file is autogenerated by pip-compile with Python 3.9
33
# by the following command:
44
#
5-
# pip-compile --allow-unsafe --no-annotate .riot/requirements/b83f7ca.in
5+
# pip-compile --allow-unsafe --no-annotate .riot/requirements/1387420.in
66
#
7-
attrs==24.3.0
8-
coverage[toml]==7.6.10
7+
attrs==25.3.0
8+
coverage[toml]==7.8.0
99
exceptiongroup==1.2.2
1010
gevent==24.11.1
1111
greenlet==3.1.1
1212
gunicorn[gevent]==23.0.0
1313
hypothesis==6.45.0
14-
importlib-metadata==8.5.0
15-
iniconfig==2.0.0
16-
lz4==4.3.3
17-
mock==5.1.0
14+
importlib-metadata==8.6.1
15+
iniconfig==2.1.0
16+
jsonschema==4.23.0
17+
jsonschema-specifications==2024.10.1
18+
lz4==4.4.4
19+
mock==5.2.0
1820
opentracing==2.4.0
1921
packaging==24.2
2022
pluggy==1.5.0
2123
py-cpuinfo==8.0.0
22-
pytest==8.3.4
24+
pytest==8.3.5
2325
pytest-asyncio==0.21.1
2426
pytest-benchmark==5.1.0
25-
pytest-cov==6.0.0
27+
pytest-cov==6.1.1
2628
pytest-cpp==2.6.0
2729
pytest-mock==3.14.0
2830
pytest-randomly==3.16.0
31+
referencing==0.36.2
32+
rpds-py==0.24.0
2933
sortedcontainers==2.4.0
3034
tomli==2.2.1
31-
uwsgi==2.0.28
35+
typing-extensions==4.13.2
36+
uwsgi==2.0.29
3237
zipp==3.21.0
3338
zope-event==5.0
3439
zope-interface==7.2
3540

3641
# The following packages are considered to be unsafe in a requirements file:
37-
setuptools==75.7.0
42+
setuptools==78.1.0

.riot/requirements/2e36381.txt renamed to .riot/requirements/17d21ee.txt

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,37 @@
22
# This file is autogenerated by pip-compile with Python 3.11
33
# by the following command:
44
#
5-
# pip-compile --allow-unsafe --no-annotate .riot/requirements/2e36381.in
5+
# pip-compile --allow-unsafe --no-annotate .riot/requirements/17d21ee.in
66
#
7-
attrs==24.3.0
8-
coverage[toml]==7.6.10
7+
attrs==25.3.0
8+
coverage[toml]==7.8.0
99
gevent==24.11.1
1010
greenlet==3.1.1
1111
gunicorn[gevent]==23.0.0
1212
hypothesis==6.45.0
13-
iniconfig==2.0.0
14-
lz4==4.3.3
15-
mock==5.1.0
13+
iniconfig==2.1.0
14+
jsonschema==4.23.0
15+
jsonschema-specifications==2024.10.1
16+
lz4==4.4.4
17+
mock==5.2.0
1618
opentracing==2.4.0
1719
packaging==24.2
1820
pluggy==1.5.0
1921
py-cpuinfo==8.0.0
20-
pytest==8.3.4
22+
pytest==8.3.5
2123
pytest-asyncio==0.21.1
2224
pytest-benchmark==5.1.0
23-
pytest-cov==6.0.0
25+
pytest-cov==6.1.1
2426
pytest-cpp==2.6.0
2527
pytest-mock==3.14.0
2628
pytest-randomly==3.16.0
29+
referencing==0.36.2
30+
rpds-py==0.24.0
2731
sortedcontainers==2.4.0
28-
uwsgi==2.0.28
32+
typing-extensions==4.13.2
33+
uwsgi==2.0.29
2934
zope-event==5.0
3035
zope-interface==7.2
3136

3237
# The following packages are considered to be unsafe in a requirements file:
33-
setuptools==75.7.0
38+
setuptools==78.1.0

.riot/requirements/18008a7.txt

Lines changed: 0 additions & 27 deletions
This file was deleted.

.riot/requirements/1359ebb.txt renamed to .riot/requirements/187c22a.txt

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,39 @@
22
# This file is autogenerated by pip-compile with Python 3.10
33
# by the following command:
44
#
5-
# pip-compile --allow-unsafe --no-annotate .riot/requirements/1359ebb.in
5+
# pip-compile --allow-unsafe --no-annotate .riot/requirements/187c22a.in
66
#
7-
attrs==24.3.0
8-
coverage[toml]==7.6.10
7+
attrs==25.3.0
8+
coverage[toml]==7.8.0
99
exceptiongroup==1.2.2
1010
gevent==24.11.1
1111
greenlet==3.1.1
1212
gunicorn[gevent]==23.0.0
1313
hypothesis==6.45.0
14-
iniconfig==2.0.0
15-
lz4==4.3.3
16-
mock==5.1.0
14+
iniconfig==2.1.0
15+
jsonschema==4.23.0
16+
jsonschema-specifications==2024.10.1
17+
lz4==4.4.4
18+
mock==5.2.0
1719
opentracing==2.4.0
1820
packaging==24.2
1921
pluggy==1.5.0
2022
py-cpuinfo==8.0.0
21-
pytest==8.3.4
23+
pytest==8.3.5
2224
pytest-asyncio==0.21.1
2325
pytest-benchmark==5.1.0
24-
pytest-cov==6.0.0
26+
pytest-cov==6.1.1
2527
pytest-cpp==2.6.0
2628
pytest-mock==3.14.0
2729
pytest-randomly==3.16.0
30+
referencing==0.36.2
31+
rpds-py==0.24.0
2832
sortedcontainers==2.4.0
2933
tomli==2.2.1
30-
uwsgi==2.0.28
34+
typing-extensions==4.13.2
35+
uwsgi==2.0.29
3136
zope-event==5.0
3237
zope-interface==7.2
3338

3439
# The following packages are considered to be unsafe in a requirements file:
35-
setuptools==75.7.0
40+
setuptools==78.1.0

0 commit comments

Comments
 (0)