Skip to content

Commit 603a8ab

Browse files
author
Fabian Morgan
committed
Merge remote-tracking branch 'upstream/master' into HDDS-13323-sts
Conflicts: hadoop-hdds/common/src/main/resources/ozone-default.xml hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/OMConfigKeys.java hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/exceptions/OMException.java hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmKeyArgs.java hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/security/acl/RequestContext.java hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/TestOzoneConfigurationFields.java hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/security/acl/TestRequestContext.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/BucketAclHandler.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/BucketCrudHandler.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/BucketEndpoint.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/EndpointBase.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/endpoint/ObjectEndpoint.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/exception/S3ErrorTable.java hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/signature/StringToSignProducer.java
2 parents 37a224b + 99328c2 commit 603a8ab

779 files changed

Lines changed: 47339 additions & 15736 deletions

File tree

Some content is hidden

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

.devcontainer/devcontainer.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"name": "Apache Ozone (Java 21)",
3+
"image": "mcr.microsoft.com/devcontainers/java:21-bookworm",
4+
"features": {
5+
"ghcr.io/devcontainers/features/java:1": {
6+
"version": "none",
7+
"installMaven": "true"
8+
},
9+
"ghcr.io/devcontainers/features/node:1": {
10+
"version": "20"
11+
},
12+
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
13+
"ghcr.io/devcontainers/features/github-cli:1": {},
14+
},
15+
"postCreateCommand": "hadoop-ozone/dev-support/checks/build.sh -Pdist -Psrc -Dmaven.javadoc.skip=true",
16+
"customizations": {
17+
"vscode": {
18+
"extensions": [
19+
"vscjava.vscode-java-pack",
20+
"vscjava.vscode-maven",
21+
"EditorConfig.EditorConfig"
22+
],
23+
"settings": {
24+
"java.configuration.updateBuildConfiguration": "automatic"
25+
}
26+
}
27+
},
28+
"remoteUser": "vscode"
29+
}

.github/dependabot.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,15 @@ updates:
2323
interval: "weekly"
2424
day: "saturday"
2525
time: "07:00" # UTC
26+
cooldown:
27+
default-days: 7
2628
pull-request-branch-name:
2729
separator: "-"
30+
- package-ecosystem: "github-actions"
31+
directory: "/"
32+
schedule:
33+
# 'daily' only runs on weekdays
34+
interval: "cron"
35+
cronjob: "15 6 * * *"
36+
cooldown:
37+
default-days: 7

.github/pull_request_template.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ Examples of well-written pull requests:
2222
Please create an issue in ASF JIRA before opening a pull request, and you need to set the title of the pull
2323
request which starts with the corresponding JIRA issue number. (e.g. HDDS-XXXX. Fix a typo in YYY.)
2424

