Skip to content

Commit

Permalink
Merge remote-tracking branch 'IQSS/develop' into IQSS-4894-Open_Graph…
Browse files Browse the repository at this point in the history
…_metadata
  • Loading branch information
qqmyers committed Apr 23, 2024
2 parents e35f835 + 9bda7dd commit 1e81b44
Show file tree
Hide file tree
Showing 126 changed files with 2,097 additions and 661 deletions.
2 changes: 1 addition & 1 deletion .env
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
APP_IMAGE=gdcc/dataverse:unstable
POSTGRES_VERSION=13
POSTGRES_VERSION=16
DATAVERSE_DB_USER=dataverse
SOLR_VERSION=9.3.0
SKIP_DEPLOY=0
101 changes: 101 additions & 0 deletions .github/workflows/maven_cache_management.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
name: Maven Cache Management

on:
# Every push to develop should trigger cache rejuvenation (dependencies might have changed)
push:
branches:
- develop
# According to https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#usage-limits-and-eviction-policy
# all caches are deleted after 7 days of no access. Make sure we rejuvenate every 7 days to keep it available.
schedule:
- cron: '23 2 * * 0' # Run for 'develop' every Sunday at 02:23 UTC (3:23 CET, 21:23 ET)
# Enable manual cache management
workflow_dispatch:
# Delete branch caches once a PR is merged
pull_request:
types:
- closed

env:
COMMON_CACHE_KEY: "dataverse-maven-cache"
COMMON_CACHE_PATH: "~/.m2/repository"

jobs:
seed:
name: Drop and Re-Seed Local Repository
runs-on: ubuntu-latest
if: ${{ github.event_name != 'pull_request' }}
permissions:
# Write permission needed to delete caches
# See also: https://docs.github.com/en/rest/actions/cache?apiVersion=2022-11-28#delete-a-github-actions-cache-for-a-repository-using-a-cache-id
actions: write
contents: read
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Determine Java version from Parent POM
run: echo "JAVA_VERSION=$(grep '<target.java.version>' modules/dataverse-parent/pom.xml | cut -f2 -d'>' | cut -f1 -d'<')" >> ${GITHUB_ENV}
- name: Set up JDK ${{ env.JAVA_VERSION }}
uses: actions/setup-java@v4
with:
java-version: ${{ env.JAVA_VERSION }}
distribution: temurin
- name: Seed common cache
run: |
mvn -B -f modules/dataverse-parent dependency:go-offline dependency:resolve-plugins
# This non-obvious order is due to the fact that the download via Maven above will take a very long time (7-8 min).
# Jobs should not be left without a cache. Deleting and saving in one go leaves only a small chance for a cache miss.
- name: Drop common cache
run: |
gh extension install actions/gh-actions-cache
echo "🛒 Fetching list of cache keys"
cacheKeys=$(gh actions-cache list -R ${{ github.repository }} -B develop | cut -f 1 )
## Setting this to not fail the workflow while deleting cache keys.
set +e
echo "🗑️ Deleting caches..."
for cacheKey in $cacheKeys
do
gh actions-cache delete $cacheKey -R ${{ github.repository }} -B develop --confirm
done
echo "✅ Done"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Save the common cache
uses: actions/cache@v4
with:
path: ${{ env.COMMON_CACHE_PATH }}
key: ${{ env.COMMON_CACHE_KEY }}
enableCrossOsArchive: true

# Let's delete feature branch caches once their PR is merged - we only have 10 GB of space before eviction kicks in
deplete:
name: Deplete feature branch caches
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' }}
permissions:
# `actions:write` permission is required to delete caches
# See also: https://docs.github.com/en/rest/actions/cache?apiVersion=2022-11-28#delete-a-github-actions-cache-for-a-repository-using-a-cache-id
actions: write
contents: read
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Cleanup caches
run: |
gh extension install actions/gh-actions-cache
BRANCH=refs/pull/${{ github.event.pull_request.number }}/merge
echo "🛒 Fetching list of cache keys"
cacheKeysForPR=$(gh actions-cache list -R ${{ github.repository }} -B $BRANCH | cut -f 1 )
## Setting this to not fail the workflow while deleting cache keys.
set +e
echo "🗑️ Deleting caches..."
for cacheKey in $cacheKeysForPR
do
gh actions-cache delete $cacheKey -R ${{ github.repository }} -B $BRANCH --confirm
done
echo "✅ Done"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5 changes: 5 additions & 0 deletions doc/release-notes/10022_upload_redirect_without_tagging.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
If your S3 store does not support tagging and gives an error if you configure direct uploads, you can disable the tagging by using the ``dataverse.files.<id>.disable-tagging`` JVM option. For more details see https://dataverse-guide--10029.org.readthedocs.build/en/10029/developers/big-data-support.html#s3-tags #10022 and #10029.

## New config options

- dataverse.files.<id>.disable-tagging
1 change: 0 additions & 1 deletion doc/release-notes/10101-qa-guide.md

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

5 changes: 0 additions & 5 deletions doc/release-notes/10216-metadatablocks.md

This file was deleted.

1 change: 0 additions & 1 deletion doc/release-notes/10238-container-demo.md

This file was deleted.

5 changes: 0 additions & 5 deletions doc/release-notes/10240-file-citation.md

This file was deleted.

1 change: 1 addition & 0 deletions doc/release-notes/10242-add-feature-dv-api
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
New api endpoints have been added to allow you to add or remove featured collections from a dataverse collection.
10 changes: 0 additions & 10 deletions doc/release-notes/10280-get-file-api-extension.md

This file was deleted.

5 changes: 0 additions & 5 deletions doc/release-notes/10286-return-owner-added-to-get-apis.md

