Contribute to the DSpace Development Fund

The newly established DSpace Development Fund supports the development of new features prioritized by DSpace Governance. For a list of planned features see the fund wiki page.

The create process page

We've heard from clients that they often don't know what a script does simply by the script name. This is a problem when starting a new process, as well as on the overview page

So we propose two changes here.

First, show the description for a script underneath the script name in the script select. These descriptions already exist, but may need to be improved for some scripts

Second, add a name field for a process.

Initially the UI will automatically update this Name input, with the script name, followed by the parameters

But the user can overwrite that name, and once they do it will no longer change automatically.

The overview page

The goal here was to make it possible to search and filter processes, similar to the way we do for items in discovery. This makes it possible to only show processes with a certain status, or for a certain script or started by a certain user

The page is divided into 3 lists, because it gives you a better overview at a glance of the status, and because the relevant information for a process changes depending on its status. E.g for a running process it's important to know how long it's been running. For a queued process when it was added, and for a completed one, when it completed.

Each process also gets an icon to indicate its status at a glance

Each of these lists will have separate pagination, however the default page size will be large enough (e.g. 10) that in practice you usually won't see more than one page for Running and Queued

We add the ability to remove running and queued processes. We also investigated the ability to reorder queued processes, but this looks like it's quite difficult to do on the backend, so we'll keep that out for now

Running processes will be polled using the method contributed in #2480, when a process completes all 3 lists will be re-retrieved automatically

The name column shows that process name property mentioned above

Here you see the page filtered using both a user name, and the search query "filter"

Bulk deletion

We also propose to include a script that will delete completed processes older than a given period. We discussed creating a custom endpoint for bulk deletion, but using a script has the advantage that it can be scheduled in a crontab (e.g. you schedule to run the script every day, to delete all processes older than 30 days), while it can still be run as a process from the UI too

  • No labels