Skip to content

Commit a55a429

Browse files
committed
Merge branch 'trunk' into KIP-1052-PR
2 parents b127087 + 818d1c6 commit a55a429

File tree

2,368 files changed

+91090
-61281
lines changed

Some content is hidden

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

2,368 files changed

+91090
-61281
lines changed

.asf.yaml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@ notifications:
2525
# Read more here: https://github.com/apache/infrastructure-asfyaml
2626
github:
2727
collaborators:
28-
- AndrewJSchofield
29-
- apoorvmittal10
30-
- brandboat
31-
- dongnuo123
32-
- frankvicky
3328
- FrankYang0529
3429
- kirktrue
35-
- m1a2st
36-
- nizhikov
30+
- brandboat
31+
- AndrewJSchofield
3732
- OmniaGM
33+
- nizhikov
34+
- dongnuo123
35+
- gaurav-narula
36+
- apourchet
37+
- apoorvmittal10

.github/actions/run-gradle/action.yml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
#
18+
---
19+
name: "Run Tests with Gradle"
20+
description: "Run specified Gradle test tasks with configuration for timeout and test catalog."
21+
inputs:
22+
# Composite actions do not support typed parameters. Everything is treated as a string
23+
# See: https://github.com/actions/runner/issues/2238
24+
test-task:
25+
description: "The test suite to run. Either 'test' or 'quarantinedTest'."
26+
required: true
27+
timeout-minutes:
28+
description: "The timeout for the tests, in minutes."
29+
required: true
30+
test-catalog-path:
31+
description: "The file path of the test catalog file."
32+
required: true
33+
build-scan-artifact-name:
34+
description: "The name to use for archiving the build scan."
35+
required: true
36+
outputs:
37+
gradle-exitcode:
38+
description: "The result of the Gradle test task."
39+
value: ${{ steps.run-tests.outputs.exitcode }}
40+
runs:
41+
using: "composite"
42+
steps:
43+
- name: Run JUnit Tests (${{ inputs.test-task }})
44+
# Gradle flags
45+
# --build-cache: Let Gradle restore the build cache
46+
# --no-scan: Don't attempt to publish the scan yet. We want to archive it first.
47+
# --continue: Keep running even if a test fails
48+
# -PcommitId Prevent the Git SHA being written into the jar files (which breaks caching)
49+
shell: bash
50+
id: run-tests
51+
env:
52+
TIMEOUT_MINUTES: ${{ inputs.timeout-minutes}}
53+
TEST_CATALOG: ${{ inputs.test-catalog-path }}
54+
TEST_TASK: ${{ inputs.test-task }}
55+
run: |
56+
set +e
57+
./.github/scripts/thread-dump.sh &
58+
timeout ${TIMEOUT_MINUTES}m ./gradlew --build-cache --continue --no-scan \
59+
-PtestLoggingEvents=started,passed,skipped,failed \
60+
-PmaxParallelForks=2 \
61+
-PmaxTestRetries=1 -PmaxTestRetryFailures=3 \
62+
-PmaxQuarantineTestRetries=3 -PmaxQuarantineTestRetryFailures=0 \
63+
-Pkafka.test.catalog.file=$TEST_CATALOG \
64+
-PcommitId=xxxxxxxxxxxxxxxx \
65+
$TEST_TASK
66+
exitcode="$?"
67+
echo "exitcode=$exitcode" >> $GITHUB_OUTPUT
68+
- name: Archive build scan (${{ inputs.test-task }})
69+
if: always()
70+
uses: actions/upload-artifact@v4
71+
with:
72+
name: ${{ inputs.build-scan-artifact-name }}
73+
path: ~/.gradle/build-scan-data
74+
compression-level: 9
75+
if-no-files-found: ignore
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
#
18+
---
19+
name: "Python Setup"
20+
description: "Setup Python and install dependencies"
21+
runs:
22+
using: "composite"
23+
steps:
24+
- name: Setup Python
25+
uses: actions/setup-python@v5
26+
with:
27+
python-version: 3.12
28+
- name: Pip install
29+
shell: bash
30+
run: pip install -r .github/scripts/requirements.txt

.github/configs/labeler.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,6 @@ tools:
7373
- 'trogdor/**'
7474
- 'vagrant/**'
7575
- 'committer-tools/**'
76-
- 'log4j-appender/**'
7776
- 'shell/**'
7877

7978
docs:
@@ -125,3 +124,15 @@ kraft:
125124
- any-glob-to-any-file:
126125
- 'metadata/**'
127126
- 'raft/**'
127+
128+
dependencies:
129+
- changed-files:
130+
- any-glob-to-any-file:
131+
- "grade/dependencies.gradle"
132+
- "LICENSE-binary"
133+
134+
tiered-storage:
135+
- changed-files:
136+
- any-glob-to-any-file:
137+
- '*/src/*/java/org/apache/kafka/server/log/remote/**'
138+
- '*/src/*/java/kafka/log/remote/**'

0 commit comments

Comments
 (0)