Skip to content

Commit 97d50b4

Browse files
committed
Merge remote-tracking branch 'origin/master' into bdu/from-extra-props-to-extensions
# Conflicts: # dd-java-agent/instrumentation/jakarta-jms/build.gradle # dd-java-agent/instrumentation/karate/build.gradle # dd-java-agent/instrumentation/selenium/build.gradle # dd-java-agent/instrumentation/testng/testng-7/build.gradle
2 parents 590f959 + 0ab0769 commit 97d50b4

File tree

155 files changed

+3673
-1259
lines changed

Some content is hidden

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

155 files changed

+3673
-1259
lines changed

.github/workflows/analyze-changes.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ jobs:
3030
${{ runner.os }}-gradle-
3131
3232
- name: Initialize CodeQL
33-
uses: github/codeql-action/init@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
33+
uses: github/codeql-action/init@4e94bd11f71e507f7f87df81788dff88d1dacbfb # v4.31.0
3434
with:
3535
languages: 'java'
3636
build-mode: 'manual'
@@ -49,7 +49,7 @@ jobs:
4949
--build-cache --parallel --stacktrace --no-daemon --max-workers=4
5050
5151
- name: Perform CodeQL Analysis and upload results to GitHub Security tab
52-
uses: github/codeql-action/analyze@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
52+
uses: github/codeql-action/analyze@4e94bd11f71e507f7f87df81788dff88d1dacbfb # v4.31.0
5353

5454
trivy:
5555
name: Analyze changes with Trivy
@@ -114,7 +114,7 @@ jobs:
114114
TRIVY_JAVA_DB_REPOSITORY: ghcr.io/aquasecurity/trivy-java-db,public.ecr.aws/aquasecurity/trivy-java-db
115115

116116
- name: Upload Trivy scan results to GitHub Security tab
117-
uses: github/codeql-action/upload-sarif@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
117+
uses: github/codeql-action/upload-sarif@4e94bd11f71e507f7f87df81788dff88d1dacbfb # v4.31.0
118118
if: always()
119119
with:
120120
sarif_file: 'trivy-results.sarif'

.github/workflows/run-system-tests.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
--build-cache --parallel --stacktrace --no-daemon --max-workers=4
5353
5454
- name: Upload artifact
55-
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
55+
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4
5656
with:
5757
name: binaries
5858
path: workspace/dd-java-agent/build/libs/

.gitlab-ci.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ include:
33
- local: ".gitlab/benchmarks.yml"
44
- local: ".gitlab/macrobenchmarks.yml"
55
- local: ".gitlab/exploration-tests.yml"
6-
# - local: ".gitlab/ci-visibility-tests.yml"
6+
- local: ".gitlab/ci-visibility-tests.yml"
77

88
stages:
99
- build
@@ -289,7 +289,7 @@ build_tests:
289289
CACHE_TYPE: "latestdep"
290290
- GRADLE_TARGET: ":smokeTest"
291291
CACHE_TYPE: "smoke"
292-
MAVEN_OPTS: "-Xms64M -Xmx512M -Dorg.slf4j.simpleLogger.defaultLogLevel=debug" # FIXME: Build :smokeTest build fails unless mvn debug logging is on
292+
MAVEN_OPTS: "-Xms64M -Xmx512M"
293293

294294
script:
295295
- *gitlab_base_ref_params
@@ -438,6 +438,7 @@ check_smoke:
438438
parallel: 4
439439
variables:
440440
GRADLE_TARGET: ":smokeCheck"
441+
CACHE_TYPE: "smoke"
441442

442443
check_profiling:
443444
extends: .check_job
@@ -647,7 +648,7 @@ test_flaky:
647648
extends: .test_job_with_test_agent
648649
variables:
649650
GRADLE_PARAMS: "-PrunFlakyTests"
650-
CACHE_TYPE: "base"
651+
CACHE_TYPE: "smoke"
651652
testJvm: "8"
652653
CONTINUE_ON_FAILURE: "true"
653654
rules:

.gitlab/ci-visibility-tests.yml

Lines changed: 44 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -1,77 +1,44 @@
1-
#check-ci-visibility-label:
2-
# stage: publish
3-
# image: registry.ddbuild.io/images/dd-octo-sts-ci-base:2025.06-1
4-
# tags: [ "arch:amd64" ]
5-
# needs: [ publish-artifacts-to-s3 ]
6-
# id_tokens:
7-
# DDOCTOSTS_ID_TOKEN:
8-
# aud: dd-octo-sts
9-
# rules:
10-
# # - if: '$POPULATE_CACHE'
11-
# # when: never
12-
# # - if: '$CI_COMMIT_BRANCH && $CI_COMMIT_BRANCH !~ /^(master|release\/)/'
13-
# # when: on_success
14-
# - when: never
15-
# before_script:
16-
# - dd-octo-sts version
17-
# - dd-octo-sts debug --scope DataDog/dd-trace-java --policy self.gitlab.github-access.read
18-
# - dd-octo-sts token --scope DataDog/dd-trace-java --policy self.gitlab.github-access.read > github-token.txt
19-
# - gh auth login --with-token < github-token.txt
20-
# script:
21-
# - |
22-
# # Source utility functions
23-
# source .gitlab/ci_visibility_utils.sh
24-
#
25-
# # Get PR number
26-
# if ! PR_NUMBER=$(get_pr_number "${CI_COMMIT_BRANCH}"); then
27-
# echo "No open PR found for branch ${CI_COMMIT_BRANCH}"
28-
# exit 1
29-
# fi
30-
#
31-
# echo "Found PR #${PR_NUMBER}"
32-
#
33-
# # Check if PR has the CI visibility label
34-
# if pr_has_label "$PR_NUMBER" "comp: ci visibility"; then
35-
# echo "PR_NUMBER=${PR_NUMBER}" > pr.env
36-
# echo "PR #${PR_NUMBER} detected as CI Visibility PR"
37-
# exit 0
38-
# else
39-
# echo "PR #${PR_NUMBER} not a CI Visibility PR, ignoring trigger"
40-
# exit 1
41-
# fi
42-
# after_script:
43-
# - dd-octo-sts revoke -t $(cat github-token.txt) || true
44-
# artifacts:
45-
# reports:
46-
# dotenv: pr.env
47-
# allow_failure: true
48-
# retry:
49-
# max: 2
50-
# when: always
51-
#
52-
#run-ci-visibility-test-environment:
53-
# stage: ci-visibility-tests
54-
# needs:
55-
# - job: check-ci-visibility-label
56-
# artifacts: true
57-
# rules:
58-
# - if: '$POPULATE_CACHE'
59-
# when: never
60-
# - if: '$CI_COMMIT_BRANCH && $CI_COMMIT_BRANCH !~ /^(master|release\/)/'
61-
# when: on_success
62-
# trigger:
63-
# project: DataDog/apm-reliability/test-environment
64-
# branch: main
65-
# strategy: depend
66-
# variables:
67-
# UPSTREAM_PACKAGE_JOB: build
68-
# UPSTREAM_PROJECT_ID: $CI_PROJECT_ID
69-
# UPSTREAM_PROJECT_NAME: $CI_PROJECT_NAME
70-
# UPSTREAM_PIPELINE_ID: $CI_PIPELINE_ID
71-
# UPSTREAM_BRANCH: $CI_COMMIT_BRANCH
72-
# UPSTREAM_TAG: $CI_COMMIT_TAG
73-
# UPSTREAM_COMMIT_AUTHOR: $CI_COMMIT_AUTHOR
74-
# UPSTREAM_COMMIT_SHORT_SHA: $CI_COMMIT_SHORT_SHA
75-
# TRACER_LANG: java
76-
# JAVA_TRACER_REF_TO_TEST: $CI_COMMIT_BRANCH
77-
# JAVA_TRACER_PR_TO_TEST: $PR_NUMBER
1+
ci-visibility-tests-check:
2+
stage: ci-visibility-tests
3+
image: registry.ddbuild.io/images/dd-octo-sts-ci-base:2025.06-1
4+
tags: [ "arch:amd64" ]
5+
needs: [ publish-artifacts-to-s3 ]
6+
id_tokens:
7+
DDOCTOSTS_ID_TOKEN:
8+
aud: dd-octo-sts
9+
rules:
10+
- if: '$POPULATE_CACHE'
11+
when: never
12+
- if: '$CI_COMMIT_BRANCH && $CI_COMMIT_BRANCH !~ /^(master|release\/)/'
13+
when: on_success
14+
- when: never
15+
before_script:
16+
- dd-octo-sts version
17+
- dd-octo-sts debug --scope DataDog/dd-trace-java --policy self.gitlab.github-access.read
18+
- dd-octo-sts token --scope DataDog/dd-trace-java --policy self.gitlab.github-access.read > github-token.txt
19+
- gh auth login --with-token < github-token.txt
20+
script:
21+
- .gitlab/ci_visibility_generate_job.sh
22+
after_script:
23+
- dd-octo-sts revoke -t $(cat github-token.txt) || true
24+
artifacts:
25+
paths:
26+
- ci-visibility-test-environment.yml
27+
retry:
28+
max: 2
29+
when: always
30+
31+
ci-visibility-tests-trigger:
32+
stage: ci-visibility-tests
33+
needs: [ci-visibility-tests-check]
34+
rules:
35+
- if: '$POPULATE_CACHE'
36+
when: never
37+
- if: '$CI_COMMIT_BRANCH && $CI_COMMIT_BRANCH !~ /^(master|release\/)/'
38+
when: on_success
39+
- when: never
40+
trigger:
41+
include:
42+
- artifact: ci-visibility-test-environment.yml
43+
job: ci-visibility-tests-check
44+
strategy: depend
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
#!/usr/bin/env bash
2+
3+
set -e
4+
5+
add_dummy_job() {
6+
cat <<EOF >>ci-visibility-test-environment.yml
7+
skip-ci-visibility-tests:
8+
stage: ci-visibility-tests
9+
tags: [ "arch:amd64" ]
10+
script:
11+
- echo "PR does not have required label - CI Visibility test environment not triggered"
12+
EOF
13+
}
14+
15+
# Generate yml
16+
cat <<EOF >ci-visibility-test-environment.yml
17+
stages:
18+
- ci-visibility-tests
19+
20+
EOF
21+
22+
if [ -z "$CI_COMMIT_BRANCH" ]; then
23+
echo "No branch detected - skipping trigger"
24+
add_dummy_job
25+
exit 0
26+
fi
27+
28+
echo "Performing trigger checks for ci-visibility test-environment..."
29+
set +e
30+
pr_number=$(gh pr list --repo DataDog/dd-trace-java --head "$CI_COMMIT_BRANCH" --state open --json number --jq '.[0].number' 2>&1)
31+
pr_number_status=$?
32+
set -e
33+
34+
if [ $pr_number_status -ne 0 ]; then
35+
echo "Failed to query PR (gh command failed with status $pr_number_status ) - skipping trigger"
36+
add_dummy_job
37+
exit 0
38+
fi
39+
if [ -z "$pr_number" ]; then
40+
echo "No open PR found for branch $CI_COMMIT_BRANCH - skipping trigger"
41+
add_dummy_job
42+
exit 0
43+
fi
44+
45+
echo "PR #${pr_number} found, checking labels..."
46+
set +e
47+
labels=$(gh pr view "$pr_number" --repo DataDog/dd-trace-java --json labels --jq '.labels[].name' 2>&1)
48+
labels_status=$?
49+
set -e
50+
51+
if [ $labels_status -ne 0 ]; then
52+
echo "Failed to query PR labels (gh command failed with status $labels_status) - skipping trigger"
53+
add_dummy_job
54+
exit 0
55+
fi
56+
if [ -z "$labels" ] || ! echo "$labels" | grep -q "comp: ci visibility"; then
57+
echo "PR #$pr_number is not a CI Visibility PR - skipping trigger"
58+
add_dummy_job
59+
exit 0
60+
fi
61+
62+
echo "PR #$pr_number is a CI Visibility PR - triggering test environment"
63+
64+
cat <<EOF >>ci-visibility-test-environment.yml
65+
ci-visibility-test-environment:
66+
stage: ci-visibility-tests
67+
trigger:
68+
project: DataDog/apm-reliability/test-environment
69+
branch: main
70+
strategy: depend
71+
variables:
72+
UPSTREAM_PACKAGE_JOB: build
73+
UPSTREAM_PROJECT_ID: "$CI_PROJECT_ID"
74+
UPSTREAM_PROJECT_NAME: "$CI_PROJECT_NAME"
75+
UPSTREAM_PIPELINE_ID: "$CI_PIPELINE_ID"
76+
UPSTREAM_BRANCH: "$CI_COMMIT_BRANCH"
77+
UPSTREAM_TAG: "$CI_COMMIT_TAG"
78+
UPSTREAM_COMMIT_AUTHOR: "$CI_COMMIT_AUTHOR"
79+
UPSTREAM_COMMIT_SHORT_SHA: "$CI_COMMIT_SHORT_SHA"
80+
TRACER_LANG: java
81+
JAVA_TRACER_REF_TO_TEST: "$CI_COMMIT_BRANCH"
82+
JAVA_TRACER_PR_TO_TEST: "$pr_number"
83+
EOF

