Skip to content

Commit 6e487ae

Browse files
authored
Merge branch 'master' into mhlidd/remote_config_env
2 parents b07e2ea + 2b72cb5 commit 6e487ae

File tree

720 files changed

+10734
-2945
lines changed

Some content is hidden

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

720 files changed

+10734
-2945
lines changed

.circleci/config.continue.yml.j2

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ instrumentation_modules: &instrumentation_modules "dd-java-agent/instrumentation
3636
debugger_modules: &debugger_modules "dd-java-agent/agent-debugger|dd-java-agent/agent-bootstrap|dd-java-agent/agent-builder|internal-api|communication|dd-trace-core"
3737
profiling_modules: &profiling_modules "dd-java-agent/agent-profiling"
3838

39-
default_system_tests_commit: &default_system_tests_commit c6e54d143cfdf97b2f0a815f22f53247c119f635
39+
default_system_tests_commit: &default_system_tests_commit 2cb5033072c1813eccdce332153a378607e73d85
4040

4141
parameters:
4242
nightly:
@@ -422,6 +422,7 @@ jobs:
422422
-PgitBaseRef=origin/{{ pr_base_ref }}
423423
{% endif %}
424424
-PrunBuildSrcTests
425+
-PskipSpotless
425426
-PtaskPartitionCount=${CIRCLE_NODE_TOTAL} -PtaskPartition=${CIRCLE_NODE_INDEX}
426427
<< pipeline.parameters.gradle_flags >>
427428
--max-workers=8
@@ -1107,12 +1108,20 @@ build_test_jobs: &build_test_jobs
11071108
gradleTarget: ":profilingCheck"
11081109
cacheType: profiling
11091110
1111+
- check:
1112+
requires:
1113+
- ok_to_test
1114+
name: check_debugger
1115+
gradleTarget: ":debuggerCheck"
1116+
cacheType: base
1117+
11101118
- fan_in:
11111119
requires:
11121120
- check_base
11131121
- check_inst
11141122
- check_smoke
11151123
- check_profiling
1124+
- check_debugger
11161125
name: check
11171126
stage: check
11181127

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ dd-java-agent/instrumentation/testng/ @DataDog/ci-app-libraries-java
2929
dd-java-agent/instrumentation/gradle-3.0/ @DataDog/ci-app-libraries-java
3030
dd-java-agent/instrumentation/gradle-8.3/ @DataDog/ci-app-libraries-java
3131
dd-java-agent/instrumentation/maven-3.2.1/ @DataDog/ci-app-libraries-java
32+
dd-java-agent/instrumentation/weaver/ @DataDog/ci-app-libraries-java
3233
dd-smoke-tests/gradle/ @DataDog/ci-app-libraries-java
3334
dd-smoke-tests/maven/ @DataDog/ci-app-libraries-java
3435
**/civisibility/ @DataDog/ci-app-libraries-java
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: "Bug Report (Low Priority)"
2+
description: "Create a public Bug Report. Note that these may not be addressed as it depeonds on capacity and that looking up account information will be difficult."
3+
labels: "type: bug"
4+
body:
5+
- type: input
6+
attributes:
7+
label: Tracer Version(s)
8+
description: "Version(s) of the tracer affected by this bug"
9+
placeholder: "1.44.0"
10+
validations:
11+
required: true
12+
13+
- type: input
14+
attributes:
15+
label: Java Version(s)
16+
description: "Version(s) of Java (`java --version`) that you've encountered this bug with"
17+
placeholder: 21.0.4
18+
validations:
19+
required: true
20+
21+
- type: dropdown
22+
attributes:
23+
label: JVM Vendor
24+
description: "Which JVM vendor does your application use"
25+
options:
26+
- Oracle JDK
27+
- Alibaba Dragonwell
28+
- Amazon Corretto
29+
- Azul Zing / Zulu
30+
- BellSoft Liberica JDK
31+
- Eclipse Adoptium / Temurin
32+
- Eclipse OpenJ9
33+
- IBM SDK / Semeru
34+
- Oracle GraalVM
35+
- RedHat JDK
36+
- SapMachine
37+
- Other (please specify in comments)
38+
validations:
39+
required: true
40+
41+
- type: textarea
42+
attributes:
43+
label: Bug Report
44+
description: Please add a clear and concise description of the bug here
45+
validations:
46+
required: true
47+
48+
- type: textarea
49+
attributes:
50+
label: Expected Behavior
51+
description: What is the expected behavior
52+
validations:
53+
required: true
54+
55+
- type: textarea
56+
attributes:
57+
label: Reproduction Code
58+
description: Please add code here to help us reproduce the problem
59+
validations:
60+
required: false

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
blank_issues_enabled: true
1+
blank_issues_enabled: false
22
contact_links:
3-
- name: Bug Report
3+
- name: Bug Report (High Priority)
44
url: https://help.datadoghq.com/hc/en-us/requests/new?tf_1260824651490=pt_product_type:apm&tf_1900004146284=pt_apm_language:java
5-
about: This option creates an expedited Bug Report via the helpdesk (no login required). This will allow us to look up your account and allows you to provide additional information in private.
6-
- name: Feature Request
5+
about: Create an expedited Bug Report via the helpdesk (no login required). This will allow us to look up your account and allows you to provide additional information in private.
6+
- name: Feature Request (High Priority)
77
url: https://help.datadoghq.com/hc/en-us/requests/new?tf_1260824651490=pt_product_type:apm&tf_1900004146284=pt_apm_language:java&tf_1260825272270=pt_apm_category_feature_request
8-
about: This option creates an expedited Feature Request via the helpdesk (no login required). This helps with prioritization and allows you to provide additional information in private.
8+
about: Create an expedited Feature Request via the helpdesk (no login required). This helps with prioritization and allows you to provide additional information in private.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: Feature Request (Low Priority)
2+
description: Create a public Feature Request. Note that these may not be addressed as it depeonds on capacity and that looking up account information will be difficult.
3+
labels: "type: feature request"
4+
body:
5+
- type: input
6+
attributes:
7+
label: Library Name
8+
description: "If your feature request is to add instrumentation support for a library please provide the name here"
9+
placeholder: "spring-boot"
10+
validations:
11+
required: false
12+
13+
- type: input
14+
attributes:
15+
label: Library Version(s)
16+
description: "If your feature request is to add instrumentation support for a library please provide the version you use"
17+
placeholder: "1.2"
18+
validations:
19+
required: false
20+
21+
- type: textarea
22+
attributes:
23+
label: Describe the feature you'd like
24+
description: A clear and concise description of what you want to happen.
25+
validations:
26+
required: true
27+
28+
- type: textarea
29+
attributes:
30+
label: Is your feature request related to a problem?
31+
description: |
32+
Please add a clear and concise description of your problem.
33+
E.g. I'm unable to instrument my database queries...
34+
validations:
35+
required: false
36+
37+
- type: textarea
38+
attributes:
39+
label: Describe alternatives you've considered
40+
description: A clear and concise description of any alternative solutions or features you've considered
41+
validations:
42+
required: false
43+
44+
- type: textarea
45+
attributes:
46+
label: Additional context
47+
description: Add any other context or screenshots about the feature request here
48+
validations:
49+
required: false