25+
If you do not have an ASF Jira account yet, please follow the first-time contributor
26+
instructions in the [Jira guideline](../CONTRIBUTING.md#jira-guideline).
27+
2528
(Please replace this section with the link to the Apache JIRA)
2629

2730
## How was this patch tested?

.github/workflows/build-ratis.yml

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ on:
5656
value: ${{ jobs.ratis-thirdparty.outputs.protobuf-version }}
5757
env:
5858
MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
59+
permissions: { }
5960
jobs:
6061
ratis:
6162
runs-on: ubuntu-24.04
@@ -65,19 +66,20 @@ jobs:
6566
thirdparty-version: ${{ steps.versions.outputs.thirdparty }}
6667
steps:
6768
- name: Checkout project
68-
uses: actions/checkout@v4
69+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
6970
with:
71+
persist-credentials: false
7072
repository: ${{ inputs.repo }}
7173
ref: ${{ inputs.ref }}
7274
- name: Cache for maven dependencies
73-
uses: actions/cache@v4
75+
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
7476
with:
7577
path: |
7678
~/.m2/repository
7779
!~/.m2/repository/org/apache/ratis
7880
key: ratis-dependencies-${{ hashFiles('**/pom.xml') }}
7981
- name: Setup java
80-
uses: actions/setup-java@v4
82+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
8183
with:
8284
distribution: 'temurin'
8385
java-version: 8
@@ -90,12 +92,13 @@ jobs:
9092
ratis_sha=$(git rev-parse --short HEAD)
9193
ratis_version="$(mvn help:evaluate -N -q -DforceStdout -Dscan=false -Dexpression=project.version | sed -e "s/-SNAPSHOT/-${ratis_sha}-SNAPSHOT/")"
9294
echo "ratis=${ratis_version}" >> $GITHUB_OUTPUT
95+
echo "ratis_version=${ratis_version}" >> $GITHUB_ENV
9396
- name: Run a full build
9497
run: |
95-
mvn -B --no-transfer-progress -Dscan=false versions:set -DnewVersion=${{ steps.versions.outputs.ratis }}
98+
mvn -B --no-transfer-progress -Dscan=false versions:set -DnewVersion="$ratis_version"
9699
dev-support/checks/build.sh
97100
- name: Store Maven repo for tests
98-
uses: actions/upload-artifact@v4
101+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
99102
with:
100103
name: ratis-jars
101104
path: |
@@ -112,8 +115,9 @@ jobs:
112115
protobuf-version: ${{ steps.versions.outputs.protobuf }}
113116
steps:
114117
- name: Checkout project
115-
uses: actions/checkout@v4
118+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
116119
with:
120+
persist-credentials: false
117121
repository: apache/ratis-thirdparty
118122
ref: ${{ needs.ratis.outputs.thirdparty-version }}
119123
- name: Get component versions
@@ -130,8 +134,14 @@ jobs:
130134
steps:
131135
- name: Print versions
132136
run: |
133-
echo ${{ needs.ratis.outputs.ratis-version }}
134-
echo ${{ needs.ratis.outputs.thirdparty-version }}
135-
echo ${{ needs.ratis-thirdparty.outputs.grpc-version }}
136-
echo ${{ needs.ratis-thirdparty.outputs.netty-version }}
137-
echo ${{ needs.ratis-thirdparty.outputs.protobuf-version }}
137+
echo "Ratis: $ratis_version"
138+
echo "Thirdparty: $ratis_thirdparty_version"
139+
echo "Grpc: $grpc_version"
140+
echo "Netty: $netty_version"
141+
echo "Protobuf: $protobuf_version"
142+
env:
143+
ratis_version: ${{ needs.ratis.outputs.ratis-version }}
144+
ratis_thirdparty_version: ${{ needs.ratis.outputs.thirdparty-version }}
145+
grpc_version: ${{ needs.ratis-thirdparty.outputs.grpc-version }}
146+
netty_version: ${{ needs.ratis-thirdparty.outputs.netty-version }}
147+
protobuf_version: ${{ needs.ratis-thirdparty.outputs.protobuf-version }}

.github/workflows/check.yml

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,11 @@ on:
129129
default: true
130130
required: false
131131

132+
secrets:
133+
DEVELOCITY_ACCESS_KEY:
134+
description: 'Token for submitting build scan to Develocity'
135+
required: false
136+
132137
env:
133138
HADOOP_IMAGE: ghcr.io/apache/hadoop
134139
MAVEN_ARGS: --batch-mode --settings ${{ github.workspace }}/dev-support/ci/maven-settings.xml
@@ -138,6 +143,8 @@ env:
138143
OZONE_VOLUME_OWNER: 1000
139144
SCRIPT: ${{ inputs.script }}
140145

146+
permissions: { }
147+
141148
jobs:
142149
check:
143150
name: ${{ (inputs.split && format('{0} ({1})', inputs.script, inputs.split)) || inputs.script }}
@@ -146,14 +153,15 @@ jobs:
146153
steps:
147154
- name: Checkout project
148155
if: ${{ !inputs.needs-ozone-source-tarball }}
149-
uses: actions/checkout@v4
156+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
150157
with:
158+
persist-credentials: false
151159
ref: ${{ inputs.sha }}
152160
fetch-depth: ${{ inputs.checkout-fetch-depth }}
153161

154162
- name: Download Ozone source tarball
155163
if: ${{ inputs.needs-ozone-source-tarball }}
156-
uses: actions/download-artifact@v4
164+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
157165
with:
158166
name: ozone-src
159167

@@ -164,7 +172,7 @@ jobs:
164172
165173
- name: Cache for NPM dependencies
166174
if: ${{ inputs.needs-npm-cache }}
167-
uses: actions/cache@v4
175+
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
168176
with:
169177
path: |
170178
~/.pnpm-store
@@ -174,7 +182,7 @@ jobs:
174182
175183
- name: Cache for Maven dependencies
176184
if: ${{ inputs.needs-maven-cache }}
177-
uses: actions/cache/restore@v4
185+
uses: actions/cache/restore@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
178186
with:
179187
path: |
180188
~/.m2/repository/*/*/*
@@ -186,23 +194,23 @@ jobs:
186194
- name: Download Ozone repo
187195
id: download-ozone-repo
188196
if: ${{ inputs.needs-ozone-repo }}
189-
uses: actions/download-artifact@v4
197+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
190198
with:
191199
name: ozone-repo
192200
path: |
193201
~/.m2/repository/org/apache/ozone
194202
195203
- name: Download Ratis repo
196204
if: ${{ inputs.ratis-args != '' }}
197-
uses: actions/download-artifact@v4
205+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
198206
with:
199207
name: ratis-jars
200208
path: |
201209
~/.m2/repository/org/apache/ratis
202210
203211
- name: Download Ozone binary tarball
204212
if: ${{ inputs.needs-ozone-binary-tarball }}
205-
uses: actions/download-artifact@v4
213+
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
206214
with:
207215
name: ozone-bin
208216

@@ -215,7 +223,7 @@ jobs:
215223
216224
- name: Setup java ${{ inputs.java-version }}
217225
if: ${{ inputs.java-version }}
218-
uses: actions/setup-java@v4
226+
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
219227
with:
220228
distribution: 'temurin'
221229
java-version: ${{ inputs.java-version }}
@@ -259,7 +267,7 @@ jobs:
259267
260268
- name: Archive build results
261269
if: ${{ !cancelled() }}
262-
uses: actions/upload-artifact@v4
270+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
263271
with:
264272
name: ${{ (inputs.split && format('{0}-{1}', inputs.script, inputs.split)) || inputs.script }}
265273
# please keep path as a single item; move to that directory all files needed in the artifact
@@ -270,7 +278,7 @@ jobs:
270278
# to avoid the need for 3 more inputs.
271279
- name: Store binaries for tests
272280
if: ${{ inputs.script == 'build' && !cancelled() }}
273-
uses: actions/upload-artifact@v4
281+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
274282
with:
275283
name: ozone-bin
276284
path: |
@@ -280,7 +288,7 @@ jobs:
280288

281289
- name: Store source tarball for compilation
282290
if: ${{ inputs.script == 'build' && !cancelled() }}
283-
uses: actions/upload-artifact@v4
291+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
284292
with:
285293
name: ozone-src
286294
path: |
@@ -289,7 +297,7 @@ jobs:
289297

290298
- name: Store Maven repo for tests
291299
if: ${{ inputs.script == 'build' && !cancelled() }}
292-
uses: actions/upload-artifact@v4
300+
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
293301
with:
294302
name: ozone-repo
295303
path: |

.github/workflows/ci-with-ratis.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ on:
3737
default: 'master'
3838
required: true
3939
run-name: Test Ozone ${{ inputs.ref }} with Ratis ${{ inputs.ratis-repo }} @ ${{ inputs.ratis-ref }}
40+
permissions: { }
4041
jobs:
4142
ratis:
4243
uses: ./.github/workflows/build-ratis.yml
@@ -47,7 +48,11 @@ jobs:
4748
needs:
4849
- ratis
4950
uses: ./.github/workflows/ci.yml
50-
secrets: inherit
51+
permissions:
52+
contents: read
53+
secrets:
54+
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
55+
SONARCLOUD_TOKEN: ${{ secrets.SONARCLOUD_TOKEN }}
5156
with:
52-
ratis_args: "-Dratis.version=${{ needs.ratis.outputs.ratis-version }} -Dratis.thirdparty.version=${{ needs.ratis.outputs.thirdparty-version }} -Dio.grpc.version=${{ needs.ratis.outputs.grpc-version }} -Dnetty.version=${{ needs.ratis.outputs.netty-version }} -Dgrpc.protobuf-compile.version=${{ needs.ratis.outputs.protobuf-version }}"
57+
ratis_args: "-Dratis.version=${{ needs.ratis.outputs.ratis-version }} -Dratis.thirdparty.version=${{ needs.ratis.outputs.thirdparty-version }} -Dratis-thirdparty.grpc.version=${{ needs.ratis.outputs.grpc-version }} -Dratis-thirdparty.netty.version=${{ needs.ratis.outputs.netty-version }} -Dratis-thirdparty.protobuf.version=${{ needs.ratis.outputs.protobuf-version }}"
5358
ref: ${{ github.event.inputs.ref }}

0 commit comments

Comments
 (0)