Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions .circleci/collect_reports.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ done

mkdir -p $REPORTS_DIR >/dev/null 2>&1

cp /tmp/hs_err_pid*.log $REPORTS_DIR || true
cp /tmp/java_pid*.hprof $REPORTS_DIR || true
cp /tmp/javacore.* $REPORTS_DIR || true
cp /tmp/*.trc $REPORTS_DIR || true
cp /tmp/*.dmp $REPORTS_DIR || true
cp /tmp/dd-profiler/*.jfr $REPORTS_DIR || true
cp /tmp/hs_err_pid*.log $REPORTS_DIR 2>/dev/null || true
cp /tmp/java_pid*.hprof $REPORTS_DIR 2>/dev/null || true
cp /tmp/javacore.* $REPORTS_DIR 2>/dev/null || true
cp /tmp/*.trc $REPORTS_DIR 2>/dev/null || true
cp /tmp/*.dmp $REPORTS_DIR 2>/dev/null || true
cp /tmp/dd-profiler/*.jfr $REPORTS_DIR 2>/dev/null || true

function process_reports () {
project_to_save=$1
Expand All @@ -59,9 +59,9 @@ function process_reports () {
else
echo "copying reports for $project_to_save"
mkdir -p $report_path
cp -r workspace/$project_to_save/build/reports/* $report_path/ || true
cp workspace/$project_to_save/build/hs_err_pid*.log $report_path/ || true
cp workspace/$project_to_save/build/javacore*.txt $report_path/ || true
cp -r workspace/$project_to_save/build/reports/* $report_path/ 2>/dev/null || true
cp workspace/$project_to_save/build/hs_err_pid*.log $report_path/ 2>/dev/null || true
cp workspace/$project_to_save/build/javacore*.txt $report_path/ 2>/dev/null || true
fi
}

Expand All @@ -73,4 +73,4 @@ for report_path in workspace/**/build/reports; do
process_reports $report_path
done

tar -cvzf reports.tar $REPORTS_DIR
tar -czf reports.tar $REPORTS_DIR
2 changes: 1 addition & 1 deletion .circleci/collect_results.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ function get_source_file () {
fi
done
done < <(grep -rl "class $class" "$file_path")
file_path="$common_root"
file_path="/$common_root"
fi
}

Expand Down
44 changes: 10 additions & 34 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,40 +1,16 @@
version: 2.1
setup: true
python310_image: &python310_image cimg/python:3.10
parameters:
nightly:
type: boolean
default: false
weekly:
type: boolean
default: false
orbs:
continuation: circleci/[email protected]
executors:
python310:
docker:
- image: *python310_image
resource_class: small

jobs:
setup:
executor: python310
donothing:
resource_class: small
docker:
- image: alpine
steps:
- checkout
- run:
name: Checkout merge commit
command: .circleci/checkout_merge_commit.sh
- run:
name: Install dependencies
command: pip3 install jinja2 requests
- run:
name: Generate config
command: >-
CIRCLE_IS_NIGHTLY="<< pipeline.parameters.nightly >>"
CIRCLE_IS_WEEKLY="<< pipeline.parameters.weekly >>"
.circleci/render_config.py
- continuation/continue:
configuration_path: .circleci/config.continue.yml
command: echo 'Done'

workflows:
setup:
build_test:
jobs:
- setup
- donothing:
name: required
4 changes: 2 additions & 2 deletions .circleci/upload_ciapp.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
SERVICE_NAME="dd-trace-java"
PIPELINE_STAGE=$1
CACHE_TYPE=$1
TEST_JVM=$2

