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

Yoda 1.9.5 [draft] #533

Draft
wants to merge 55 commits into
base: release-1.9
Choose a base branch
from
Draft

Yoda 1.9.5 [draft] #533

wants to merge 55 commits into from

Conversation

stsnel
Copy link
Member

@stsnel stsnel commented Dec 2, 2024

This PR is currently a draft. It's not yet ready for review and merging.

stsnel and others added 30 commits November 28, 2024 18:11
By default, when calling the integration test rule, we run all
tests. This adds an option to run a single test, or all tests
with a particular prefix (e.g. "util.collection.*").
(backport to Yoda 1.9)

Co-authored-by: Lazlo Westerhof <[email protected]>
In the script for transforming publication metadata to support
base DOIs, adjust the query condition for selecting the zone of
a collection.

Selecting on USER_ZONE does not reliably return all data package
collections in the zone. We need to either check the zone of
the collection itself, or check the beginning of the collection name
to select its zone.
The log messages for copying ACLs did not match the actions that the
system was performing.
In the schema transformation code, ignore ACLs of non-existent
users when copying ACLs from a parent. This is needed because
iRODS keeps ACLs referring to deleted users / groups around in the
database (see irods/irods#7778).
This also includes a script for manually updating provenance logs.
Add basic integration tests for meta.get_latest_vault_metadata_path
Added errors='replace' parameter in decode function to replace invalid UTF-8 sequences in file.
FuHsinyu and others added 16 commits December 3, 2024 17:13
The revision creation job used to stop with a failure when a data object scheduled for revision creation could no longer be found on the resource where the revision creation job was looking for it. This can happen e.g. after a resource tree change. The revision creation job now logs an error message and continues with processing the next data object scheduled for revision creation, so that one such error can't stop the entire revision creation process.

This also extracts the function to gather data object properties to util.data_object and covers it with integration tests, so that this function can be re-used in other parts of the ruleset.
Add optional parameter to the update-publications rule so that
it updates only a single publication, rather than all publications
on the system. This is useful when troubleshooting an issue with
a single publication.
Get baseDOIMinted from the previous version, use Python get rather than try except
The job for revision creation now removes revision creation AVUs from data objects in trash.
This makes it easier to monitor the number of data objects waiting for revision creation.
The metadata schema transformation code from default-2 to default-3 transformed ORCID-IDs and Researcher IDs, but not Scopus IDs and ISNI IDs. Because of this, metadata files with the default-2 schema containing Scopus or ISNI IDs can usually not be converted automatically to default-3.

Solution:

Add a transformation function that handles transformation of an ISNI and Scopus ID that consists of a series of digits (with optional spaces) to the format that is specified in the default-3 schema
Problem

When modifying groups with a CSV, I use groups that are already created (to add users for example) . I check the “Allow updates” button and “Process CSV”. I then get an error for existing groups even though the users have been added

Solution
When import groups using a CSV file, now the user can be informed with a simple, but useful descriptive message of the actions taken:

A message may consist of 1 or more of the following phrases:

Group '<group_name>' created.
Group '<group_name>' already exists.
Users added (<no_users_added>).
Users removed (<no_users_removed>).
(Backport to Yoda 1.9)

Co-authored-by: claravox <[email protected]>
Co-authored-by: Sirjan <[email protected]>
Configure API/integration tests to run on the Yoda 1.9 container
images for Yoda 1.9.x RC versions.
stsnel and others added 5 commits December 3, 2024 17:17
Upgrade UU microservices to v1.2.0 for testing the release
candidate version of Yoda 1.9.5, since it works with a different
microservices version than we currently have in the Docker image.
On API test failures, print more information for troubleshooting
purposes:
- CI: On failures, print web server error logs and portal access log
  for troubleshooting on portal level.
- API tests: if tests are unable to get a CSRF token, print the user
  that the error occurred with and the response from the web server
  for troubleshooting purposes.

(version for Yoda 1.9)
Install any new portal dependencies in CI. These may be needed for
the API tests.
We always run them with Python 3
Use Python 3.8 instead of distribution default Python 3.6, because
Python 3.6 has different (incompatible) arguments for the subprocess
module.
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.

6 participants