Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
5ed2f59
Support async servlet for RUM injection (#9333)
amarziali Aug 8, 2025
760fdbf
Update Gradle dependencies (#9347)
dd-octo-sts[bot] Aug 11, 2025
0eeb9e5
chore: Detect dirtiness only if gradle property is enabled (#9344)
bric3 Aug 11, 2025
893780c
Fixed flaky test for play-2.8: Source directory '.../routes' is not a…
AlexeyKuznetsov-DD Aug 11, 2025
d28a3ef
Update Spock to 2.4-M6. (#9326)
AlexeyKuznetsov-DD Aug 11, 2025
4ff8f05
Circle CI leftovers cleanup. (#9348)
AlexeyKuznetsov-DD Aug 11, 2025
a3836e6
Avoid triggering skipped workflows on PR (#9349)
PerfectSlayer Aug 11, 2025
23cacab
chore(ci): bump the gh-actions-packages group with 3 updates (#9352)
dependabot[bot] Aug 12, 2025
8d4316a
Avoid NPE on featureDiscovery creation (#9353)
amarziali Aug 12, 2025
ef2e9f0
Fix NullPointerException log in AppSec (#9355)
jandro996 Aug 12, 2025
f9278b6
Improve Instrumenter API to use Context instead of Span (#9211)
PerfectSlayer Aug 12, 2025
ee43e5f
Use magic mirror depot rather than artifactual for maven central prox…
randomanderson Aug 12, 2025
6d9e2c4
Improve stability of FixedSizeCacheTest identity/weak tests (#9362)
mcculls Aug 13, 2025
0f3ab90
Update ddapm-test-agent to latest 1.31.1. (#9359)
AlexeyKuznetsov-DD Aug 13, 2025
abb3a35
Add dependency on Maven Central deployment to OCI publish jobs (#9204)
sarahchen6 Aug 14, 2025
836075f
Mark `client error request with parent` as flaky for `ApacheHttpAsync…
AlexeyKuznetsov-DD Aug 14, 2025
12e10fb
Migrate internal apis to environment component (#9291)
PerfectSlayer Aug 14, 2025
dda3d7a
Fix for play-2.8 'Source directory xxx is not a directory.` (#9357)
AlexeyKuznetsov-DD Aug 14, 2025
fa0bdff
Add policy for add-release-to-cloudfoundry (#9364)
sarahchen6 Aug 14, 2025
65b2349
Updated flaky tests. (#9366)
AlexeyKuznetsov-DD Aug 14, 2025
1d77102
Stable Config improvements (#9259)
mtoffl01 Aug 15, 2025
f15598a
Fix nightly pipeline (#9368)
sarahchen6 Aug 15, 2025
a11444c
Update Gradle dependencies (#9373)
dd-octo-sts[bot] Aug 18, 2025
9f546b9
Migrate instrumentations to Context API (#9358)
PerfectSlayer Aug 18, 2025
6d0e730
fix(tooling): Fix release script (#9374)
PerfectSlayer Aug 18, 2025
af486f2
Use mockito mocks in Runtime CSI tests (#9376)
manuel-alvarez-alvarez Aug 18, 2025
db0df01
test: increase timeout for :dd-java-agent:agent-ci-visibility: (#9375)
daniel-mohedano Aug 18, 2025
e125ff7
Prevent crash in SQL Server's JDBC when tracing execute methods with …
na-ji Aug 18, 2025
8daf352
chore(ci): bump github/codeql-action in the gh-actions-packages group…
dependabot[bot] Aug 19, 2025
5380221
Migrate instrumentations to Context API (#9378)
PerfectSlayer Aug 19, 2025
10f539b
Implement health metrics for client stats (#9377)
amarziali Aug 19, 2025
dec3ce1
Add details about running GitHub actions tests locally (#9363)
cecile75 Aug 19, 2025
1f35448
Move aws-java-sdk modules (#9383)
amarziali Aug 19, 2025
a31bd14
Changing GRPC instrumentation codes from `status.code` to `grpc.statu…
mhlidd Aug 19, 2025
2a37201
Ensure minimum number of fuzz tests on TagsMap (#9385)
amarziali Aug 19, 2025
95f3be2
add id-token write permission to system tests (#9381)
rochdev Aug 19, 2025
27cd7f4
chore(telemetry): update baggage telemetry name (#9379)
rachelyangdog Aug 19, 2025
9bade09
Add telemetry for the RUM injector (#9267)
sarahchen6 Aug 20, 2025
f98f7dd
Introduce ConfigOrigin.CALCULATED (#9371)
mtoffl01 Aug 20, 2025
844f8d3
Fix health metrics report size (#9394)
amarziali Aug 20, 2025
def5c6a
Clean up old OCI tests (#9391)
PerfectSlayer Aug 20, 2025
269bad9
Trying to fix hanging tests by relaxing useStrictTraceWrites (#9380)
AlexeyKuznetsov-DD Aug 20, 2025
c2e8852
Refactored flaky tests in `vertex-redis-client-3.9` to retry connecti…
AlexeyKuznetsov-DD Aug 20, 2025
dd6e5d6
Throw InvalidBooleanValueException in ConfigConverter.booleanValueOf …
mtoffl01 Aug 20, 2025
5aa25ba
Test `PekkoHttpServerInstrumentationAsyncHttp2Test.test exception` ma…
AlexeyKuznetsov-DD Aug 20, 2025
d11739c
Properly fall-back on UDS profiling URL (#9401)
jbachorik Aug 21, 2025
0c9e66b
Add ErrorPriorities level for manual instrumentation (#9387)
cecile75 Aug 21, 2025
9aad755
Refactored `JUnit4.Assume` to `@IgnoreIf` or `JUnit5.Assumptions`. (#…
AlexeyKuznetsov-DD Aug 21, 2025
2fa9986
When restoring a swapped out scope-stack, take defensive copy if the …
mcculls Aug 21, 2025
69196fa
Report config_id for Hands Off Config files (#9299)
mtoffl01 Aug 21, 2025
47eee78
Address merge conflicts
sarahchen6 Aug 21, 2025
3a8d6de
Fix Iast tests
sarahchen6 Aug 21, 2025
ba0a7e4
Fix karate tests
sarahchen6 Aug 22, 2025
8d4d04b
Fix play-ws tests
sarahchen6 Aug 22, 2025
0f1bb18
Fix servlet tests
sarahchen6 Aug 22, 2025
9871ee0
Fix instrumentation test
sarahchen6 Aug 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
16 changes: 0 additions & 16 deletions .circleci/config.yml

This file was deleted.

12 changes: 12 additions & 0 deletions .github/chainguard/self.add-release-to-cloudfoundry.sts.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
issuer: https://token.actions.githubusercontent.com

subject: repo:DataDog/dd-trace-java:ref:refs/heads/master

claim_pattern:
event_name: release
ref: refs/heads/master
ref_protected: "true"
job_workflow_ref: DataDog/dd-trace-java/\.github/workflows/add-release-to-cloudfoundry\.yaml@refs/heads/master

permissions:
contents: write
3 changes: 2 additions & 1 deletion .github/workflows/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,9 @@ find .github/workflows -name "*.yaml" -exec awk '/uses:/{print $2 ","}' {} \; |
## Testing

Workflows can be locally tested using the [`act` CLI](https://github.com/nektos/act/).
Docker and [GiHub CLI](https://cli.github.com/) need also to be installed.
The [.github/workflows/tests/](./tests) folder contains test scripts and event payloads to locally trigger workflows.

> [!WARNING]
> Locally running workflows will still query GitHub backend and will update the GitHub project accordingly.
> Local workflow tests run against the repository and will potentially alter existing issues, milestones and releases.
> Pay extra attention to the workflow jobs you trigger to not create development disruption.
2 changes: 1 addition & 1 deletion .github/workflows/add-release-to-cloudfoundry.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout "cloudfoundry" branch
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
with:
ref: cloudfoundry
- name: Get release version
Expand Down
21 changes: 7 additions & 14 deletions .github/workflows/analyze-changes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@ name: Analyze changes
on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]

# Cancel long-running jobs when a new commit is pushed
concurrency:
Expand All @@ -15,8 +12,6 @@ concurrency:
jobs:
codeql:
name: Analyze changes with GitHub CodeQL
# Don’t run on PR, only when pushing to master
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
permissions:
actions: read
Expand All @@ -25,12 +20,12 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
with:
submodules: 'recursive'

- name: Cache Gradle dependencies
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: |
~/.gradle/caches
Expand All @@ -40,7 +35,7 @@ jobs:
${{ runner.os }}-gradle-

- name: Initialize CodeQL
uses: github/codeql-action/init@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
uses: github/codeql-action/init@96f518a34f7a870018057716cc4d7a5c014bd61c # v3.29.5
with:
languages: 'java'
build-mode: 'manual'
Expand All @@ -57,12 +52,10 @@ jobs:
--build-cache --parallel --stacktrace --no-daemon --max-workers=4

- name: Perform CodeQL Analysis and upload results to GitHub Security tab
uses: github/codeql-action/analyze@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
uses: github/codeql-action/analyze@96f518a34f7a870018057716cc4d7a5c014bd61c # v3.29.5

trivy:
name: Analyze changes with Trivy
# Don’t run on PR, only when pushing to master
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
permissions:
actions: read
Expand All @@ -71,12 +64,12 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
with:
submodules: 'recursive'

- name: Cache Gradle dependencies
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: |
~/.gradle/caches
Expand Down Expand Up @@ -122,7 +115,7 @@ jobs:
TRIVY_JAVA_DB_REPOSITORY: ghcr.io/aquasecurity/trivy-java-db,public.ecr.aws/aquasecurity/trivy-java-db

- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@51f77329afa6477de8c49fc9c7046c15b9a4e79d # v3.29.5
uses: github/codeql-action/upload-sarif@96f518a34f7a870018057716cc4d7a5c014bd61c # v3.29.5
if: always()
with:
sarif_file: 'trivy-results.sarif'
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/run-system-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ jobs:
group: APM Larger Runners
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
with:
submodules: 'recursive'
fetch-depth: 0

- name: Cache Gradle dependencies
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
with:
path: |
~/.gradle/caches
Expand Down Expand Up @@ -54,6 +54,7 @@ jobs:
secrets: inherit
permissions:
contents: read
id-token: write
packages: write
with:
library: java
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-docker-build-image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
policy: self.update-docker-build-image.create-pr

- name: Checkout the repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Define the Docker build image tag to use
id: define-tag
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-gradle-dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
policy: self.update-gradle-dependencies.create-pr

- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0
with:
submodules: "recursive"
- name: Download ghcommit CLI
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/update-jmxfetch-submodule.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
policy: self.update-jmxfetch-submodule.create-pr

- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # 5.0.0

- name: Update Submodule
run: |
Expand Down
90 changes: 86 additions & 4 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ include:

stages:
- build
- shared-pipeline
- publish
- shared-pipeline
- benchmarks
- macrobenchmarks
- tests
Expand All @@ -26,8 +26,8 @@ variables:
DEPENDENCY_CACHE_POLICY: pull
BUILD_CACHE_POLICY: pull
GRADLE_VERSION: "8.14.3" # must match gradle-wrapper.properties
MAVEN_REPOSITORY_PROXY: "http://artifactual.artifactual.all-clusters.local-dc.fabric.dog:8081/repository/maven-central/"
GRADLE_PLUGIN_PROXY: "http://artifactual.artifactual.all-clusters.local-dc.fabric.dog:8081/repository/gradle-plugin-portal-proxy/"
MAVEN_REPOSITORY_PROXY: "https://depot-read-api-java.us1.ddbuild.io/magicmirror/magicmirror/@current/"
GRADLE_PLUGIN_PROXY: "https://depot-read-api-java.us1.ddbuild.io/magicmirror/magicmirror/@current/"
BUILDER_IMAGE_VERSION_PREFIX: "v25.07-" # use either an empty string (e.g. "") for latest images or a version followed by a hyphen (e.g. "v25.05-")
REPO_NOTIFICATION_CHANNEL: "#apm-java-escalations"
DEFAULT_TEST_JVMS: /^(8|11|17|21|stable)$/
Expand Down Expand Up @@ -580,7 +580,7 @@ muzzle-dep-report:
CI_USE_TEST_AGENT: "true"
CI_AGENT_HOST: local-agent
services:
- name: ghcr.io/datadog/dd-apm-test-agent/ddapm-test-agent:v1.27.1
- name: ghcr.io/datadog/dd-apm-test-agent/ddapm-test-agent:v1.31.1
alias: local-agent
variables:
LOG_LEVEL: "DEBUG"
Expand Down Expand Up @@ -880,6 +880,88 @@ requirements_json_test:
package-oci:
needs: [ build ]

override_verify_maven_central:
image: registry.ddbuild.io/images/base/gbi-ubuntu_2204:release
stage: publish
needs: [ ]
rules:
- if: '$POPULATE_CACHE'
when: never
- when: manual
allow_failure: true
script:
- touch OVERRIDE_MAVEN_VERIFY
cache: # Cache is used to signal between the override_verify_maven_central and verify_maven_central_deployment jobs
- key: $CI_PIPELINE_ID-OVERRIDE_SIGNAL
paths:
- OVERRIDE_MAVEN_VERIFY
policy: push
unprotect: true

# Verify Maven Central deployment is publicly available before publishing OCI images
verify_maven_central_deployment:
image: registry.ddbuild.io/images/base/gbi-ubuntu_2204:release
stage: publish
needs: [ deploy_to_maven_central ]
rules:
- if: '$POPULATE_CACHE'
when: never
- if: '$CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+$/'
when: on_success
- when: manual
allow_failure: true
cache: # Cache is used to signal between the override_verify_maven_central and verify_maven_central_deployment jobs
- key: $CI_PIPELINE_ID-OVERRIDE_SIGNAL
paths:
- OVERRIDE_MAVEN_VERIFY
policy: pull
unprotect: true
script:
- if [ -f OVERRIDE_MAVEN_VERIFY ]; then echo "SKIPPING MAVEN VERIFICATION"; exit 0; fi
- |
export VERSION=${CI_COMMIT_TAG##v}
ARTIFACT_URLS=(
"https://repo1.maven.org/maven2/com/datadoghq/dd-java-agent/${VERSION}/dd-java-agent-${VERSION}.jar"
"https://repo1.maven.org/maven2/com/datadoghq/dd-trace-api/${VERSION}/dd-trace-api-${VERSION}.jar"
"https://repo1.maven.org/maven2/com/datadoghq/dd-trace-ot/${VERSION}/dd-trace-ot-${VERSION}.jar"
)
# Wait 5 mins initially, then try 5 times with a minute delay between each retry to see if the release artifacts are available
sleep 300
TRY=0
MAX_TRIES=5
DELAY=60
while [ $TRY -lt $MAX_TRIES ]; do
ARTIFACTS_AVAILABLE=true
for URL in "${ARTIFACT_URLS[@]}"; do
if ! curl --location --fail --silent --show-error -I "$URL"; then
ARTIFACTS_AVAILABLE=false
break
fi
done
if [ "$ARTIFACTS_AVAILABLE" = true ]; then
break
fi
TRY=$((TRY + 1))
if [ $TRY -eq $MAX_TRIES ]; then
echo "The release was not available after 10 mins. Manually re-run the job to try again."
exit 1
fi
sleep $DELAY
done

publishing-gate:
stage: publish
needs:
- job: verify_maven_central_deployment
optional: true # Required for releases only
rules:
- if: '$POPULATE_CACHE'
when: on_success
- if: '$CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+$/'
when: on_success
- when: manual
allow_failure: true

configure_system_tests:
variables:
SYSTEM_TESTS_SCENARIOS_GROUPS: "simple_onboarding,simple_onboarding_profiling,simple_onboarding_appsec,docker-ssi,lib-injection"
Expand Down
Loading
Loading