This file was deleted.

1 change: 0 additions & 1 deletion doc/release-notes/10297-metadata-api-fix.md

This file was deleted.

5 changes: 5 additions & 0 deletions doc/release-notes/10316_cvoc_http_headers.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
You are now able to add HTTP request headers required by the External Vocabulary Services you are implementing.

A combined documentation can be found on pull request [#10404](https://github.com/IQSS/dataverse/pull/10404).

For more information, see issue [#10316](https://github.com/IQSS/dataverse/issues/10316) and pull request [gddc/dataverse-external-vocab-support#19](https://github.com/gdcc/dataverse-external-vocab-support/pull/19).
3 changes: 0 additions & 3 deletions doc/release-notes/10318-uningest-and-reingest.md

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The API endpoint for getting the Dataset version has been extended to include latestVersionPublishingStatus.

This file was deleted.

3 changes: 3 additions & 0 deletions doc/release-notes/10339-workflow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
The computational workflow metadata block has been updated to present a clickable link for the External Code Repository URL field.

Release notes should include the usual instructions, for those who have installed this optional block, to update the computational_workflow block. (PR#10441)

This file was deleted.

3 changes: 0 additions & 3 deletions doc/release-notes/10360-binder-redirect.md

This file was deleted.

3 changes: 0 additions & 3 deletions doc/release-notes/10381-index-after-publish.md

This file was deleted.

1 change: 0 additions & 1 deletion doc/release-notes/10382-optional-croissant-exporter.md

This file was deleted.

6 changes: 6 additions & 0 deletions doc/release-notes/10389-metadatablocks-api-extension.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
New optional query parameters added to ``api/metadatablocks`` and ``api/dataverses/{id}/metadatablocks`` endpoints:

- ``returnDatasetFieldTypes``: Whether or not to return the dataset field types present in each metadata block. If not set, the default value is false.
- ``onlyDisplayedOnCreate``: Whether or not to return only the metadata blocks that are displayed on dataset creation. If ``returnDatasetFieldTypes`` is true, only the dataset field types shown on dataset creation will be returned within each metadata block. If not set, the default value is false.

Added new ``displayOnCreate`` field to the MetadataBlock and DatasetFieldType payloads.
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
For scenarios involving API calls related to large datasets (Numerous files, for example: ~10k) it has been optimized:

- The search API endpoint.
- The permission checking logic present in PermissionServiceBean.
5 changes: 0 additions & 5 deletions doc/release-notes/10424-new-api-for-mdc.md

This file was deleted.

3 changes: 3 additions & 0 deletions doc/release-notes/10464-add-name-harvesting-client-facet.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
The Metadata Source facet has been updated to show the name of the harvesting client rather than grouping all such datasets under 'harvested'

TODO: for the v6.13 release note: Please add a full re-index using http://localhost:8080/api/admin/index to the upgrade instructions.
1 change: 1 addition & 0 deletions doc/release-notes/10468-doc-datalad-integration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DataLad has been integrated with Dataverse. For more information, see https://dataverse-guide--10470.org.readthedocs.build/en/10470/admin/integrations.html#datalad
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
The Dataverse object returned by /api/dataverses has been extended to include "isReleased": {boolean}.
```javascript
{
"status": "OK",
"data": {
"id": 32,
"alias": "dv6f645bb5",
"name": "dv6f645bb5",
"dataverseContacts": [
{
"displayOrder": 0,
"contactEmail": "54180268@mailinator.com"
}
],
"permissionRoot": true,
"dataverseType": "UNCATEGORIZED",
"ownerId": 1,
"creationDate": "2024-04-12T18:05:59Z",
"isReleased": true
}
}
```
4 changes: 0 additions & 4 deletions doc/release-notes/3437-new-index-api-added.md

This file was deleted.

37 changes: 0 additions & 37 deletions doc/release-notes/3623-multipid.md

This file was deleted.

4 changes: 0 additions & 4 deletions doc/release-notes/3702-return-to-author.md

This file was deleted.

4 changes: 0 additions & 4 deletions doc/release-notes/5645-geospatial-props-nslong-fix.md

This file was deleted.

3 changes: 2 additions & 1 deletion doc/release-notes/6.1-release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,7 @@ Upgrading requires a maintenance window and downtime. Please plan ahead, create

These instructions assume that you've already upgraded through all the 5.x releases and are now running Dataverse 6.0.

0\. These instructions assume that you are upgrading from 6.0. If you are running an earlier version, the only safe way to upgrade is to progress through the upgrades to all the releases in between before attempting the upgrade to 5.14.
0\. These instructions assume that you are upgrading from 6.0. If you are running an earlier version, the only safe way to upgrade is to progress through the upgrades to all the releases in between before attempting the upgrade to 6.1.

If you are running Payara as a non-root user (and you should be!), **remember not to execute the commands below as root**. Use `sudo` to change to that user first. For example, `sudo -i -u dataverse` if `dataverse` is your dedicated application user.

Expand Down Expand Up @@ -288,6 +288,7 @@ As noted above, deployment of the war file might take several minutes due a data

6a\. Update Citation Metadata Block (to make Alternative Title repeatable)

- `wget https://github.com/IQSS/dataverse/releases/download/v6.1/citation.tsv`
- `curl http://localhost:8080/api/admin/datasetfield/load -H "Content-type: text/tab-separated-values" -X POST --upload-file scripts/api/data/metadatablocks/citation.tsv`

7\. Upate Solr schema.xml to allow multiple Alternative Titles to be used. See specific instructions below for those installations without custom metadata blocks (7a) and those with custom metadata blocks (7b).
Expand Down
Loading

0 comments on commit 1e81b44

Please sign in to comment.