Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
775 commits
Select commit Hold shift + click to select a range
5d3b143
Merge pull request #12326 from IQSS/12323-get-inherited-guestbooks-li…
ChengShi-1 May 21, 2026
bfa7986
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship May 21, 2026
d605f1f
fix conflict
stevenwinship May 21, 2026
d07a45c
fix conflict
stevenwinship May 21, 2026
0000c12
fix conflict
stevenwinship May 21, 2026
03a6763
Merge branch 'develop' into 11447-mydata-retrieve-empty-result-set
stevenwinship May 21, 2026
7d851e9
Merge branch 'develop' into feature/fast-redeploy-scripts
ErykKul May 22, 2026
cde389f
small cleanup
ErykKul May 22, 2026
552da06
typo
pdurbin May 22, 2026
8e91d70
Merge pull request #11961 from IQSS/feature/fast-redeploy-scripts
pdurbin May 26, 2026
5d431b9
feat(api/SearchIT.java): make search more precise and disable failing…
srmanda-cs Apr 29, 2026
216bcb7
feat(.github/workflows/container_integration_test.yml): add container…
srmanda-cs Apr 29, 2026
0a812ab
Potential fix for pull request finding
srmanda-cs Apr 29, 2026
ac837ee
Modify integration test workflow configuration
srmanda-cs Apr 29, 2026
370902a
Update paths-ignore to exclude .txt files
srmanda-cs Apr 29, 2026
1ee940a
Disable unreliable testRetrieveMyDataCollections
srmanda-cs Apr 29, 2026
b64e634
Update container integration tests workflow
srmanda-cs Apr 29, 2026
2484285
Update SUSHI config file handling in workflow
srmanda-cs Apr 29, 2026
ce34be7
Enhance curl command with error handling
srmanda-cs Apr 29, 2026
08ecbf0
Update jacoco path in integration tests workflow
srmanda-cs Apr 29, 2026
4328a10
Update SUSHI config file retrieval method
srmanda-cs Apr 29, 2026
6754e95
Include master branch in CI workflow triggers
srmanda-cs May 4, 2026
e281160
Refactor SUSHI config file injection method
srmanda-cs May 4, 2026
5fa56ec
Add file existence check before docker cp
srmanda-cs May 4, 2026
e8b0fd2
Refactor file injection method for integration tests
srmanda-cs May 4, 2026
70f7b99
feat(.github/workflows/container_integration_test.yml): test jacoco fix
srmanda-cs May 6, 2026
b87af01
feat(.github/workflows/container_integration_test.yml): fix sloppy ex…
srmanda-cs May 6, 2026
c387517
feat(.github/workflows/container_integration_test.yml): enable DVAPIK…
srmanda-cs May 6, 2026
978d32d
feat(.github/workflows/container_integration_test.yml): failsafe for …
srmanda-cs May 6, 2026
82b8d67
feat(.github/workflows/container_integration_test.yml): just another …
srmanda-cs May 6, 2026
f14954d
Configure JaCoCo agent in docker-compose for testing
srmanda-cs May 6, 2026
275d8f3
Enhance JaCoCo integration in CI workflow
srmanda-cs May 6, 2026
fb190b0
Reduce timeout and clean up workflow comments
srmanda-cs May 6, 2026
2bb134b
Reorder stopping Dataverse stack in workflow
srmanda-cs May 6, 2026
9db609b
Update JaCoCo agent configuration in docker-compose
srmanda-cs May 6, 2026
ebda709
Update environment variable and JaCoCo execution process
srmanda-cs May 6, 2026
e7a2e70
feat(.github/workflows/container_integration_test.yml): remove jacoco…
srmanda-cs May 11, 2026
37ff518
feat(.github/workflows/container_integration_test.yml): full revert w…
srmanda-cs May 11, 2026
befd61d
feat(.github/workflows/container_integration_test.yml): revert commit
srmanda-cs May 11, 2026
9bc351e
feat(.github/workflows/container_integration_test.yml): speed up buil…
srmanda-cs May 11, 2026
11e9d6c
feat(.github/workflows/container_integration_test.yml): reduce timeout
srmanda-cs May 11, 2026
1bf2a61
feat(.github/workflows/container_integration_test.yml): remove unnece…
srmanda-cs May 11, 2026
1c3d286
feat(.github/workflows/container_integration_test.yml): bump upload a…
srmanda-cs May 11, 2026
e9c52db
feat(.github/workflows/container_integration_test.yml): pass cors as …
srmanda-cs May 13, 2026
b9dfa50
feat(.github/workflows/container_integration_test.yml): CorsIT fix
srmanda-cs May 13, 2026
51aecf7
feat(.github/workflows/container_integration_test.yml): switch env to…
srmanda-cs May 13, 2026
bc5a539
Merge pull request #12338 from IQSS/12337-guestbook-response-document…
landreev May 26, 2026
68e9a84
Merge pull request #12368 from uncch-rdmc/12367-github-actions-workfl…
pdurbin May 26, 2026
4a7173b
Fix destroy dataset response for persistent IDs #8412
won-seoop May 20, 2026
9b0e389
Required controlledVocabulary metadata marked as valid while empty (#…
stevenwinship May 26, 2026
cd907fd
Fix DataRetrieverApiIT.testRetrieveMyDataCollections() for github mig…
stevenwinship Apr 30, 2026
352e361
address review comments
stevenwinship Apr 30, 2026
a5a5410
un-disable testRetrieveMyDataCollections() test
stevenwinship May 26, 2026
63e520b
Merge branch 'IQSS:develop' into 10398-geospatial-block
lubitchv May 26, 2026
47cbce0
Integration testing
lubitchv May 26, 2026
a1de833
solr remove header fields
lubitchv May 26, 2026
1cec97b
Merge pull request #12390 from GlobalDataverseCommunityConsortium/Edi…
sekmiller May 26, 2026
d5e2cda
Merge pull request #12372 from IQSS/12371-fix-dataretriever-api-test-…
pdurbin May 26, 2026
8ccec57
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship May 27, 2026
0f2511b
Bump org.keycloak:keycloak-services in /conf/keycloak/builtin-users-spi
dependabot[bot] Apr 13, 2026
61bae55
Bump org.omnifaces:omnifaces from 4.0-M13 to 4.7.5
dependabot[bot] Apr 16, 2026
ca98439
Bump michalvankodev/copy-issue-labels from 1.3.0 to 2.0.0
dependabot[bot] Apr 16, 2026
c6faaa6
Bump actions/add-to-project from 1.0.2 to 2.0.0
dependabot[bot] May 5, 2026
2c7ec9f
Bump org.postgresql:postgresql in /modules/dataverse-parent
dependabot[bot] May 6, 2026
14f8206
Fix typo in dataset management documentation (#12396)
Parthsuii May 28, 2026
406b279
Merge remote-tracking branch 'IQSS/develop' into LocallyFAIR
qqmyers May 29, 2026
ac1da80
merge fixes
qqmyers May 29, 2026
60124c3
Merge remote-tracking branch 'IQSS/develop' into LCDataCite
qqmyers May 29, 2026
ddb57fa
Merge branch 'LCDataCite' of https://github.com/QualitativeDataReposi…
qqmyers May 29, 2026
8bbd737
Auto Create thumbnail so Search API will return image_url when publis…
stevenwinship May 29, 2026
824f16f
Merge branch 'develop' into 11447-mydata-retrieve-empty-result-set
stevenwinship May 29, 2026
fe20ed7
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship May 29, 2026
693c89e
add release date script (#12312)
pdurbin May 29, 2026
6e5aea8
review fixes
qqmyers May 29, 2026
217d430
Merge pull request #12256 from IQSS/11447-mydata-retrieve-empty-resul…
ChengShi-1 Jun 1, 2026
261ab11
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship Jun 1, 2026
7ee98da
Remove TestIngest Class
stevenwinship May 29, 2026
3be83ea
add release note
stevenwinship May 29, 2026
beb49c6
Removing deprecated Meta class
stevenwinship May 29, 2026
080a81b
remove meta from DatasetPage
stevenwinship Jun 1, 2026
c57b7af
Merge pull request #12416 from IQSS/12415-remove-testingest-class
landreev Jun 1, 2026
e46a251
Merge pull request #12418 from IQSS/12417-remove-meta-class
landreev Jun 1, 2026
fb2fe48
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship Jun 2, 2026
3ee64ea
Merge pull request #12322 from uncch-rdmc/12321_installer_payara7
pdurbin Jun 2, 2026
0f3e645
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship Jun 2, 2026
4acddc8
fix label spacing and alignment
qqmyers Jun 2, 2026
c797854
stop downloading XSDs from sitemaps.org, use local copies #12422
pdurbin Jun 3, 2026
f9f4afb
Merge pull request #12427 from IQSS/12422-sitemaps.org
landreev Jun 3, 2026
0a1817f
Merge pull request #12365 from IQSS/11405-optimize-huge-exports
landreev Jun 3, 2026
bc94b4c
Merge branch 'develop' into 12386-manage-guestbook-apis
stevenwinship Jun 3, 2026
ca73078
add test to create dataset and local review of it #12313
pdurbin Apr 10, 2026
9d41651
add command and API to get reviews #12313
pdurbin Apr 13, 2026
a7e525f
add tests for unpublished local reviews #12313
pdurbin Apr 13, 2026
a07ba08
add docs for "list reviews" API endpoint #12313
pdurbin Apr 13, 2026
0377168
add release note #12313
pdurbin Apr 13, 2026
3d3a10a
croissant with local reviews, more review fields, test rubric #12314
pdurbin Jun 2, 2026
b87df81
remove duplicate JSON, use JSON from guides instead
pdurbin Jun 3, 2026
d6f93f6
reference pull request in release note snippet
pdurbin Jun 3, 2026
0771ee2
chore(deps): bump aquasecurity/setup-trivy from 0.2.6 to 0.3.1
dependabot[bot] Jun 3, 2026
603b87f
correct block name
pdurbin Jun 3, 2026
ac0d032
remove tabs to make reviewdog happy
pdurbin Jun 3, 2026
8ef2ad4
Merge branch 'develop' into rst2md1
pdurbin Jun 3, 2026
0109463
Merge pull request #12291 from IQSS/rst2md1
pdurbin Jun 3, 2026
ac64059
Merge pull request #12324 from IQSS/dependabot/maven/conf/keycloak/bu…
pdurbin Jun 3, 2026
f363fce
Merge pull request #12335 from IQSS/dependabot/maven/org.omnifaces-om…
pdurbin Jun 3, 2026
9497570
Merge pull request #12383 from IQSS/dependabot/maven/modules/datavers…
pdurbin Jun 3, 2026
dffbdcc
Merge pull request #12375 from IQSS/dependabot/github_actions/actions…
pdurbin Jun 3, 2026
8cc4b99
Merge pull request #12336 from IQSS/dependabot/github_actions/michalv…
pdurbin Jun 3, 2026
cc3c65e
Merge pull request #12430 from IQSS/dependabot/github_actions/aquasec…
pdurbin Jun 3, 2026
199057d
Merge pull request #12402 from won-seoop/8412-destroy-response-persis…
pdurbin Jun 3, 2026
82751e8
Merge branch 'develop' into LocallyFAIR
qqmyers Jun 4, 2026
359e476
bump opennlp-tools version
pdurbin Jun 3, 2026
4ce883c
Merge pull request #12239 from QualitativeDataRepository/Get_settings…
sekmiller Jun 5, 2026
a3b8fd7
IQSS/12244 - fix org citations (#12248)
qqmyers Jun 8, 2026
77fdb6e
Adding geo to solr schema and block, fix spelling
lubitchv Jun 8, 2026
66c911f
remove quotes
lubitchv Jun 8, 2026
706fec4
remove additional quotes
lubitchv Jun 8, 2026
335e52b
Merge branch 'IQSS:develop' into 10398-geospatial-block
lubitchv Jun 8, 2026
5226f5f
various doc improvements #12319
pdurbin Jun 8, 2026
8fc2be7
Alicia changes
lubitchv Jun 8, 2026
dfd0198
Merge pull request #12395 from IQSS/12386-manage-guestbook-apis
ChengShi-1 Jun 8, 2026
377953e
Fix for Gestbook Response parsing
stevenwinship Jun 9, 2026
177217e
Some cleanup and extra validation in the code that repackages shape f…
landreev Jun 9, 2026
3354a7a
fix test by ordering the custom questions by displayOrder
stevenwinship Jun 9, 2026
f3b42ca
Merge branch 'IQSS:develop' into 10398-geospatial-block
lubitchv Jun 9, 2026
63593fb
geographic
lubitchv Jun 10, 2026
7d9cd72
Merge pull request #12425 from IQSS/12313-local-reviews-croissant
sekmiller Jun 11, 2026
d81f093
a typo in the warning message #12426
landreev Jun 11, 2026
08bb973
Merge branch 'develop' into 12426-shapefile-handler
landreev Jun 11, 2026
21d82ef
don't feature Locally FAIR so prominently in User Guide #12319
pdurbin Jun 12, 2026
292223a
Merge branch 'develop' into 11998-features-in-guides
pdurbin Jun 12, 2026
62211b4
fix link to big data support
pdurbin Jun 12, 2026
724bb9c
Update geospatial.tsv
lubitchv Jun 12, 2026
05b5832
various improvements from doc wg meeting #11998
pdurbin Jun 12, 2026
e228655
switch to Title Case #11998
pdurbin Jun 12, 2026
94dcafe
remove unused script #11998
pdurbin Jun 12, 2026
b290214
add release note #11998
pdurbin Jun 12, 2026
bc8fae4
add geographic
lubitchv Jun 12, 2026
1e03c09
Merge pull request #12224 from QualitativeDataRepository/LCDataCite
sekmiller Jun 12, 2026
c14d83c
geographic
lubitchv Jun 12, 2026
68f75d3
docs(admin): use sphinx-design module to make feature list more visua…
poikilotherm Jun 12, 2026
48035b2
docs(admin): convert some more features into cards for larger examples
poikilotherm Jun 12, 2026
e2004ae
Merge pull request #12448 from IQSS/12426-shapefile-handler
pdurbin Jun 12, 2026
568e56e
docs(admin): make columns in feature list responsive
poikilotherm Jun 12, 2026
fa04f0d
docs(admin): make intro/heading card take full size
poikilotherm Jun 12, 2026
6cd8740
docs(admin): convert remaining sections into cards
poikilotherm Jun 12, 2026
c0484a3
docs(admin): re-add a TOC for better navigation
poikilotherm Jun 12, 2026
18cecc3
docs: fix code block formatting in Native API Guide (#12457)
Sipxi Jun 13, 2026
8b4c3ab
Merge pull request #12462 from Sipxi/patch-1
pdurbin Jun 15, 2026
160e7db
Update appendix.rst to remove outdated note #10398
pdurbin Jun 15, 2026
f1eaa4f
revert Iran to how it was
pdurbin Jun 15, 2026
b64abb1
better blurb #10398
pdurbin Jun 15, 2026
88e2bcc
Update doc/sphinx-guides/source/admin/features.md
poikilotherm Jun 15, 2026
ab19d61
add link to ISO 19115 #10398
pdurbin Jun 15, 2026
d34f6d8
Merge pull request #12460 from IQSS/11998-alternative-layout
pdurbin Jun 15, 2026
2f74719
Merge pull request #12000 from IQSS/11998-features-in-guides
pdurbin Jun 15, 2026
1703622
Merge remote-tracking branch 'IQSS/develop' into LocallyFAIR
qqmyers Jun 15, 2026
338c117
Merge remote-tracking branch 'origin/LocallyFAIR' into LocallyFAIR
qqmyers Jun 15, 2026
e6708b0
Merge pull request #11507 from lubitchv/10398-geospatial-block
pdurbin Jun 15, 2026
35ed00e
Merge pull request #12429 from IQSS/12389-bump-opennlp
pdurbin Jun 15, 2026
5a1a566
Merge pull request #12319 from GlobalDataverseCommunityConsortium/Loc…
pdurbin Jun 15, 2026
9289b5b
Merge pull request #12447 from IQSS/12446-fix-guestbook-response-parsing
sekmiller Jun 15, 2026
8e705b4
Fixing flaky IT tests
stevenwinship Jun 15, 2026
670f82f
Merge pull request #12466 from IQSS/12463-fix-flaky-tests
pdurbin Jun 15, 2026
259b4ab
#12464 update code to work with both versions of display value string…
sekmiller Jun 16, 2026
b6d5d09
documenting auth. change for /access/datafile/.../userPermissions API…
landreev Jun 17, 2026
396b1cc
keep lines together and reword slightly #12472
pdurbin Jun 17, 2026
3e5bba0
Merge pull request #12473 from IQSS/12472-api-changelog-per-12319
pdurbin Jun 17, 2026
c66a2b4
start 6.11 release notes #12283
pdurbin Jun 16, 2026
4c6cb59
CORS filter fix
pdurbin Jun 16, 2026
10f18af
Show Historical File Access Requests
pdurbin Jun 16, 2026
210d89c
show orig file format for ingested files
pdurbin Jun 16, 2026
114a2ee
not valid, does not comply
pdurbin Jun 16, 2026
5ec62b9
fast redeploy
pdurbin Jun 16, 2026
86a1e4b
new geo fields
pdurbin Jun 16, 2026
97170b3
mydata empty
pdurbin Jun 17, 2026
964a950
thumbnail search bug
pdurbin Jun 17, 2026
0cb7712
citation format API
pdurbin Jun 17, 2026
5f26de0
template APIs
pdurbin Jun 17, 2026
4caf17b
more ra info
pdurbin Jun 17, 2026
d40ae70
list of features
pdurbin Jun 17, 2026
0343fa5
croissant 1.1
pdurbin Jun 17, 2026
f1a6e2c
datacite utf bug
pdurbin Jun 17, 2026
d4bc811
mention other sphinx dep
pdurbin Jun 17, 2026
4db5341
userperm needs auth
pdurbin Jun 17, 2026
65c9e0a
default contributor role API
pdurbin Jun 17, 2026
d508592
storage driver API changes
pdurbin Jun 17, 2026
78f75cb
handles
pdurbin Jun 17, 2026
5437393
email exclude
pdurbin Jun 17, 2026
14731d9
local contexts
pdurbin Jun 17, 2026
43bfc26
CSL fix
pdurbin Jun 17, 2026
7ef95a9
guestbook fix
pdurbin Jun 17, 2026
3e801e6
bagpack
pdurbin Jun 17, 2026
7aece9e
submit for review hidden if no files
pdurbin Jun 17, 2026
e9c996a
guestbook usage count
pdurbin Jun 17, 2026
f1b371c
guestbook API bugs
pdurbin Jun 17, 2026
361bd44
s3 bug
pdurbin Jun 17, 2026
d076baf
local reviews
pdurbin Jun 17, 2026
cdc7672
locally fair
pdurbin Jun 18, 2026
1f3937c
inherited guestbooks
pdurbin Jun 18, 2026
1c4244b
submit for review
pdurbin Jun 18, 2026
4c47017
guestbook timing
pdurbin Jun 18, 2026
3d605af
s3 1 GB bug
pdurbin Jun 18, 2026
9e98b94
manage guestbook APIs
pdurbin Jun 18, 2026
5f6cb28
remove classes
pdurbin Jun 18, 2026
f0cd7ce
guestbook response parsing
pdurbin Jun 18, 2026
eef28d1
spelling
pdurbin Jun 18, 2026
6cafe01
adjust highlights and other tweaks
pdurbin Jun 18, 2026
65aba9e
replace preview links with final
pdurbin Jun 18, 2026
2c4294b
tweak upgrade instructions
pdurbin Jun 18, 2026
80df113
typo
pdurbin Jun 18, 2026
0463581
typos
pdurbin Jun 18, 2026
b72716f
explain more about the list of features
pdurbin Jun 18, 2026
0683e95
mailchimp, thank Pablo and Josh
pdurbin Jun 18, 2026
0e35006
typo
pdurbin Jun 18, 2026
8af905a
Revise 6.11 release notes for clarity and grammar
jggautier Jun 18, 2026
3cbc3a3
Update release notes for version 6.11
jggautier Jun 18, 2026
4caf936
use machine readable name for `croissant` and `croissantSlim`
pdurbin Jun 22, 2026
6b13959
typo
pdurbin Jun 22, 2026
cdbc879
add simplified instructions when the default Solr schema.xml will do
pdurbin Jun 22, 2026
bbe4e89
improve description of guestbook Access API bug
pdurbin Jun 22, 2026
c0f954f
Minor grammatical change
jggautier Jun 22, 2026
07e9482
contributors can see which API tests are failing, if any
pdurbin Jun 22, 2026
0623d82
remove suggestion that #12244 is fully fixed
pdurbin Jun 23, 2026
b047f9f
Add Name to JSON response for Guestbook Responses
stevenwinship Jun 26, 2026
e58872a
add release note
stevenwinship Jun 26, 2026
f1b759d
change userName to show name or users name or guest
stevenwinship Jun 26, 2026
e9352a3
change userName to show name or users name or guest
stevenwinship Jun 26, 2026
cc5cfad
rename userName to name in printer to match parser
stevenwinship Jun 26, 2026
4d38b40
remove name default 'Guest'
stevenwinship Jun 29, 2026
64053e6
Expand acknowledgments in release notes
landreev Jun 29, 2026
340eb71
Fix typo in upgrade instructions
landreev Jun 29, 2026
a3da339
Merge pull request #12475 from IQSS/12283-6.11-release-notes
landreev Jun 29, 2026
78c62b4
Fix performance when checking dataset version file count
stevenwinship Jun 29, 2026
1a19e93
fix guest user check
stevenwinship Jun 29, 2026
16765bb
cache hasFiles in perm wrapper
stevenwinship Jun 30, 2026
9c13f0a
cache hasFiles in perm wrapper
stevenwinship Jun 30, 2026
fd99707
remove extra calls to get dataset in SearchIncludeFragment
stevenwinship Jun 30, 2026
264c290
remove extra calls to get dataset in SearchIncludeFragment
stevenwinship Jun 30, 2026
d3d1414
null entity fix
stevenwinship Jun 30, 2026
0fe658d
null entity fix
stevenwinship Jun 30, 2026
594d637
refactor
stevenwinship Jun 30, 2026
9fac0bb
another refactor
stevenwinship Jul 1, 2026
2f723c8
Merge pull request #12494 from IQSS/performance-fix-for-dataset-versi…
landreev Jul 1, 2026
2d01752
Merge pull request #12492 from IQSS/12491-include-name-in-guestbook-r…
landreev Jul 1, 2026
a8623f1
Update Volexity link in release notes #12283
pdurbin Jul 1, 2026
9c2ecac
remove unnecessary snippet
pdurbin Jul 1, 2026
e2af389
Merge pull request #12500 from IQSS/12283-6.11-release-notes2
pdurbin Jul 1, 2026
41ae364
bump version to 6.11 #12289
pdurbin Jun 24, 2026
741c5da
Merge pull request #12484 from IQSS/12289-bump-to-6.11
pdurbin Jul 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/add_bugs_to_project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
name: Add bug to project
runs-on: ubuntu-latest
steps:
- uses: actions/add-to-project@v1.0.2
- uses: actions/add-to-project@v2.0.0
with:
project-url: https://github.com/orgs/IQSS/projects/34
github-token: ${{ secrets.ADD_TO_PROJECT_PAT }}
Expand Down
285 changes: 285 additions & 0 deletions .github/workflows/container_integration_tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,285 @@
name: Container Integration Tests Workflow

on:
workflow_dispatch:
push:
branches:
- develop
- master
paths-ignore:
- "doc/**"
- "**/*.md"
- ".github/ISSUE_TEMPLATE/**"
- ".github/*.md"
pull_request:
branches:
- develop
- master
paths-ignore:
- "doc/**"
- "**/*.md"
- ".github/ISSUE_TEMPLATE/**"
- ".github/*.md"

concurrency:
group: "container-integration-tests-${{ github.ref }}"
cancel-in-progress: true

jobs:
main-integration-tests-workflow:
runs-on: ubuntu-latest
timeout-minutes: 60

defaults:
run:
shell: bash

permissions:
contents: read
checks: write
pull-requests: write

steps:

# ---------------------------
# CHECKOUT
# ---------------------------
- name: Checkout repository
uses: actions/checkout@v6

# ---------------------------
# VERIFY DOCKER
# ---------------------------
- name: Verify Docker
run: |
set -euo pipefail
docker version

# ---------------------------
# SETUP JAVA + MAVEN
# ---------------------------
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: "temurin"
java-version: "21"
cache: "maven"

- name: Verify Maven
run: |
set -euo pipefail
mvn -version

# ---------------------------
# BUILD IMAGES (Dataverse-native)
# ---------------------------
- name: Build Dataverse containers via Maven
run: |
set -euo pipefail
mvn -Pct -T 1C package

# ---------------------------
# START CONTAINERS (BACKGROUND)
# ---------------------------
- name: Start Dataverse stack
run: |
set -euo pipefail
mvn -Pct docker:start \
-Ddataverse.feature.index-harvested-metadata-source=true \
-Ddataverse.oai.server.maxidentifiers=2 \
-Ddataverse.oai.server.maxrecords=2

# ---------------------------
# WAIT FOR API READINESS
# ---------------------------
- name: Wait for Dataverse API readiness
run: |
set -euo pipefail
URL="http://localhost:8080/api/info/version"
MAX_ATTEMPTS=10
SLEEP_TIME=15
echo "Waiting for Dataverse readiness..."
for attempt in $(seq 1 $MAX_ATTEMPTS); do
echo "Attempt $attempt..."
RESPONSE=$(curl -s --max-time 15 "$URL" || true)
STATUS=$(echo "$RESPONSE" | jq -r '.status' 2>/dev/null || echo "NOT_READY")
if [ "$STATUS" = "OK" ]; then
echo "Dataverse endpoint is READY."
echo "Dataverse waiting for full readiness. Waiting 30 more seconds."
sleep 30
echo "Response: $RESPONSE"
exit 0
fi
echo "Not ready. Sleeping ${SLEEP_TIME}s..."
sleep $SLEEP_TIME
if [ $SLEEP_TIME -lt 60 ]; then
SLEEP_TIME=$((SLEEP_TIME * 2))
if [ $SLEEP_TIME -gt 60 ]; then
SLEEP_TIME=60
fi
fi
done
echo "Dataverse failed to become ready."
docker ps
CONTAINERS="$(docker ps -aq)"
if [ -n "$CONTAINERS" ]; then
for cid in $CONTAINERS; do
echo "===== Logs for container $cid ====="
docker logs "$cid" || true
done
else
echo "No running containers to show logs for."
fi
exit 1

# ---------------------------
# MAP LOCALSTACK TO LOCALHOST
# ---------------------------
- name: Map localstack to localhost for Maven tests
run: echo "127.0.0.1 localstack" | sudo tee -a /etc/hosts

# ---------------------------
# CONFIGURE DATAVERSE FOR TESTS
# ---------------------------
- name: Configure Dataverse API Settings
run: |
set -euo pipefail

echo "Setting API Database Settings via internal container curl..."

# We define the settings in an array
declare -A settings=(
[":BuiltinUsersKey"]="burrito"
[":ProvCollectionEnabled"]="true"
[":AllowApiTokenLookupViaApi"]="true"
[":AllowSignUp"]="true"
)
# We run curl INSIDE the container so the source IP is 127.0.0.1
for key in "${!settings[@]}"; do
echo "Setting $key..."
docker exec dev_dataverse curl --fail-with-body -sS -X PUT -d "${settings[$key]}" "http://localhost:8080/api/admin/settings/$key"
echo ""
done

# ---------------------------
# PRE-TEST INJECTIONS
# ---------------------------
- name: Put SUSHI config file in place
run: |
set -euo pipefail

SOURCE_FILE="${{ github.workspace }}/src/test/java/edu/harvard/iq/dataverse/makedatacount/sushi_sample_logs.json"

echo "Injecting local file into container..."
# This reads the local file and writes it inside the container using standard input
docker exec -i dev_dataverse sh -c "cat > /tmp/sushi_sample_logs.json" < "$SOURCE_FILE"

# Verify the content is actually there and has size
docker exec dev_dataverse ls -l /tmp/sushi_sample_logs.json
docker exec dev_dataverse head -n 5 /tmp/sushi_sample_logs.json

# ---------------------------
# RUN MAVEN INTEGRATION TESTS
# ---------------------------
- name: Run Maven Integration Tests
env:
DVAPIKEY: "burrito"
DV_APIKEY: "burrito"
DV_API_KEY: "burrito"
run: |
set -euo pipefail
TEST_SUITE=$(cat tests/integration-tests.txt)

echo "Running suite: $TEST_SUITE"

mvn test \
-Dtest="$TEST_SUITE" \
-Dmaven.test.failure.ignore=true \
-Ddataverse.test.baseurl=http://localhost:8080 \
-DcompilerArgument=-Xlint:unchecked

# ---------------------------
# UPLOAD SUREFIRE/FAILSAFE REPORTS
# ---------------------------
- name: Upload Test Failure Reports
if: always()
uses: actions/upload-artifact@v7
with:
name: maven-test-reports
path: |
target/surefire-reports/
target/failsafe-reports/
retention-days: 14

# ---------------------------
# PUBLISH TEST DASHBOARD IN GITHUB PR
# ---------------------------
- name: Publish Test Results Dashboard
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
files: |
target/failsafe-reports/TEST-*.xml
target/surefire-reports/TEST-*.xml

# ---------------------------
# FAIL WORKFLOW IF TESTS FAILED
# ---------------------------
- name: Check for Test Failures
if: always()
run: |
echo "Checking Surefire/Failsafe reports for failures..."
if grep -q "<failure" target/surefire-reports/*.xml target/failsafe-reports/*.xml 2>/dev/null; then
echo "Tests failed! Failing the workflow."
exit 1
fi
echo "All tests passed."

# ---------------------------
# COLLECT DOCKER LOGS (ALWAYS, WITH MAPPING)
# ---------------------------
- name: Collect Docker logs (mapped)
if: always()
run: |
mkdir -p docker-logs
echo "Gathering container metadata..."
docker ps -a --format '{{.Names}}|{{.Image}}|{{.Status}}' > docker-logs/container-summary.txt
while IFS='|' read -r name image status; do
# Create a readable label
label="$name"
case "$name" in
*dataverse*)
label="dataverse-app"
;;
*postgres*)
label="postgres-db"
;;
*solr*)
label="solr-index"
;;
*localstack*)
label="localstack-s3"
;;
esac
echo "Collecting logs for $name ($label)"
{
echo "===== CONTAINER: $name ====="
echo "Label: $label"
echo "Image: $image"
echo "Status: $status"
echo ""
echo "===== LOGS ====="
docker logs --timestamps "$name" 2>&1 || true
} > "docker-logs/${label}__${name}.log"
done < docker-logs/container-summary.txt

# ---------------------------
# UPLOAD DOCKER LOGS (ALWAYS)
# ---------------------------
- name: Upload Docker logs
if: always()
uses: actions/upload-artifact@v7
with:
name: docker-logs
path: docker-logs/
retention-days: 14
2 changes: 1 addition & 1 deletion .github/workflows/container_maintenance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ jobs:
with:
platforms: ${{ env.PLATFORMS }}
- name: Setup Trivy binary for vulnerability scanning
uses: aquasecurity/setup-trivy@v0.2.6
uses: aquasecurity/setup-trivy@v0.3.1
with:
version: v0.69.3

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/copy_labels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ jobs:
name: Copy labels from linked issues
steps:
- name: copy-labels
uses: michalvankodev/copy-issue-labels@v1.3.0
uses: michalvankodev/copy-issue-labels@v2.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
4 changes: 2 additions & 2 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ formats:
- pdf

build:
os: ubuntu-22.04
os: ubuntu-24.04
tools:
python: "3.10"
python: "3.12"
apt_packages:
- graphviz

Expand Down
2 changes: 1 addition & 1 deletion conf/keycloak/builtin-users-spi/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@
</build>

<properties>
<keycloak.version>26.5.5</keycloak.version>
<keycloak.version>26.6.0</keycloak.version>
<java.version>17</java.version>
<jakarta.persistence.version>3.2.0</jakarta.persistence.version>
<mindrot.jbcrypt.version>0.4</mindrot.jbcrypt.version>
Expand Down
5 changes: 3 additions & 2 deletions conf/mdc/counter_weekly.sh
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ case $HTTP_STATUS in
# Successfully queued
# Extract status from the nested data object
STATUS=$(echo "$RESPONSE_BODY" | jq -r '.data.status')

# Extract message from the nested data object
if echo "$RESPONSE_BODY" | jq -e '.data.message' > /dev/null 2>&1 && [ "$(echo "$RESPONSE_BODY" | jq -r '.data.message')" != "null" ]; then
MESSAGE=$(echo "$RESPONSE_BODY" | jq -r '.data.message')
Expand Down Expand Up @@ -89,4 +89,5 @@ done
}

# Call the function on the root dataverse to start processing
processDV 1
processDV 1
echo "Processing Dataverse Complete: $(date)"
Loading
Loading