rucio / rucio/webui

OpenData Support

Open
#569 0 comments 0 reactions 1 assignee View on GitHub

@lobis is already working on this.

Since Jun 20, 2025.

opendata
Dominant language
TypeScript
Stars
5
Forks
36
Avg merge
6d 17h
Merged PRs (30d)
7

Description

Add OpenData support to the Rucio WebUI

Description

Add support for Rucio OpenData functionality to the WebUI.

The goal is to make OpenData DIDs discoverable and accessible directly from the WebUI, while keeping the integration optional and compatible with deployments where OpenData is not enabled or not supported by the connected Rucio server.

The implementation should follow the existing WebUI architecture and integrate OpenData consistently with the current DID-related functionality.

Main features

The OpenData integration will provide:

  • support for retrieving and displaying OpenData DIDs;
  • a dedicated OpenData page for browsing available OpenData datasets;
  • integration of OpenData information with the existing DID views;
  • support for identifying whether a DID is available as OpenData;
  • access to OpenData-specific information such as metadata, files, and download URLs;
  • rendering of the JSON metadata associated with an OpenData DID directly in the OpenData page, so that users can inspect the metadata content in a structured and readable way;
  • integration with the existing WebUI navigation and discovery mechanisms;
  • configuration through a dedicated OpenData feature flag;
  • graceful handling of Rucio servers where OpenData functionality is not available;
  • tests covering the new functionality.

The OpenData functionality should be disabled by default so that existing deployments are not affected unless it is explicitly enabled.

OpenData page

A dedicated OpenData section will allow users to browse the available OpenData DIDs and inspect the information associated with them.

The page will expose the relevant OpenData information for the selected DID, including its files, download information, and metadata.

The JSON metadata returned by the Rucio OpenData API will be rendered directly in the WebUI. This allows users to inspect the full metadata content from the OpenData page without having to retrieve or inspect the raw JSON separately.

The /opendata namespace should also remain suitable for additional OpenData-related views in the future.

DID integration

OpenData information will also be integrated with the existing DID functionality.

When a DID is marked as OpenData, the WebUI will be able to expose the corresponding OpenData information from the DID-related views, while keeping the standard DID functionality unchanged for regular DIDs.

Feature flag and compatibility

OpenData support will be controlled through a dedicated WebUI feature flag.

When the feature is disabled, the WebUI should behave as before and should not expose OpenData-specific functionality.

When the feature is enabled but the connected Rucio server does not provide the required OpenData functionality, the WebUI should handle this condition explicitly and present an appropriate error instead of a generic failure.

UI integration

When OpenData is enabled, the new functionality should be integrated with the existing WebUI patterns where applicable, including navigation, DID views, command discovery, bookmarks, and tips.

OpenData-specific UI elements should only be visible when the feature is enabled.

Implementation

The work will be split into three pull requests following the WebUI architectural layers.

PR 1 — Gateway layer https://github.com/rucio/webui/pull/834

Introduce the gateway-side support required to communicate with the Rucio OpenData API and expose the relevant data to the WebUI application.

This includes the required gateway models, endpoints, metadata handling, error handling, and related tests.

PR 2 — API / application layer https://github.com/lgiommi/rucio-webui/pull/2

Introduce the application-level OpenData functionality on top of the gateway layer.

This includes the OpenData use cases, API integration, feature configuration, dependency injection, data presentation, error mapping, and related tests.

PR 3 — Page / UI layer https://github.com/lgiommi/rucio-webui/pull/3

Introduce the user-facing OpenData functionality.

This includes the OpenData page, rendering of OpenData metadata, file and download information, integration with the existing DID views, navigation, and other UI-related integrations.

Expected result

With OpenData enabled and supported by the Rucio server, users should be able to discover OpenData DIDs, inspect their metadata directly in the WebUI, view the associated files, and access the available download URLs.

When OpenData is disabled, the WebUI should behave as before without exposing OpenData-specific functionality.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.