Skip to content

Commit bb26fc5

Browse files
committed
Merge branch 'main' into task/main-cris/DSC-2688
2 parents e69bf48 + a789f92 commit bb26fc5

638 files changed

Lines changed: 26042 additions & 7723 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.

.github/dependabot.yml

Lines changed: 75 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -135,19 +135,33 @@ updates:
135135
# Don't try to auto-update any DSpace dependencies
136136
- dependency-name: "org.dspace:*"
137137
- dependency-name: "org.dspace.*:*"
138-
# Last version of errorprone to support JDK 17 is 2.42.0
139-
# TODO: Remove this after this ticket is resolved https://github.com/DSpace/DSpace/issues/11621
140-
- dependency-name: "com.google.errorprone:*"
141-
versions: [ ">=2.43.0" ]
142138
# Don't automatically update BouncyCastle because maven-gpg-plugin REQUIRES a very specific version or release
143139
# errors will occur. See https://github.com/DSpace/DSpace/pull/11696
144140
- dependency-name: "org.bouncycastle:*"
145141
# Ignore major/minor updates for Hibernate. Only patch updates can be automated.
146142
- dependency-name: "org.hibernate.*:*"
147143
update-types: ["version-update:semver-major", "version-update:semver-minor"]
144+
# Ignore updates for jboss-logging because it is a "convergence only" dependency
145+
# that we do not use directly (see comments in pom.xml).
146+
- dependency-name: "org.jboss.logging:*"
147+
# Don't try to update antlr4-runtime because it is a transitive dependency
148+
# used by Hibernate and Solr. The version is pinned in pom.xml and should
149+
# only be updated when required. See: https://github.com/DSpace/DSpace/pull/11989
150+
- dependency-name: "org.antlr:antlr4-runtime"
148151
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
149152
- dependency-name: "*"
150153
update-types: ["version-update:semver-major"]
154+
# Also automatically update all our GitHub actions on the main branch
155+
- package-ecosystem: "github-actions"
156+
directory: "/"
157+
# Monthly dependency updates
158+
schedule:
159+
interval: "monthly"
160+
time: "02:00"
161+
# Allow updates to be delayed for a configurable number of days to mitigate
162+
# some classes of supply chain attacks
163+
cooldown:
164+
default-days: 7
151165
######################
152166
## dspace-9_x branch
153167
######################
@@ -277,18 +291,37 @@ updates:
277291
# Don't try to auto-update any DSpace dependencies
278292
- dependency-name: "org.dspace:*"
279293
- dependency-name: "org.dspace.*:*"
280-
# Last version of errorprone to support JDK 17 is 2.42.0
294+
# Last version of errorprone to support JDK 17 is 2.42.x
281295
- dependency-name: "com.google.errorprone:*"
282-
versions: [ ">=2.43.0" ]
296+
versions: [">=2.43.0"]
283297
# Don't automatically update BouncyCastle because maven-gpg-plugin REQUIRES a very specific version or release
284298
# errors will occur. See https://github.com/DSpace/DSpace/pull/11696
285299
- dependency-name: "org.bouncycastle:*"
286300
# Ignore major/minor updates for Hibernate. Only patch updates can be automated.
287301
- dependency-name: "org.hibernate.*:*"
288302
update-types: ["version-update:semver-major", "version-update:semver-minor"]
303+
# Ignore updates for jboss-logging because it is a "convergence only" dependency
304+
# that we do not use directly (see comments in pom.xml).
305+
- dependency-name: "org.jboss.logging:*"
306+
# Don't try to update antlr4-runtime because it is a transitive dependency
307+
# used by Hibernate and Solr. The version is pinned in pom.xml and should
308+
# only be updated when required. See: https://github.com/DSpace/DSpace/pull/11989
309+
- dependency-name: "org.antlr:antlr4-runtime"
289310
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
290311
- dependency-name: "*"
291312
update-types: [ "version-update:semver-major" ]
313+
# Also automatically update all our GitHub actions on the dspace-9_x branch
314+
- package-ecosystem: "github-actions"
315+
directory: "/"
316+
target-branch: dspace-9_x
317+
# Monthly dependency updates
318+
schedule:
319+
interval: "monthly"
320+
time: "02:00"
321+
# Allow updates to be delayed for a configurable number of days to mitigate
322+
# some classes of supply chain attacks
323+
cooldown:
324+
default-days: 7
292325
######################
293326
## dspace-8_x branch
294327
######################
@@ -418,18 +451,37 @@ updates:
418451
# Don't try to auto-update any DSpace dependencies
419452
- dependency-name: "org.dspace:*"
420453
- dependency-name: "org.dspace.*:*"
421-
# Last version of errorprone to support JDK 17 is 2.42.0
454+
# Last version of errorprone to support JDK 17 is 2.42.x
422455
- dependency-name: "com.google.errorprone:*"
423-
versions: [ ">=2.43.0" ]
456+
versions: [">=2.43.0"]
424457
# Don't automatically update BouncyCastle because maven-gpg-plugin REQUIRES a very specific version or release
425458
# errors will occur. See https://github.com/DSpace/DSpace/pull/11696
426459
- dependency-name: "org.bouncycastle:*"
427460
# Ignore major/minor updates for Hibernate. Only patch updates can be automated.
428461
- dependency-name: "org.hibernate.*:*"
429462
update-types: ["version-update:semver-major", "version-update:semver-minor"]
463+
# Ignore updates for jboss-logging because it is a "convergence only" dependency
464+
# that we do not use directly (see comments in pom.xml).
465+
- dependency-name: "org.jboss.logging:*"
466+
# Don't try to update antlr4-runtime because it is a transitive dependency
467+
# used by Hibernate and Solr. The version is pinned in pom.xml and should
468+
# only be updated when required. See: https://github.com/DSpace/DSpace/pull/11989
469+
- dependency-name: "org.antlr:antlr4-runtime"
430470
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
431471
- dependency-name: "*"
432472
update-types: [ "version-update:semver-major" ]
473+
# Also automatically update all our GitHub actions on the dspace-8_x branch
474+
- package-ecosystem: "github-actions"
475+
directory: "/"
476+
target-branch: dspace-8_x
477+
# Monthly dependency updates
478+
schedule:
479+
interval: "monthly"
480+
time: "02:00"
481+
# Allow updates to be delayed for a configurable number of days to mitigate
482+
# some classes of supply chain attacks
483+
cooldown:
484+
default-days: 7
433485
######################
434486
## dspace-7_x branch
435487
######################
@@ -584,6 +636,21 @@ updates:
584636
# Ignore major/minor updates for Hibernate. Only patch updates can be automated.
585637
- dependency-name: "org.hibernate.*:*"
586638
update-types: ["version-update:semver-major", "version-update:semver-minor"]
639+
# Ignore updates for jboss-logging because it is a "convergence only" dependency
640+
# that we do not use directly (see comments in pom.xml).
641+
- dependency-name: "org.jboss.logging:*"
587642
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
588643
- dependency-name: "*"
589644
update-types: [ "version-update:semver-major" ]
645+
# Also automatically update all our GitHub actions on the dspace-7_x branch
646+
- package-ecosystem: "github-actions"
647+
directory: "/"
648+
target-branch: dspace-7_x
649+
# Monthly dependency updates
650+
schedule:
651+
interval: "monthly"
652+
time: "02:00"
653+
# Allow updates to be delayed for a configurable number of days to mitigate
654+
# some classes of supply chain attacks
655+
cooldown:
656+
default-days: 7

