Draft EaaSI Platform Release Notes for v2024.1

In conjunction with the recent updates to the EaaSI Product Roadmap, the team would like to clarify for benefit of the user community the work identified for the next, upcoming release of the EaaSI platform - tentatively referred to as “v2024.1”, as in the first release of 2024 - versus the other areas of work identified in the roadmap for further work in 2024.

Specifically, these release notes are meant to set user expectations and elaborate on:

Mint new release of EaaSI in first half of 2024, which will include the following:

Emulation Project “Advanced Workflow” (dynamic object to drive assignment)
Map all resource permissions in S3-compatible storage to Keycloak user management
Updated resource type icons and labels for consistency
Bug fixes
Stability and dependency updates

Please be aware that we still do not have a concrete date for release and this post will change with updates as they become available - e.g. setting the version number to v2024.03 or v2024.04; or possibly editing, clarifying or adding further information to the bullet points below. These release notes remain a living document intended for public transparency and we will loudly indicate when they are “frozen”.


Environments:

  • EaaSI v2024.x1 deployment is being tested in the following environments:

  • Compatibility with Red Hat Enterprise Linux 9 may be tested post-release and updates pushed if necessary to the eaasi-installer, but RHEL support is not considered essential to public release

Dependency upgrades + changes:

  • Upgrade of (optional) MinIO module (exact version info to come)
    • Converted default image- and object-archive implementation from block to object/S3-based storage using MinIO
    • Reduced dependency on Java WildFly for file server storage and handling
    • Opens path (in a future update) to allow for using external S3-based storage services for image- and object-archives and allowing for shopping/decreasing storage costs depending on cloud services used
  • Keycloak module version upgrade (exact version info to come)
  • Ansible upgrades for eaasi-installer (exact version info to come)
  • GStreamer 1.x Java Core upgraded from 1.0.0 to 1.4.0
    • Java Native Access upgraded from 4.2.2 to 5.13.0
  • Various command syntax changes to account for need in recent QEMU + qemu-img versions for Ubuntu to explicitly declare drive image format

Fixes:

  • All resource ownership information consistently moved from EaaSI UI’s postgres database to Keycloak
    • Both back-end EaaS server and front-end applications (EaaSI UI, Demo UI) properly track and enforce individual user account’s private image and object archives
  • Improved EaaSI UI caching behavior for greater consistency of resource metadata requests and display while navigating between different menus/pages of the interface
    • (Specifically resolves known issue where EaaSI UI appears to “revert” changes saved as a derivative or Content Environment when running the derivative Environment immediately after saving it)
  • Removed various redundant EaaSI UI API calls and code paths to improve web app performance
  • Generalized EaaS emulator, environment, object and ROM API endpoints to resolve file storage locations based on relative rather than absolute file paths
  • Created migration paths for eaasi-installer to convert existing file/block storage archives to S3-based object storage
  • Created migrations for eaasi-installer to convert METS files for existing environment and object resources from absolute file paths to relative paths
  • Improved storage and cleanup of temp data in cases of resource import or replication failure
  • Fixes to experimental environment-proposer API (the “UVI” API) to account for storage changes
  • Disabled redundant/unnecessary emulated network components and services
    • Fixed proper shutdown sequence for those emulated network components that are necessary to enable Internet Access on Environments
  • Improved handling of newlines, custom line-breaks, and spaces in free-text user-input fields (e.g. emulator native-config, file names in resource import)
  • Various label and navigation text improvements in EaaSI UI for clarity and consistency
  • Resource icons and labels made consistent to distinguish between:
    • Environments
    • Content Environments
    • Software objects
    • Content objects
    • Computer Images
  • History tab on Environment details pages now displays date and time info for individual revisions
  • Fixed issues with paginating through more than 50 Users on an Organization’s Manage Users overview
  • Running Task descriptions are more consistently descriptive rather than displaying task IDs

Features:

  • “Basic” vs. “Advanced” Emulation Project workflow
    • Back-end server can now define and launch “ephemeral” Environments based on provided emulator details + resource configuration (no Environment resource is saved, not even a temporary one, until/unless user consciously decides to save the running “ephemeral” Environment)
    • “Advanced” workflow added to Emulation Project menu to allow imported Computer Image resources to be properly matched with Software and/or Content objects to create new Environments via EaaSI UI
    • Previous Emulation Project functionality for quick matching of existing Environments to Software and Content resources using EaaSI’s best-guess defaults remains available as default “Basic” workflow
  • “Refresh Storage Index” action added to Troubleshooting
    • Users can trigger (via EaaSI UI) a refresh of the index for configured S3-like storage archives. Generally useful for troubleshooting unexpected front-end behavior but also may specifically assist with keeping EaaSI application in sync with imported resources in the case of distributed cloud deployments and/or (in a future update) directly importing large resources to storage via S3 tooling rather than via web UI
  • “Add Software” option removed from Action menu for Environment resources
    • UX improvement intended to clarify Emulation Project as the primary destination for creating new Environment resources
  • eaasi-installer tweaks for EaaSI server deployment and configuration:
    • added support for externally-terminated SSL connections
    • added support for using an external Keycloak instance
    • made deployment of Demo UI optional
2 Likes