Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support JSON output from Dataverse V6.2 plus retention period feature #50

Merged
merged 8 commits into from
May 21, 2024

Conversation

PaulBoon
Copy link
Contributor

@PaulBoon PaulBoon commented May 8, 2024

Fixes DD-1565

And to be more specific; Publish of a Dataset will fail on 6.2 without this fix.

Description of changes

Support JSON output from Dataverse V6.2 plus retention period feature
Part of upgrading our Data Stations to version 6.2 with added patches (epic DD-1547).

How to test

Build this and the build a local version of dd-vault-metadata that uses this newer lib.
This will result in 0.27.1-SNAPSHOT.

Use that SNAPSHOT of the locally built client lib in dd-vault-metadata, dd-validate-dans-bag and dd-ingest-flow.

        <dependency>
            <groupId>nl.knaw.dans</groupId>
            <artifactId>dans-dataverse-client-lib</artifactId>
            <version>0.27.1-SNAPSHOT</version>
        </dependency>

Note: when building the client-lib now it produces version 0.27.1-SNAPSHOT, but after releasing it will be 0.28.0.

To test the backwards compatibility use a vagrant box that has our 6.0 version of datavesre; start-preprovisioned-box.py -s will give a working dev_archaeology basebox.

Build the dd-vault-metadata, dd-validate-dans-bag and dd-ingest-flow services with that new client lib.
Then deploy them on the vagrant box with deploy.py -m <service name here> dev_archaeology.

The client lib (and the dd-vault-metadata service that uses it should be backwards compatible, we should test it by verifying that Publish also works on the Dataverse 6.0 that we have running now (also the DANS fork on our vagrant boxes).

Testing the updated services can be done by running a SWORD2 example:

cd ~/git/dans-core-systems/modules/dd-dans-sword2-examples
mvnci
./run-simple-deposit.sh https://dev.sword2.archaeology.datastations.nl/collection/1 user001 user001  src/main/resources/example-bags/valid/default-open

./run-validation.sh https://dev.sword2.archaeology.datastations.nl/validate-dans-bag src/main/resources/example-bags/valid/default-open

The PR on dans-core-systems below explains how you can have Dataverse 6.2 on the vagrant box. Initially it is fine to test with the IQSS version of 6.2, without the RetentionPeriod feature.

After you make sure the Publish works, you can go on and install the DANS patched version that has support for the RetentionPeriod feature. In this case add a retention period to a file and then Publish the Datasset.

Related PRs

(Add links)

*https://github.com/DANS-KNAW/dans-core-systems/pull/30
*IQSS/dataverse#10336

Notify

@DANS-KNAW/core-systems

@PaulBoon PaulBoon marked this pull request as ready for review May 13, 2024 08:34
@PaulBoon PaulBoon requested a review from a team as a code owner May 15, 2024 14:21
Copy link
Contributor

@janvanmansum janvanmansum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks OK to me. It would be nice to have an example program for the retention period API.

@PaulBoon PaulBoon merged commit 6eb3162 into DANS-KNAW:master May 21, 2024
4 checks passed
@PaulBoon PaulBoon deleted the v6.2-DANS-DataStation branch May 21, 2024 08:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants