Release Notes - Yoda v2.0

Version: 2.0

Released: TBA

What’s new

Changes affecting functionality for data stewards and researchers

  • Multi-file download: added support for downloading multiple files and folders as a ZIP directly from the portal
  • Open data package download: added support for downloading an open data package as a ZIP from the landing page
  • File browser navigation: implemented a feature to jump directly to files in file browsers during searches
  • Keyword selector: introduced a new keyword selector in metadata forms, supporting controlled vocabularies
  • SURF Portal theme: added a new theme for the SURF portal
  • Multiple deposit groups: enhanced support for managing multiple deposit groups
  • Landingpage themes: added support for customizable themes on landing pages
  • Data Package archiving: improved the reliability of the data package archiving process (“copy to vault”)
  • Vault archiving workflow: enhanced support for the vault archiving workflow
  • Secured status removal: removed Secured status from the research space
  • Intake module deprecation: Deprecated the intake module

Changes affecting technical administrators

  • Ubuntu and AlmaLinux support: added support for Ubuntu 24.04 and AlmaLinux 9
  • New admin privilege group: introduced a new admin privilege group (priv-admin)
  • Functional administration page: added a new administration page for performing functional tasks via the portal
  • Ansible library for iRODS: added an Ansible library to modify iRODS resources
  • NFS Shares Configuration: introduced an Ansible role for configuring NFS shares as iRODS resources
  • Rsyslog Support: added support for rsyslog to log iRODS messages in a readable format
  • RADIUS fallback removal: removed the RADIUS fallback option
  • Experimental caching: introduced experimental support for portal view and API caching

Other changes

  • Python: update rulesets to 3.12
  • iRODS: update to v4.3.4
  • Python-irodsclient: update to v3.1.1
  • GoCommands: update to v0.10.24
  • Flask and dependencies: update to v3.1.1
  • Bootstrap: update to v5.3.6
  • Mailpit: update to v1.27.1

Known issues

Upgrading from previous release

The playbook requires Ansible 2.16.x or higher.

Version constraints:

  • Requires Yoda external user service to be on version 1.9.x or higher.
  • Requires Yoda public server to be on version 1.9.x or higher.
  1. Backup/copy custom configurations made to Yoda version 1.9.5 / 1.10.0 To view what files were changed from the defaults, run git diff.

  2. After ensuring the configurations are stored safely in another folder, reset the Yoda folder using git stash or when you want to delete all changes made: git reset --hard.

  3. Check out the v2.0.0-rc.0 tag of the Yoda Git repository:
    git checkout v2.0.0-rc.0
    
  4. Set the Yoda version to v2.0.0-rc.0 in the configuration:
    yoda_version: v2.0.0-rc.0
    
  5. Install all Ansible collections needed to deploy Yoda:
    ansible-galaxy collection install -r requirements.yml
    
  6. Run the Ansible playbook in check mode:
    ansible-playbook -i <path-to-your-environment> playbook.yml --check
    ### EXAMPLE ###
    ansible-playbook -i /environments/development/allinone playbook.yml --check
    
  7. If the playbook has finished successfully in check mode, run the Ansible playbook normally:
    ansible-playbook -i <path-to-your-environment> playbook.yml
    ### EXAMPLE ###
    ansible-playbook -i /environments/development/allinone playbook.yml
    
  8. Update publication endpoints if there are published packages (DataCite, landingpages and OAI-PMH):
    irule -r irods_rule_engine_plugin-irods_rule_language-instance -F /etc/irods/yoda-ruleset/tools/update-publications.r