Workflows
Workflows and steps
A workflow consists of various so-called "steps". A single step has a precisely defined task. Usually, docuteam feeder uses the steps of docuteam actions. You can also create and execute your own steps.
The tab "Workflows" shows all defined ingest workflows that can be applied to a concrete SIP.
Execute workflow
A workflow is started with a click on start
. In a second step, the SIP to be processed is selected. For this there are three possibilities:
- Dropdown list for SIP, which are stored in the folder defined as "Inbox folder for packages".
- Dropdown list for SIP, which were uploaded as depositions.
- Manual entry of a SIP name (if feature
manual_input
is activated).
The dropdown for SIPs is populated from the "inbox folder for packages" specified for the respective workflow.
Create or edit workflow
If you have the appropriate permissions, you can edit existing workflows by clicking on "edit". A workflow is always a linear process: The SIP is sent into a pipeline in which one step after the other is processed. In case of an error the execution stops and omits any subsequent steps.
The steps selected here in the left column are documented at docuteam actions. The right column contains the parameters that are given to the selected step when it is called. SIP can be referenced with the following variables:
Variable | Explanation | Example |
---|---|---|
${ input.sip.base } | Name of the SIP without file extension | example |
${ input.sip.extension } | File extension of the SIP | zip |
${ input.sip.name } | Name of the SIP with file extension | example.zip |
${ input.sip.path } | Path to the folder containing the SIP | C:\docuteam\workbench\1_inbox |
${ input.sip.safe_name } | Name of the SIP with special characters normalized | example.zip |
For depositions, there are additional functions available:
Variable | Explanation | Example |
---|---|---|
${ input.sip.id } | Identifier of the deposition | 123 |
${ input.sip.original_name } | Name of the deposition | hello.zip |
${ input.sip.base }
and ${ input.sip.name }
contain the internal representation of the deposition (e.g. CmLdaZVcjpncG57G7jjf7SjX). ${ input.sip.ext }
is empty in this case, as the deposition is stored without a file extension.
Additionally the following variables exist:
Variable | Explanation | Example |
---|---|---|
${ meta.creator_email } | Mail address of the user which created the execution | info@docuteam.ch |
${ meta.current_execution_creation_date } | Date and time when the current execution was created | 2040-01-01T00:00:00.000Z |
${ meta.executed_by_workflow_execution_id } | If the current execution has been created by an event handler as a reaction to another execution, this value contains the value of said execution | 123 |
${ meta.last_execution_creation_date } | Date and time when the last execution of the workflow happened | 1970-01-01T00:00:00.000Z |
${ meta.last_modifier_email } | Mail address of the user which last edited the execution | info@docuteam.ch |
${ meta.organization_id } | ID of the current feeder organization | 123 |
${ meta.workflow_execution_id } | ID of the current execution | 123 |
Besides editing an existing workflow, it is also possible to create a completely new workflow.
The field "Step prefix" must contain the a console command to switch to the actions_home_dir
folder of the organisation, which is executed before each step (e.g. cd "${ env.ACTIONS_HOME_999 }"
).
The optional field "Inbox folder for packages" contains a path to a folder of the workbench where feeder looks for SIPs when starting a workflow.
In both fields you can enter Windows or Linux environment variables using the following syntax: ${ env.ACTIONS_HOME_999 }
. The same syntax is also support in the step parameters and step commands.
For each workflow, parameters can be defined, which are later available as variables for steps. Parameter need a name, as well as a type. If the parameter passed does not correspond to the type defined here, the workflow will not be executed. The following values are available for selection:
- File or Folder: Path to a file or folder located in the input folder of the respective workflow.
- ID: Accepts only numbers
- OAI-PMH identifier: ID of an OAI-PMH record (
oai:{server address}:{identifier}
) - PID: PID of an object in docuteam box
- PUID: Pronom file format ID (e.g. fmt/40 or x-fmt/430).
- No parameter: Passing of a parameter not allowed, field "Manual entry" is hidden
A workflow can be configured to be run automatically and repeatedly based on a schedule.
Using Event handlers, workflow executions can be linked to each other, so that a follow-up workflow is started automatically if a workflow finishes with success and/or an error.
Create or edit step
Like workflows, existing steps can be edited or new steps can be created with the appropriate authorization, for example to integrate further migration tools or to extend the ingest process with additional functionalities.