.github/workflows/build.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,11 @@ jobs:
4545
steps:
4646
# https://github.com/actions/checkout
4747
- name: Checkout codebase
48-
uses: actions/checkout@v4
48+
uses: actions/checkout@v6
4949

5050
# https://github.com/actions/setup-java
5151
- name: Install JDK ${{ matrix.java }}
52-
uses: actions/setup-java@v4
52+
uses: actions/setup-java@v5
5353
with:
5454
java-version: ${{ matrix.java }}
5555
distribution: 'temurin'
@@ -74,14 +74,14 @@ jobs:
7474
# (This artifact is downloadable at the bottom of any job's summary page)
7575
- name: Upload Results of ${{ matrix.type }} to Artifact
7676
if: ${{ failure() }}
77-
uses: actions/upload-artifact@v4
77+
uses: actions/upload-artifact@v7
7878
with:
7979
name: ${{ matrix.type }} results
8080
path: ${{ matrix.resultsdir }}
8181

8282
# Upload code coverage report to artifact, so that it can be shared with the 'codecov' job (see below)
8383
- name: Upload code coverage report to Artifact
84-
uses: actions/upload-artifact@v4
84+
uses: actions/upload-artifact@v7
8585
with:
8686
name: ${{ matrix.type }} coverage report
8787
path: 'dspace/target/site/jacoco-aggregate/jacoco.xml'
@@ -96,19 +96,19 @@ jobs:
9696
runs-on: ubuntu-latest
9797
steps:
9898
- name: Checkout
99-
uses: actions/checkout@v4
99+
uses: actions/checkout@v6
100100

101101
# Download artifacts from previous 'tests' job
102102
- name: Download coverage artifacts
103-
uses: actions/download-artifact@v4
103+
uses: actions/download-artifact@v8
104104