# JAVA_???_HOME are set in the base image for each used JDK https://github.com/DataDog/dd-trace-java-docker-build/blob/master/Dockerfile#L86
Expand All @@ -23,7 +23,7 @@ junit_upload() {
DD_API_KEY=$1 \
datadog-ci junit upload --service $SERVICE_NAME \
--logs \
--tags "test.traits:{\"marker\":[\"$PIPELINE_STAGE\"]}" \
--tags "test.traits:{\"category\":[\"$CACHE_TYPE\"]}" \
--tags "runtime.name:$(java_prop java.runtime.name)" \
--tags "runtime.vendor:$(java_prop java.vendor)" \
--tags "runtime.version:$(java_prop java.version)" \
Expand Down
156 changes: 96 additions & 60 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -5,72 +5,108 @@
* @DataDog/apm-java

# @DataDog/apm-idm-java
dd-java-agent/instrumentation/ @DataDog/apm-idm-java
/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/decorator/ @DataDog/apm-idm-java
/dd-java-agent/instrumentation/ @DataDog/apm-idm-java

# @DataDog/profiling-java
dd-java-agent/agent-profiling/ @DataDog/profiling-java
dd-java-agent/agent-crashtracking/ @DataDog/profiling-java
dd-java-agent/instrumentation/exception-profiling/ @DataDog/profiling-java
dd-java-agent/instrumentation/java-directbytebuffer/ @DataDog/profiling-java
dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/jfr/ @DataDog/profiling-java
dd-java-agent/agent-bootstrap/src/main/java11/datadog/trace/bootstrap/instrumentation/jfr/ @DataDog/profiling-java
dd-smoke-tests/profiling-integration-tests/ @DataDog/profiling-java
# @DataDog/apm-release-platform
/.gitlab/ @DataDog/apm-release-platform
/.gitlab-ci.yml @DataDog/apm-release-platform

# @DataDog/ci-app-libraries-java
dd-java-agent/agent-ci-visibility/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/cucumber/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/jacoco/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/junit-4.10/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/junit-5.3/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/karate/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/scalatest/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/selenium/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/testng/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/gradle-3.0/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/gradle-8.3/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/gradle-testing/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/maven-3.2.1/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/maven-surefire/ @DataDog/ci-app-libraries-java
dd-java-agent/instrumentation/weaver/ @DataDog/ci-app-libraries-java
dd-smoke-tests/gradle/ @DataDog/ci-app-libraries-java
dd-smoke-tests/maven/ @DataDog/ci-app-libraries-java
**/civisibility/ @DataDog/ci-app-libraries-java
**/CiVisibility*.java @DataDog/ci-app-libraries-java
**/CiVisibility*.groovy @DataDog/ci-app-libraries-java
# @DataDog/apm-sdk-api-java
/dd-trace-ot/ @DataDog/apm-sdk-api-java

# @DataDog/debugger-java (Live Debugger)
dd-java-agent/agent-debugger/ @DataDog/debugger-java
dd-smoke-tests/debugger-integration-tests/ @DataDog/debugger-java
# @DataDog/apm-serverless
/dd-trace-core/src/main/java/datadog/trace/lambda/ @DataDog/apm-serverless
/dd-trace-core/src/test/groovy/datadog/trace/lambda/ @DataDog/apm-serverless

# @DataDog/apm-lang-platform-java
/.circleci/ @DataDog/apm-lang-platform-java
/.github/ @DataDog/apm-lang-platform-java
/benchmark/ @DataDog/apm-lang-platform-java
/components/ @DataDog/apm-lang-platform-java
/dd-java-agent/instrumentation/java-* @DataDog/apm-lang-platform-java
/metadata/ @DataDog/apm-lang-platform-java
/remote-config/ @DataDog/apm-lang-platform-java
/telemetry/ @DataDog/apm-lang-platform-java
/test-published-dependencies/ @DataDog/apm-lang-platform-java

# @DataDog/asm-java (AppSec/IAST)
dd-java-agent/agent-iast/ @DataDog/asm-java
dd-java-agent/instrumentation/*iast* @DataDog/asm-java
dd-java-agent/instrumentation/*appsec* @DataDog/asm-java
dd-java-agent/instrumentation/json/ @DataDog/asm-java
dd-java-agent/instrumentation/snakeyaml/ @DataDog/asm-java
dd-java-agent/instrumentation/velocity/ @DataDog/asm-java
dd-java-agent/instrumentation/freemarker/ @DataDog/asm-java
dd-smoke-tests/iast-util/ @DataDog/asm-java
dd-smoke-tests/spring-security/ @DataDog/asm-java
dd-java-agent/instrumentation/commons-fileupload/ @DataDog/asm-java
dd-java-agent/instrumentation/spring-security-5/ @DataDog/asm-java
**/appsec/ @DataDog/asm-java
**/iast/ @DataDog/asm-java
**/Iast*.java @DataDog/asm-java
**/Iast*.groovy @DataDog/asm-java
**/rasp/ @Datadog/asm-java
**/*Rasp*.java @DataDog/asm-java
**/*Rasp*.groovy @DataDog/asm-java
**/*Waf*.java @DataDog/asm-java
**/*Waf*.groovy @DataDog/asm-java
/buildSrc/call-site-instrumentation-plugin/ @DataDog/asm-java
/dd-java-agent/agent-iast/ @DataDog/asm-java
/dd-java-agent/instrumentation/*iast* @DataDog/asm-java
/dd-java-agent/instrumentation/*appsec* @DataDog/asm-java
/dd-java-agent/instrumentation/json/ @DataDog/asm-java
/dd-java-agent/instrumentation/snakeyaml/ @DataDog/asm-java
/dd-java-agent/instrumentation/velocity/ @DataDog/asm-java
/dd-java-agent/instrumentation/freemarker/ @DataDog/asm-java
/dd-smoke-tests/iast-util/ @DataDog/asm-java
/dd-smoke-tests/spring-security/ @DataDog/asm-java
/dd-java-agent/instrumentation/commons-fileupload/ @DataDog/asm-java
/dd-java-agent/instrumentation/spring-security-5/ @DataDog/asm-java
/dd-trace-api/src/main/java/datadog/trace/api/EventTracker.java @DataDog/asm-java
/internal-api/src/main/java/datadog/trace/api/gateway/ @DataDog/asm-java
**/appsec/ @DataDog/asm-java
**/*CallSite*.java @DataDog/asm-java
**/*CallSite*.groovy @DataDog/asm-java
**/*CallSite*.kt @DataDog/asm-java
**/iast/ @DataDog/asm-java
**/Iast*.java @DataDog/asm-java
**/Iast*.groovy @DataDog/asm-java
**/rasp/ @Datadog/asm-java
**/*Rasp*.java @DataDog/asm-java
**/*Rasp*.groovy @DataDog/asm-java
**/*Waf*.java @DataDog/asm-java
**/*Waf*.groovy @DataDog/asm-java

# @DataDog/ci-app-libraries-java
/dd-java-agent/agent-ci-visibility/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/cucumber/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/jacoco/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/junit-4.10/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/junit-5.3/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/karate/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/scalatest/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/selenium/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/testng/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/gradle-3.0/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/gradle-8.3/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/gradle-testing/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/maven-3.2.1/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/maven-surefire/ @DataDog/ci-app-libraries-java
/dd-java-agent/instrumentation/weaver/ @DataDog/ci-app-libraries-java
/dd-smoke-tests/gradle/ @DataDog/ci-app-libraries-java
/dd-smoke-tests/maven/ @DataDog/ci-app-libraries-java
/internal-api/src/main/java/datadog/trace/api/git/ @DataDog/ci-app-libraries-java
**/civisibility/ @DataDog/ci-app-libraries-java
**/CiVisibility*.java @DataDog/ci-app-libraries-java
**/CiVisibility*.groovy @DataDog/ci-app-libraries-java

# @DataDog/debugger-java (Live Debugger)
/dd-java-agent/agent-debugger/ @DataDog/debugger-java
/dd-smoke-tests/debugger-integration-tests/ @DataDog/debugger-java

# @DataDog/data-jobs-monitoring
dd-java-agent/instrumentation/spark/ @DataDog/data-jobs-monitoring
dd-java-agent/instrumentation/spark-executor/ @DataDog/data-jobs-monitoring
/dd-java-agent/instrumentation/spark/ @DataDog/data-jobs-monitoring
/dd-java-agent/instrumentation/spark-executor/ @DataDog/data-jobs-monitoring

# @DataDog/data-streams-monitoring
dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/datastreams @DataDog/data-streams-monitoring
dd-trace-core/src/main/java/datadog/trace/core/datastreams @DataDog/data-streams-monitoring
dd-trace-core/src/test/groovy/datadog/trace/core/datastreams @DataDog/data-streams-monitoring
internal-api/src/main/java/datadog/trace/api/datastreams @DataDog/data-streams-monitoring
internal-api/src/test/groovy/datadog/trace/api/datastreams @DataDog/data-streams-monitoring
/dd-java-agent/testing/src/main/groovy/datadog/trace/agent/test/datastreams @DataDog/data-streams-monitoring
/dd-trace-core/src/main/java/datadog/trace/core/datastreams @DataDog/data-streams-monitoring
/dd-trace-core/src/test/groovy/datadog/trace/core/datastreams @DataDog/data-streams-monitoring
/internal-api/src/main/java/datadog/trace/api/datastreams @DataDog/data-streams-monitoring
/internal-api/src/test/groovy/datadog/trace/api/datastreams @DataDog/data-streams-monitoring
**/datastreams/ @DataDog/data-streams-monitoring
**/DataStreams* @DataDog/data-streams-monitoring

# @DataDog/profiling-java
/dd-java-agent/agent-profiling/ @DataDog/profiling-java
/dd-java-agent/agent-crashtracking/ @DataDog/profiling-java
/dd-java-agent/instrumentation/exception-profiling/ @DataDog/profiling-java
/dd-java-agent/instrumentation/java-directbytebuffer/ @DataDog/profiling-java
/dd-java-agent/agent-bootstrap/src/main/java/datadog/trace/bootstrap/instrumentation/jfr/ @DataDog/profiling-java
/dd-java-agent/agent-bootstrap/src/main/java11/datadog/trace/bootstrap/instrumentation/jfr/ @DataDog/profiling-java
/dd-trace-api/src/main/java/datadog/trace/api/profiling @DataDog/profiling-java
/internal-api/src/main/java/datadog/trace/api/profiling @DataDog/profiling-java
/internal-api/src/main/java/datadog/trace/api/EndpointCheckpointer.java @DataDog/profiling-java
/internal-api/src/main/java/datadog/trace/api/EndpointTracker.java @DataDog/profiling-java
/dd-smoke-tests/profiling-integration-tests/ @DataDog/profiling-java
8 changes: 7 additions & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,13 @@ updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
interval: "weekly"
labels:
- "comp: tooling"
- "tag: dependencies"
- "tag: no release notes"
commit-message:
prefix: "chore(ci): "
groups:
gh-actions-packages:
patterns:
Expand Down
1 change: 1 addition & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
- Assign the `type:` and (`comp:` or `inst:`) labels in addition to [any usefull labels](https://github.com/DataDog/dd-trace-java/blob/master/CONTRIBUTING.md#labels)
- Don't use `close`, `fix` or any [linking keywords](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword) when referencing an issue.
Use `solves` instead, and assign the PR [milestone](https://github.com/DataDog/dd-trace-java/milestones) to the issue
- Update the [CODEOWNERS](https://github.com/DataDog/dd-trace-java/blob/master/.github/CODEOWNERS) file on source file addition, move, or deletion
- Update the [public documentation](https://docs.datadoghq.com/tracing/trace_collection/library_config/java/) in case of new configuration flag or behavior

Jira ticket: [PROJ-IDENT]
Expand Down
15 changes: 12 additions & 3 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ _Notes:_ This action will not apply to release candidate versions using `-RC` ta

_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).

_Action:_ Update the Docker build image used in CircleCI and GitLab CI with the latest tag.
_Action:_ Update the Docker build image used in GitLab CI with the latest tag.

_Recovery:_ Download artifacts and upload them manually to the related _download release_.

Expand Down Expand Up @@ -106,7 +106,7 @@ _Recovery:_ Manually trigger the action again.

### analyze-changes [🔗](analyze-changes.yaml)

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

_Action:_

Expand All @@ -115,6 +115,16 @@ _Action:_

_Notes:_ Results are sent on both production and staging environments.

### check-ci-pipelines [🔗](check-ci-pipelines.yaml)

_Trigger:_ When opening or updating a PR.

_Action:_ This action will check all other continuous integration jobs (Github action, Gitlab, CircleCi), and will fail if any of them fails.
The purpose of this job is to be required for PR merges, achieving Green CI Policy.
It got an `ignored` parameters to exclude some jobs if they are temprorary failing.

_Recovery:_ Manually trigger the action on the desired branch.

### comment-on-submodule-update [🔗](comment-on-submodule-update.yaml)

_Trigger:_ When creating a PR commits to `master` or a `release/*` branch with a Git Submodule update.
Expand All @@ -137,7 +147,6 @@ _Action:_ Build the Java Client Library and runs [the system tests](https://gith

_Recovery:_ Manually trigger the action on the desired branch.


## Maintenance

GitHub actions should be part of the [repository allowed actions to run](https://github.com/DataDog/dd-trace-java/settings/actions).
Expand Down
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 @@ -43,7 +43,7 @@ jobs:
run: |
echo "${{ steps.get-release-version.outputs.VERSION }}: ${{ steps.get-release-url.outputs.URL }}" >> index.yml
- name: Commit and push changes
uses: planetscale/ghcommit-action@5b20c92facae8dbf8a3836dc65b8503dda378573 # v0.2.13
uses: planetscale/ghcommit-action@6a383e778f6620afde4bf4b45069d3c6983c1ae2 # v0.2.15
with:
commit_message: "chore: Add version ${{ steps.get-release-version.outputs.VERSION }} to Cloud Foundry"
repo: ${{ github.repository }}
Expand Down
Loading