.github/workflows/README.md

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,6 @@ _Action:_ Check the pull request complies with [the contribution guidelines](htt
2828

2929
_Recovery:_ Manually verify the guideline compliance.
3030

31-
### create-next-milestone [🔗](create-next-milestone.yaml)
32-
33-
_Trigger:_ When closing a milestone.
34-
35-
_Action:_ Create a new milestone by incrementing minor version.
36-
37-
_Comment:_ Disabled as also covered by increment-milestone-on-tag.
38-
This will be removed after some testing.
39-
4031
### draft-release-notes-on-tag [🔗](draft-release-notes-on-tag.yaml)
4132

4233
_Trigger:_ When creating a tag, or manually (providing a tag)
@@ -62,6 +53,16 @@ _Recovery:_ Manually [close the related milestone and create a new one](https://
6253

6354
_Notes:_ This action will not apply to release candidate versions using `-RC` tags.
6455

56+
### update-docker-build-image [🔗](update-docker-build-image.yaml)
57+
58+
_Trigger:_ Quarterly released, loosely [a day after the new image tag is created](https://github.com/DataDog/dd-trace-java-docker-build/blob/master/.github/workflows/docker-tag.yml).
59+
60+
_Action:_ Update the Docker build image used in CircleCI and GitLab CI with the latest tag.
61+
62+
_Recovery:_ Download artifacts and upload them manually to the related _download release_.
63+
64+
_Notes:_ Manually trigger the action again given the desired image tag as input.
65+
6566
### update-download-releases [🔗](update-download-releases.yaml)
6667

6768
_Trigger:_ When a release is published.
@@ -103,7 +104,7 @@ _Recovery:_ Manually trigger the action again.
103104

104105
## Code Quality and Security
105106

106-
### analyze-changes [🔗](analyze-changes-with-github-codeql.yaml)
107+
### analyze-changes [🔗](analyze-changes.yaml)
107108

108109
_Trigger:_ When pushing commits to `master` or any pull request targeting `master`.
109110

@@ -121,7 +122,7 @@ _Trigger:_ When creating a PR commits to `master` or a `release/*` branch with a
121122

122123
_Action:_ Notify the PR author through comments that about the Git Submodule update.
123124

124-
### update-gradle-dependencies [🔗](update-gradle-dependencies.yml)
125+
### update-gradle-dependencies [🔗](update-gradle-dependencies.yaml)
125126

126127
_Trigger:_ Every week or manually.
127128

.github/workflows/analyze-changes.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
submodules: 'recursive'
5252

5353
- name: Cache Gradle dependencies
54-
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
54+
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
5555
with:
5656
path: |
5757
~/.gradle/caches
@@ -113,7 +113,7 @@ jobs:
113113
submodules: 'recursive'
114114

115115
- name: Cache Gradle dependencies
116-
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
116+
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
117117
with:
118118
path: |
119119
~/.gradle/caches

.github/workflows/create-next-milestone.yaml

Lines changed: 0 additions & 22 deletions
This file was deleted.
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Update Docker Build Image
2+
3+
on:
4+
schedule:
5+
# A day after creating the tag from https://github.com/DataDog/dd-trace-java-docker-build/blob/master/.github/workflows/docker-tag.yml
6+
- cron: '0 0 1 2,5,8,11 *'
7+
workflow_dispatch:
8+
inputs:
9+
tag:
10+
description: 'The tag to use for the Docker build image'
11+
required: true
12+
default: 'vYY.MM-base'
13+
14+
jobs:
15+
update-docker-build-image:
16+
runs-on: ubuntu-latest
17+
permissions:
18+
contents: write # Required to commit and push changes to a new branch
19+
pull-requests: write # Required to create a pull request
20+
steps:
21+
- name: Checkout the repository
22+
uses: actions/checkout@v2
23+
- name: Download ghcommit CLI
24+
run: |
25+
curl https://github.com/planetscale/ghcommit/releases/download/v0.1.48/ghcommit_linux_amd64 -o /usr/local/bin/ghcommit -L
26+
chmod +x /usr/local/bin/ghcommit
27+
- name: Pick a branch name
28+
id: define-branch
29+
run: echo "branch=ci/update-docker-build-image-$(date +'%Y%m%d')" >> $GITHUB_OUTPUT
30+
- name: Create branch
31+
run: |
32+
git checkout -b ${{ steps.define-branch.outputs.branch }}
33+
git push -u origin ${{ steps.define-branch.outputs.branch }} --force
34+
- name: Define the Docker build image tage to use
35+
id: define-tag
36+
run: |
37+
if [ -n "${{ github.event.inputs.tag }}" ]; then
38+
TAG=${{ github.event.inputs.tag }}
39+
else
40+
CURRENT_MONTH=$(date +%m)
41+
CURRENT_YEAR=$(date +%y)
42+
case $CURRENT_MONTH in
43+
01) TAG_DATE="$(($CURRENT_YEAR - 1)).10" ;;
44+
02|03|04) TAG_DATE="${CURRENT_YEAR}.01" ;;
45+
05|06|07) TAG_DATE="${CURRENT_YEAR}.04" ;;
46+
08|09|10) TAG_DATE="${CURRENT_YEAR}.07" ;;
47+
11|12) TAG_DATE="${CURRENT_YEAR}.10" ;;
48+
esac
49+
TAG="v${TAG_DATE}-base"
50+
fi
51+
echo "tag=${TAG}" >> "$GITHUB_OUTPUT"
52+
echo "::notice::Using Docker build image tag: ${TAG}"
53+
- name: Update the Docker build image in CircleCI config
54+
run: |
55+
sed -i 's|DOCKER_IMAGE_VERSION=.*|DOCKER_IMAGE_VERSION="${{ steps.define-tag.outputs.tag }}"|' .circleci/render_config.py
56+
- name: Update the Docker build image in GitLab CI config
57+
run: |
58+
sed -i 's|image: ghcr.io/datadog/dd-trace-java-docker-build:.*|image: ghcr.io/datadog/dd-trace-java-docker-build:${{ steps.define-tag.outputs.tag }}|' .gitlab-ci.yml
59+
- name: Commit and push changes
60+
env:
61+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
62+
run: |
63+
ghcommit --repository ${{ github.repository }} --branch ${{ steps.define-branch.outputs.branch }} --add .circleci/render_config.py --add .gitlab-ci.yml --message "feat(ci): Update Docker build image"
64+
- name: Create pull request
65+
env:
66+
GH_TOKEN: ${{ github.token }}
67+
run: |
68+
gh pr create --title "Update Docker build image" \
69+
--base master \
70+
--head ${{ steps.define-branch.outputs.branch }} \
71+
--label "comp: tooling" \
72+
--label "type: enhancement" \
73+
--label "tag: no release notes" \
74+
--body "This PR updates the Docker build image to ${{ steps.define-tag.outputs.tag }}."

SECURITY.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
1-
# Security
1+
# Security Policy
22

3-
## Security Vulnerabilities
3+
This document outlines the security policy for the Datadog Java client library (aka Java tracer) and what to do if you discover a security vulnerability in the project.
4+
Most notably, please do not share the details in a public forum (such as in a discussion, issue, or pull request) but instead reach out to us with the details.
5+
This gives us an opportunity to release a fix for others to benefit from by the time details are made public.
46

5-
If you have found a security issue, please contact the security team directly at security@datadoghq.com.
7+
## Reporting a Vulnerability
8+
9+
If you discover a vulnerability in the Datadog Java client library (or any Datadog product for that matter) please submit details to the following email address:
10+
11+
* [security@datadoghq.com](mailto:security@datadoghq.com)

0 commit comments

Comments
 (0)