Skip to content

Commit 20de4ef

Browse files
committed
Merge branch 'main' of https://github.com/open-telemetry/opentelemetry-java into config-provider
2 parents 81f601c + 2de5a2c commit 20de4ef

File tree

607 files changed

+9839
-5788
lines changed

Some content is hidden

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

607 files changed

+9839
-5788
lines changed

.clomonitor.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
exemptions:
2+
- check: artifacthub_badge
3+
reason: "Artifact Hub doesn't support Java packages"
4+
- check: signed_releases
5+
reason: "Maven central releases are signed and there are no GitHub release artifacts"

.codecov.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ coverage:
1111
status:
1212
project:
1313
default:
14-
target: 90%
14+
target: 89%
1515
paths:
1616
- "!opencensus-shim/"
1717
- "!opentracing-shim/"

.fossa.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
version: 3
2+
3+
targets:
4+
only:
5+
- type: gradle
6+
exclude:
7+
# these modules are not published and so consumers will not be exposed to them
8+
- type: gradle
9+
path: ./
10+
target: ':api:testing-internal'
11+
- type: gradle
12+
path: ./
13+
target: ':exporters:otlp:testing-internal'
14+
- type: gradle
15+
path: ./
16+
target: ':integration-tests'
17+
- type: gradle
18+
path: ./
19+
target: ':integration-tests:graal'
20+
- type: gradle
21+
path: ./
22+
target: ':integration-tests:graal-incubating'
23+
- type: gradle
24+
path: ./
25+
target: ':integration-tests:otlp'
26+
- type: gradle
27+
path: ./
28+
target: ':integration-tests:tracecontext'
29+
- type: gradle
30+
path: ./
31+
target: ':perf-harness'
32+
- type: gradle
33+
path: ./
34+
target: ':testing-internal'
35+
36+
experimental:
37+
gradle:
38+
configurations-only:
39+
# consumer will only be exposed to these dependencies
40+
- runtimeClasspath

.github/config/markdown-link-check-config.json

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