.gitlab/ci_visibility_utils.sh

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

benchmark/load/insecure-bank/k6.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export const options = function (variants) {
2828
scenarios[`load--insecure-bank--${variant}--warmup`] = {
2929
executor: 'constant-vus', // https://grafana.com/docs/k6/latest/using-k6/scenarios/executors/#all-executors
3030
vus: 5,
31-
duration: '20s',
31+
duration: '165s',
3232
gracefulStop: '2s',
3333
env: {
3434
"APP_URL": variants[variant]["APP_URL"]
@@ -38,7 +38,7 @@ export const options = function (variants) {
3838
scenarios[`load--insecure-bank--${variant}--high_load`] = {
3939
executor: 'constant-vus',
4040
vus: 5,
41-
startTime: '22s',
41+
startTime: '167s',
4242
duration: '15s',
4343
gracefulStop: '2s',
4444
env: {

benchmark/load/petclinic/k6.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export const options = function (variants) {
2828
scenarios[`load--petclinic--${variant}--warmup`] = {
2929
executor: 'constant-vus', // https://grafana.com/docs/k6/latest/using-k6/scenarios/executors/#all-executors
3030
vus: 5,
31-
duration: '20s',
31+
duration: '165s',
3232
gracefulStop: '2s',
3333
env: {
3434
"APP_URL": variants[variant]["APP_URL"]
@@ -38,7 +38,7 @@ export const options = function (variants) {
3838
scenarios[`load--petclinic--${variant}--high_load`] = {
3939
executor: 'constant-vus',
4040
vus: 5,
41-
startTime: '22s',
41+
startTime: '167s',
4242
duration: '15s',
4343
gracefulStop: '2s',
4444
env: {

benchmark/load/run.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ for app in *; do
4343
# Using profiler variants for healthcheck as they are the slowest
4444
if [ "${app}" == "petclinic" ]; then
4545
HEALTHCHECK_URL=http://localhost:8082
46-
REPETITIONS_COUNT=5
46+
REPETITIONS_COUNT=2
4747
elif [ "${app}" == "insecure-bank" ]; then
4848
HEALTHCHECK_URL=http://localhost:8082/login
4949
REPETITIONS_COUNT=2

0 commit comments

Comments
 (0)