Skip to content

Commit 55ec209

Browse files
committed
Merge remote-tracking branch 'IQSS/develop' into DANS-external_exporters
2 parents fc710e2 + 6053fa3 commit 55ec209

140 files changed

Lines changed: 5312 additions & 1914 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/workflows/container_app_pr.yml

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -58,36 +58,39 @@ jobs:
5858
echo "IMAGE_TAG=$(echo "${{ github.event.client_payload.pull_request.head.ref }}" | tr '\\/_:&+,;#*' '-')" >> $GITHUB_ENV
5959
6060
# Necessary to split as otherwise the submodules are not available (deploy skips install)
61-
- name: Build app container image with local architecture and submodules (profile will skip tests)
61+
- name: Build app and configbaker container image with local architecture and submodules (profile will skip tests)
6262
run: >
6363
mvn -B -f modules/dataverse-parent
6464
-P ct -pl edu.harvard.iq:dataverse -am
6565
install
66-
- name: Deploy multi-arch application container image
66+
- name: Deploy multi-arch application and configbaker container image
6767
run: >
6868
mvn
6969
-Dapp.image.tag=${{ env.IMAGE_TAG }} -Dbase.image.tag=${{ env.BASE_IMAGE_TAG }}
70-
${{ env.REGISTRY }} -Ddocker.platforms=${{ env.PLATFORMS }}
71-
-P ct deploy
70+
-Ddocker.registry=ghcr.io -Ddocker.platforms=${{ env.PLATFORMS }}
71+
-Pct deploy
7272
7373
- uses: marocchino/sticky-pull-request-comment@v2
7474
with:
75-
header: app-registry-push
75+
header: registry-push
7676
hide_and_recreate: true
7777
hide_classify: "OUTDATED"
7878
number: ${{ github.event.client_payload.pull_request.number }}
7979
message: |
80-
:package: Pushed preview application image as
80+
:package: Pushed preview images as
8181
```
8282
ghcr.io/gdcc/dataverse:${{ env.IMAGE_TAG }}
8383
```
84-
:ship: [See on GHCR](https://github.com/orgs/gdcc/packages/container/package/dataverse). Use by referencing with full name as printed above, mind the registry name.
84+
```
85+
ghcr.io/gdcc/configbaker:${{ env.IMAGE_TAG }}
86+
```
87+
:ship: [See on GHCR](https://github.com/orgs/gdcc/packages/container). Use by referencing with full name as printed above, mind the registry name.
8588
8689
# Leave a note when things have gone sideways
8790
- uses: peter-evans/create-or-update-comment@v3
8891
if: ${{ failure() }}
8992
with:
9093
issue-number: ${{ github.event.client_payload.pull_request.number }}
9194
body: >
92-
:package: Could not push preview image :disappointed:.
93-
See [log](https://github.com/IQSS/dataverse/actions/runs/${{ github.run_id }}) for details.
95+
:package: Could not push preview images :disappointed:.
96+
See [log](https://github.com/IQSS/dataverse/actions/runs/${{ github.run_id }}) for details.

.github/workflows/container_app_push.yml

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ on:
1111
- master
1212
paths:
1313
- 'src/main/docker/**'
14+
- 'modules/container-configbaker/**'
1415
- '.github/workflows/container_app_push.yml'
1516

1617
env:
@@ -42,7 +43,7 @@ jobs:
4243
distribution: temurin
4344
cache: maven
4445

45-
- name: Build app container image with local architecture and submodules (profile will skip tests)
46+
- name: Build app and configbaker container image with local architecture and submodules (profile will skip tests)
4647
run: >
4748
mvn -B -f modules/dataverse-parent
4849
-P ct -pl edu.harvard.iq:dataverse -am
@@ -52,7 +53,7 @@ jobs:
5253

5354
hub-description:
5455
needs: build
55-
name: Push image description to Docker Hub
56+
name: Push image descriptions to Docker Hub
5657
# Run this when triggered via push or schedule as reused workflow from base / maven unit tests.
5758
# Excluding PRs here means we will have no trouble with secrets access. Also avoid runs in forks.
5859
if: ${{ github.event_name != 'pull_request' && github.ref_name == 'develop' && github.repository_owner == 'IQSS' }}
@@ -66,6 +67,13 @@ jobs:
6667
repository: gdcc/dataverse
6768
short-description: "Dataverse Application Container Image providing the executable"
6869
readme-filepath: ./src/main/docker/README.md
70+
- uses: peter-evans/dockerhub-description@v3
71+
with:
72+
username: ${{ secrets.DOCKERHUB_USERNAME }}
73+
password: ${{ secrets.DOCKERHUB_TOKEN }}
74+
repository: gdcc/configbaker
75+
short-description: "Dataverse Config Baker Container Image providing setup tooling and more"
76+
readme-filepath: ./modules/container-configbaker/README.md
6977

7078
# Note: Accessing, pushing tags etc. to DockerHub or GHCR will only succeed in upstream because secrets.
7179
# We check for them here and subsequent jobs can rely on this to decide if they shall run.
@@ -130,12 +138,12 @@ jobs:
130138
echo "REGISTRY='-Ddocker.registry=ghcr.io'" >> $GITHUB_ENV
131139
132140
# Necessary to split as otherwise the submodules are not available (deploy skips install)
133-
- name: Build app container image with local architecture and submodules (profile will skip tests)
141+
- name: Build app and configbaker container image with local architecture and submodules (profile will skip tests)
134142
run: >
135143
mvn -B -f modules/dataverse-parent
136144
-P ct -pl edu.harvard.iq:dataverse -am
137145
install
138-
- name: Deploy multi-arch application container image
146+
- name: Deploy multi-arch application and configbaker container image
139147
run: >
140148
mvn
141149
-Dapp.image.tag=${{ env.IMAGE_TAG }} -Dbase.image.tag=${{ env.BASE_IMAGE_TAG }}
@@ -145,12 +153,15 @@ jobs:
145153
- uses: marocchino/sticky-pull-request-comment@v2
146154
if: ${{ github.event_name == 'pull_request' }}
147155
with:
148-
header: app-registry-push
156+
header: registry-push
149157
hide_and_recreate: true
150158
hide_classify: "OUTDATED"
151159
message: |
152-
:package: Pushed preview application image as
160+
:package: Pushed preview images as
153161
```
154162
ghcr.io/gdcc/dataverse:${{ env.IMAGE_TAG }}
155163
```
156-
:ship: [See on GHCR](https://github.com/orgs/gdcc/packages/container/package/dataverse). Use by referencing with full name as printed above, mind the registry name.
164+
```
165+
ghcr.io/gdcc/configbaker:${{ env.IMAGE_TAG }}
166+
```
167+
:ship: [See on GHCR](https://github.com/orgs/gdcc/packages/container). Use by referencing with full name as printed above, mind the registry name.

.github/workflows/shellcheck.yml

Lines changed: 29 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,47 @@
11
name: "Shellcheck"
22
on:
33
push:
4+
branches:
5+
- develop
46
paths:
5-
- conf/solr/**
6-
- modules/container-base/**
7+
- conf/solr/**/.sh
8+
- modules/container-base/**/*.sh
9+
- modules/container-configbaker/**/*.sh
710
pull_request:
11+
branches:
12+
- develop
813
paths:
9-
- conf/solr/**
10-
- modules/container-base/**
14+
- conf/solr/**/*.sh
15+
- modules/container-base/**/*.sh
16+
- modules/container-configbaker/**/*.sh
1117
jobs:
1218
shellcheck:
1319
name: Shellcheck
1420
runs-on: ubuntu-latest
21+
permissions:
22+
pull-requests: write
1523
steps:
16-
- uses: actions/checkout@v2
24+
- uses: actions/checkout@v3
1725
- name: shellcheck
1826
uses: reviewdog/action-shellcheck@v1
1927
with:
2028
github_token: ${{ secrets.github_token }}
2129
reporter: github-pr-review # Change reporter.
2230
fail_on_error: true
2331
# Container base image uses dumb-init shebang, so nail to using bash
24-
shellcheck_flags: "--shell=bash --external-sources"
32+
shellcheck_flags: "--shell=bash --external-sources"
33+
# Exclude old scripts
34+
exclude: |
35+
*/.git/*
36+
conf/docker-aio/*
37+
doc/*
38+
downloads/*
39+
scripts/database/*
40+
scripts/globalid/*
41+
scripts/icons/*
42+
scripts/installer/*
43+
scripts/issues/*
44+
scripts/r/*
45+
scripts/tests/*
46+
scripts/vagrant/*
47+
tests/*

conf/solr/8.11.1/update-fields.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
set -euo pipefail
44

5+
# [INFO]: Update a prepared Solr schema.xml for Dataverse with a given list of metadata fields
6+
57
#### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### ####
68
# This script will
79
# 1. take a file (or read it from STDIN) with all <field> and <copyField> definitions
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
###For installations using MDC (Make Data Count), it is now possible to display both the MDC metrics and the legacy access counts, generated before MDC was enabled.
2+
3+
This is enabled via the new setting `:MDCStartDate` that specifies the cutoff date. If a dataset has any legacy access counts collected prior to that date, those numbers will be displayed in addition to the any MDC numbers recorded since then.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
It is now possible to configure registering PIDs for files in individual collections.
2+
3+
For example, registration of PIDs for files can be enabled in a specific collection when it is disabled instance-wide. Or it can be disabled in specific collections where it is enabled by default. See the [:FilePIDsEnabled](https://guides.dataverse.org/en/latest/installation/config.html#filepidsenabled) section of the Configuration guide for details.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Direct upload via the Dataverse UI will now support any algorithm configured via the :FileFixityChecksumAlgorithm setting.
2+
External apps using the direct upload API can now query Dataverse to discover which algorithm should be used.
3+
4+
Sites that have been using an algorithm other than MD5 and direct upload and/or dvwebloader may want to use the /api/admin/updateHashValues call (see https://guides.dataverse.org/en/latest/installation/config.html?highlight=updatehashvalues#filefixitychecksumalgorithm) to replace any MD5 hashes on existing files.

doc/release-notes/9480-h5web.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
A file previewer called H5Web is now available for exploring and visualizing NetCDF and HDF5 files.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Performance improvements, especially for large datasets containing thousands of files.
2+
Uploading files one by one to the dataset is much faster now, allowing uploading thousands of files in an acceptable timeframe. Not only uploading a file, but all edit operations on datasets containing many files, got faster.
3+
Performance tweaks include indexing of the datasets in the background and optimizations in the amount of the indexing operations needed. Furthermore, updates to the dateset no longer wait for ingesting to finish. Ingesting was already running in the background, but it took a lock, preventing updating the dataset and degrading performance for datasets containing many files.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
A container has been added called "configbaker" that configures Dataverse while running in containers. This allows developers to spin up Dataverse with a single command.

0 commit comments

Comments
 (0)