.github/renovate.json5

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
11
{
22
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
33
"extends": [
4-
"config:base"
4+
"config:recommended",
5+
"docker:pinDigests",
6+
"helpers:pinGitHubActionDigests"
57
],
68
"packageRules": [
9+
{
10+
// this is to reduce the number of renovate PRs
11+
"matchManagers": [
12+
"github-actions",
13+
"dockerfile"
14+
],
15+
"extends": ["schedule:weekly"],
16+
"groupName": "weekly update"
17+
},
718
{
819
"matchPackageNames": [
920
"io.opentelemetry.proto:opentelemetry-proto",

.github/repository-settings.md

Lines changed: 82 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -5,75 +5,101 @@ Repository settings in addition to what's documented already at
55

66
## General > Pull Requests
77

8-
* Allow squash merging > Default to pull request title
8+
- Allow squash merging > Default to pull request title
9+
10+
- Allow auto-merge
911

1012
## Actions > General
1113

12-
* Fork pull request workflows from outside collaborators:
14+
- Fork pull request workflows from outside collaborators:
1315
"Require approval for first-time contributors who are new to GitHub"
1416

1517
(To reduce friction for new contributors,
1618
as the default is "Require approval for first-time contributors")
1719

18-
## Branch protections
19-
20-
The order of branch protection rules
21-
[can be important](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule#about-branch-protection-rules).
22-
The branch protection rules below should be added before the `**/**` branch protection rule
23-
(this may require deleting the `**/**` rule and recreating it at the end).
24-
25-
### `main`
26-
27-
* Require branches to be up to date before merging: UNCHECKED
28-
29-
(PR jobs take too long, and leaving this unchecked has not been a significant problem)
30-
31-
* Status checks that are required:
32-
33-
* EasyCLA
34-
* required-status-check
35-
36-
### `release/*`
37-
38-
Same settings as above for `main`, except:
20+
- Workflow permissions
21+
- Default permissions granted to the `GITHUB_TOKEN` when running workflows in this repository:
22+
Read repository contents and packages permissions
23+
- Allow GitHub Actions to create and approve pull requests: UNCHECKED
24+
25+
## Rules > Rulesets
26+
27+
### `main` and release branches
28+
29+
- Targeted branches:
30+
- `main`
31+
- `release/*`
32+
- Branch rules
33+
- Restrict deletions: CHECKED
34+
- Require linear history: CHECKED
35+
- Require a pull request before merging: CHECKED
36+
- Required approvals: 1
37+
- Require review from Code Owners: CHECKED
38+
- Allowed merge methods: Squash
39+
- Require status checks to pass
40+
- Do not require status checks on creation: CHECKED
41+
- Status checks that are required
42+
- EasyCLA
43+
- `required-status-check`
44+
- `gradle-wrapper-validation`
45+
- Block force pushes: CHECKED
46+
- Require code scanning results: CHECKED
47+
- CodeQL
48+
- Security alerts: High or higher
49+
- Alerts: Errors
50+
51+
### `benchmarks` branch
52+
53+
- Targeted branches:
54+
- `benchmarks`
55+
- Branch rules
56+
- Restrict deletions: CHECKED
57+
- Require linear history: CHECKED
58+
- Block force pushes: CHECKED
59+
60+
### Old-style release branches
61+
62+
- Targeted branches:
63+
- `v0.*`
64+
- `v1.*`
65+
- Branch rules
66+
- Restrict creations: CHECKED
67+
- Restrict updates: CHECKED
68+
- Restrict deletions: CHECKED
69+
70+
### Restrict branch creation
71+
72+
- Targeted branches
73+
- Exclude:
74+
- `release/*`
75+
- `renovate/**/*`
76+
- `otelbot/**/*`
77+
- `revert-*/**/*` (these are created when using the GitHub UI to revert a PR)
78+
- Restrict creations: CHECKED
79+
80+
### Restrict updating tags
81+
82+
- Targeted tags
83+
- All tags
84+
- Restrict updates: CHECKED
85+
- Restrict deletions: CHECKED
3986

40-
* Restrict pushes that create matching branches: UNCHECKED
41-
42-
(So that opentelemetrybot can create release branches)
43-
44-
### `renovate/**/**`, and `opentelemetrybot/*`
45-
46-
* Require status checks to pass before merging: UNCHECKED
47-
48-
(So that renovate PRs can be rebased)
49-
50-
* Restrict who can push to matching branches: UNCHECKED
51-
52-
(So that bots can create PR branches in this repository)
53-
54-
* Allow force pushes > Everyone
55-
56-
(So that renovate PRs can be rebased)
57-
58-
* Allow deletions: CHECKED
87+
## Branch protections
5988

60-
(So that bot PR branches can be deleted)
89+
### `main`, `release/*`
6190

62-
### `benchmarks`
91+
- Restrict who can push to matching branches: CHECKED
6392

64-
- Everything UNCHECKED
93+
## Code security and analysis
6594

66-
(This branch is currently only used for directly pushing benchmarking results from the
67-
[overhead benchmark](https://github.com/open-telemetry/opentelemetry-java/actions/workflows/benchmark.yml)
68-
job)
95+
- Secret scanning: Enabled
6996

7097
## Secrets and variables > Actions
7198

72-
* `GPG_PASSWORD` - stored in OpenTelemetry-Java 1Password
73-
* `GPG_PRIVATE_KEY` - stored in OpenTelemetry-Java 1Password
74-
* `DEVELOCITY_ACCESS_KEY` - owned by [@jack-berg](https://github.com/jack-berg)
75-
* Generated at https://ge.opentelemetry.io > My settings > Access keys
76-
* format of env var is `ge.opentelemetry.io=<access key>`,
77-
see [docs](https://docs.gradle.com/enterprise/gradle-plugin/#via_environment_variable)
78-
* `SONATYPE_KEY` - owned by [@jack-berg](https://github.com/jack-berg)
79-
* `SONATYPE_USER` - owned by [@jack-berg](https://github.com/jack-berg)
99+
- `GPG_PASSWORD` - stored in OpenTelemetry-Java 1Password
100+
- `GPG_PRIVATE_KEY` - stored in OpenTelemetry-Java 1Password
101+
- `NVD_API_KEY` - stored in OpenTelemetry-Java 1Password
102+
- Generated at https://nvd.nist.gov/developers/request-an-api-key
103+
- Key is associated with [@trask](https://github.com/trask)'s gmail address
104+
- `SONATYPE_KEY` - owned by [@jack-berg](https://github.com/jack-berg)
105+
- `SONATYPE_USER` - owned by [@jack-berg](https://github.com/jack-berg)

.github/scripts/markdown-link-check-with-retry.sh

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

.github/workflows/backport.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,13 @@ on:
66
description: "The pull request # to backport"
77
required: true
88

9+
permissions:
10+
contents: read
11+
912
jobs:
1013
backport:
14+
permissions:
15+
contents: write # for git push to PR branch
1116
runs-on: ubuntu-latest
1217
steps:
1318
- run: |
@@ -16,7 +21,7 @@ jobs:
1621
exit 1
1722
fi
1823
19-
- uses: actions/checkout@v4
24+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2025
with:
2126
# history is needed to run git cherry-pick below
2227
fetch-depth: 0

.github/workflows/benchmark-tags.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,13 @@ name: Benchmark Tags
33
on:
44
workflow_dispatch:
55

6+
permissions:
7+
contents: read
8+
69
jobs:
710
sdk-benchmark:
11+
permissions:
12+
contents: write # for git push to benchmarks branch
813
name: Benchmark SDK
914
runs-on: self-hosted
1015
timeout-minutes: 10
@@ -39,31 +44,29 @@ jobs:
3944
- v1.30.0
4045
- v1.30.1
4146
steps:
42-
- uses: actions/checkout@v4
47+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
4348
with:
4449
ref: ${{ matrix.tag-version }}
4550

4651
- id: setup-java
4752
name: Set up Java for build
48-
uses: actions/setup-java@v4
53+
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0
4954
with:
5055
distribution: temurin
5156
java-version: 17
5257

5358
- name: Set up gradle
54-
uses: gradle/actions/setup-gradle@v4
59+
uses: gradle/actions/setup-gradle@94baf225fe0a508e581a564467443d0e2379123b # v4.3.0
5560
- name: Run jmh
5661
run: ./gradlew jmhJar
57-
env:
58-
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
5962

6063
- name: Run Benchmark
6164
run: |
6265
cd sdk/trace/build
6366
java -jar libs/opentelemetry-sdk-trace-*-jmh.jar -rf json SpanBenchmark SpanPipelineBenchmark ExporterBenchmark
6467
6568
- name: Store benchmark results
66-
uses: benchmark-action/github-action-benchmark@v1
69+
uses: benchmark-action/github-action-benchmark@d48d326b4ca9ba73ca0cd0d59f108f9e02a381c7 # v1.20.4
6770
with:
6871
tool: 'jmh'
6972
output-file-path: sdk/trace/build/jmh-result.json

.github/workflows/benchmark.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,35 +5,38 @@ on:
55
branches: [ main ]
66
workflow_dispatch:
77

8+
permissions:
9+
contents: read
10+
811
jobs:
912
sdk-benchmark:
13+
permissions:
14+
contents: write # for git push to benchmarks branch
1015
name: Benchmark SDK
1116
runs-on: self-hosted
1217
timeout-minutes: 10
1318
steps:
14-
- uses: actions/checkout@v4
19+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
1520

1621
- id: setup-java
1722
name: Set up Java for build
18-
uses: actions/setup-java@v4
23+
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0
1924
with:
2025
distribution: temurin
2126
java-version: 17
2227

2328
- name: Set up gradle
24-
uses: gradle/actions/setup-gradle@v4
29+
uses: gradle/actions/setup-gradle@94baf225fe0a508e581a564467443d0e2379123b # v4.3.0
2530
- name: Run jmh
2631
run: ./gradlew jmhJar
27-
env:
28-
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
2932

3033
- name: Run Benchmark
3134
run: |
3235
cd sdk/trace/build
3336
java -jar libs/opentelemetry-sdk-trace-*-jmh.jar -rf json SpanBenchmark SpanPipelineBenchmark ExporterBenchmark
3437
3538
- name: Store benchmark results
36-
uses: benchmark-action/github-action-benchmark@v1
39+
uses: benchmark-action/github-action-benchmark@d48d326b4ca9ba73ca0cd0d59f108f9e02a381c7 # v1.20.4
3740
with:
3841
tool: 'jmh'
3942
output-file-path: sdk/trace/build/jmh-result.json

0 commit comments

Comments
 (0)