Toggle ingest per catalogue host lms via DCB Admin only

Description

Goal

Avoid accidental ingest when loading host lms config in different environments.

In Scope

DCB Admin

  • Add new Catalogue accordian after client config section of host lms details page

    • only show if clientConfig.roles includes "CATALOGUE"

    • Add UI to catalogue host lms details page to

      • display ingest status

      • enable or disable harvesting

        • A button should be added underneath the Ingest status with the text “Enable ingest”, or “Disable ingest”, depending on the current value of “Ingest status”.

        • Styling: Secondary button (blue text on white), and size=small.

          • See mock up

        • When the ingest status is successfully changed by the user, display a “success” alert:

          • Ingest is now enabled for <host LMS>” or “Ingest is now disabled for <host LMS>

          • See mock up for an example

    • Restrict access to enable / disable harvesting to users with the role ADMIN

      • Do not display button if not sufficient privileged

  • Add ingest status column to host lms grid

Out of Scope

  • Toggle / enable / disable ingest on all catalogue hosts at once

  • Add general service override for ingest toggling

  • Audit log

    • Create audit log of change (timestamp, user, context (host lms, id) & config setting (ingest state), original and changed value) in keeping with DCB-750

    • Show grid of audit log entries for catalogue host lms (newest at top) 1

  • Display details of last state change

    • show timestamp of last state change 1

    • show user who applied last state change 1

  • Display timestamp of last ingest run (data should be consistent with DCB-751)

  • Remove “ingest” from Client config section

  • Configuration

    • Remove ingest property from host lms config

      • template files or related scripts

      • existing configuration files

      • documentation

    • Ensure default behaviour when catalogue host lms config is loaded is to not ingest.

Mockups

Attachments

2
0% Done
Loading...

Activity

Show:

Chas Woodfield May 8, 2024 at 5:00 PM

There is no API call to explicitly to enable or disable ingesting for a host LMS

Jag Goraya May 8, 2024 at 12:05 PM

- can I confirm, that there is no API for toggling ingest at this time? I know we can toggle ingest via the scripts Chas runs. We’re looking for a route to enable this via DCB Admin. Input welcome.

Jag Goraya April 2, 2024 at 7:32 PM

Presumably the action of enabling/disabling could potentially fail

This would be a database update failure of the setting toggle. Whatever the message is should be generic to indicate that an update wasn’t possible at this time. I think there’s something already in the pipeline for generic fail “something went wrong, reload and try again.“

Jag Goraya April 2, 2024 at 7:32 PM

Hey These are two different things - one is a server config setting, the other a user role.

  • only show if clientConfig.roles includes "CATALOGUE"

This is a property in the host lms config rather than a user permission. It is the role of the server rather than something that the user can do.

Restrict access to enable / disable harvesting to users with [TBC] role

This - on the other hand - is a restriction based on who the user is and the role they have in DCB Admin.

 

The net effect is:

  1. clientConfig.roles does not include CATALOGUE:

    1. don’t show the accordian

    2. there is no button to restrict, so user role is irrelevant

  2. clientConfig.roles does include CATALOGUE:

    1. show the accordian

    2. if the user has the right permission: show and enable the action control

    3. if the user does not have the right permission: do not show the action control

 

For now, assume the permitted role is ADMIN (I’ll update the description when Jira lets me).

Gill Osguthorpe April 2, 2024 at 3:23 PM

, have talked through this ticket with and have a couple of questions.

Permissions are mentioned twice:

Add new Catalogue accordian after client config section of host lms details page

  • only show if clientConfig.roles includes "CATALOGUE"

and here:

Restrict access to enable / disable harvesting to users with [TBC] role

  • Do not display button if not sufficient privileged

Would you mind confirming whether or not this is the aim:

  1. If user has the CATALOGUE role then display the accordion AND display the “Ingest status”.

  2. If the user has the CATALOGUE role AND has the harvesting permission (TBC) then also display the ingest switch button.

 

Presumably the action of enabling/disabling could potentially fail, in which case we’d need to display an error alert rather than a success alert. Do we have an idea of the possible errors which might occur?

Details

Assignee

Reporter

Components

Sprint

Priority

Created March 22, 2024 at 1:13 PM
Updated May 12, 2024 at 2:02 PM