105105
# Now attempt upload to Codecov using its action.
106106
# NOTE: We use a retry action to retry the Codecov upload if it fails the first time.
107107
#
108108
# Retry action: https://github.com/marketplace/actions/retry-action
109109
# Codecov action: https://github.com/codecov/codecov-action
110110
- name: Upload coverage to Codecov.io
111-
uses: Wandalen/wretry.action@v1.3.0
111+
uses: Wandalen/wretry.action@v3.8.0
112112
with:
113113
action: codecov/codecov-action@v4
114114
# Ensure codecov-action throws an error when it fails to upload

.github/workflows/codescan.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,19 +35,19 @@ jobs:
3535
steps:
3636
# https://github.com/actions/checkout
3737
- name: Checkout repository
38-
uses: actions/checkout@v4
38+
uses: actions/checkout@v6
3939

4040
# https://github.com/actions/setup-java
4141
- name: Install JDK
42-
uses: actions/setup-java@v4
42+
uses: actions/setup-java@v5
4343
with:
4444
java-version: 21
4545
distribution: 'temurin'
4646

4747
# Initializes the CodeQL tools for scanning.
4848
# https://github.com/github/codeql-action
4949
- name: Initialize CodeQL
50-
uses: github/codeql-action/init@v3
50+
uses: github/codeql-action/init@v4
5151
with:
5252
# Codescan Javascript as well since a few JS files exist in REST API's interface
5353
languages: java, javascript
@@ -56,8 +56,8 @@ jobs:
5656
# NOTE: Based on testing, this autobuild process works well for DSpace. A custom
5757
# DSpace build w/caching (like in build.yml) was about the same speed as autobuild.
5858
- name: Autobuild
59-
uses: github/codeql-action/autobuild@v3
59+
uses: github/codeql-action/autobuild@v4
6060

6161
# Perform GitHub Code Scanning.
6262
- name: Perform CodeQL Analysis
63-
uses: github/codeql-action/analyze@v3
63+
uses: github/codeql-action/analyze@v4

.github/workflows/docker.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,10 +163,10 @@ jobs:
163163
steps:
164164
# Checkout our codebase (to get access to Docker Compose scripts)
165165
- name: Checkout codebase
166-
uses: actions/checkout@v4
166+
uses: actions/checkout@v6
167167
# Download Docker image artifacts (which were just built by reusable-docker-build.yml)
168168
- name: Download Docker image artifacts
169-
uses: actions/download-artifact@v4
169+
uses: actions/download-artifact@v8
170170
with:
171171
# Download all amd64 Docker images (TAR files) into the /tmp/docker directory
172172
pattern: docker-image-*-linux-amd64
@@ -185,8 +185,11 @@ jobs:
185185
sleep 10
186186
docker container ls
187187
# Create a test admin account. Load test data from a simple set of AIPs as defined in cli.ingest.yml
188+
# NOTE: Before creating test data, we wait for the backend to become responsive by requesting it every 10 sec.
189+
# Timeout after 5 minutes. This is done to ensure the backend is fully initialized before we create test data.
188190
- name: Load test data into Backend
189191
run: |
192+
timeout 5m wget --retry-connrefused -t 0 --waitretry=10 http://127.0.0.1:8080/server/api
190193
docker compose -f docker-compose-cli.yml run --rm dspace-cli create-administrator -e test@test.edu -f admin -l user -p admin -c en
191194
docker compose -f docker-compose-cli.yml -f dspace/src/main/docker-compose/cli.ingest.yml run --rm dspace-cli
192195
# Verify backend started successfully.

.github/workflows/issue_opened.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
# Only add to project board if issue is flagged as "needs triage" or has no labels
1717
# NOTE: By default we flag new issues as "needs triage" in our issue template
1818
if: (contains(github.event.issue.labels.*.name, 'needs triage') || join(github.event.issue.labels.*.name) == '')
19-
uses: actions/add-to-project@v1.0.0
19+
uses: actions/add-to-project@v1.0.2
2020
# Note, the authentication token below is an ORG level Secret.
2121
# It must be created/recreated manually via a personal access token with admin:org, project, public_repo permissions
2222
# See: https://docs.github.com/en/actions/configuring-and-managing-workflows/authenticating-with-the-github_token#permissions-for-the-github_token

.github/workflows/pull_request_opened.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,4 @@ jobs:
2121
# Assign the PR to whomever created it. This is useful for visualizing assignments on project boards
2222
# See https://github.com/toshimaru/auto-author-assign
2323
- name: Assign PR to creator
24-
uses: toshimaru/auto-author-assign@v2.1.0
24+
uses: toshimaru/auto-author-assign@v3.0.1

0 commit comments

Comments
 (0)