We're updating the issue view to help you get more done. 

As a service provider, I need to configure workflows differently for different tenants

Description

Opencast currently does not support multi-tenancy when it comes to workflow definitions: All workflow definitions are available for all tenants.

We would like to change this with the following approach:

  • A workflow definition might specify an organization

  • If a workflow definition does not specify an organization, it is available to all tenants

  • If a workflow definition does specify an organization, it is available to that organization (tenant) only

  • A workflow definition can only be instantiated on a tenant when it is available to that tenant

  • APIs (External API, Admin UI Facade, REST APIs) will only list workflow definitions available to the tenant that is being requested

  • If is possible to have multiple workflow definitions with the same workflow definition ID but available to different tenants. One of that workflow definition might be the one available to all tenants

  • Tenant-specific workflow definitions take precedence over non-tenant-specific workflow definitions, i.e. if both a tenant-specific workflow definition and a non-tenant-specific workflow definition is available, only the tenant-specific workflow definition counts on the respective tenant (it overrides the more generic workflow definition).

Note: The motivation to allow multiple workflow definitions with the same workflow definition ID is to allow Adopters to use tenant-specific partial workflow definitions (partial = included in another workflow definition). The invariant to only have one workflow definition per workflow definition ID still holds as the tenant-specific WD overrides the generic WD.

Steps to reproduce

None

Status

Assignee

Unassigned

Reporter

Sven Stauber

Criticality

None

Tags (folksonomy)

None

Components

Fix versions

Priority