Advanced File Tagging With the Workflow App

Introduction

The Workflow App enables admins to specify rules and conditions (file size, file mimetype, group membership and more) to automatically assign tags to uploaded files. Based on those tags automated file operations ('Workflow actions') like File Retention (automated file retention periods) can be conducted. The app has three parts:

  • Tag Manager

  • Automatic Tagging

  • Retention

The Workflow App should be enabled by default (Apps page), and the three configuration modules will be visible on your ownCloud Admin page. See Tagging Files in the ownCloud User manual to learn how to apply and filter tags on files.

Tag Manager

To use tag management, administrators need to install and enable the Collaborative Tags Management app.

The Tag Manager is used for creating new tags, editing existing tags, and deleting tags. Tags may be marked as Visible, Static, Restricted, or Invisible.

Visible

All users may see, rename, and apply these tags to files and folders.

Static

Only users in the specified groups can assign and un-assign the tag to a file. However, only admins can rename and edit the tag.

Restricted

Tags are assignable and editable only to the user groups that you select. Other users can filter files by restricted tags, but cannot tag files with them or rename them. The tags are marked (restricted).

Invisible

Tags are visible only to ownCloud admins.

To access this functionality, select Settings  Admin  Workflow & Tags.

Tag Manager

This is an example of what your tags look like in the Tags view on your files page. Non-admin users will not see invisible tags, but visible and restricted tags only.

Tag Manager

Automatic Tagging

The Automatic Tagging module operates on newly-uploaded files. Create a set of conditions, and then when a file or folder matches those conditions it is automatically tagged. The tag must already have been created with the Tag Manager.

For example, you can assign the invisible tag iOS Uploads to all files uploaded from iOS devices. This tag is visible only to admins.

Automatic tagging

When files with this tag are shared with you, you can view them with the Tags filter on the Files page.

Viewing tagged files

Automatic Tagging is especially useful with the Retention module.

The settings of a workflow can be fine-tuned post creation, see the example below:

Update Workflow

Retention

The Retention module is your housecleaning power tool, because it automatically deletes files after a time period that you specify. Select which tag to set a time limit on, and then set your time limit. File age is calculated from the file mtime (modification time).

ownCloud does not preserve directory mtimes (modification time), though it does update file mtimes.

Setting retention times via tag

For best performance, retention tags should be applied high in your file hierarchy. If subfolders have the same tags as their parent folders, their tags must also be processed, so it will take a little longer.

Retention Engines

There are two retention engines that further allow you to fine-tune your retention settings:

TagBasedRetention

This is the default setting and checks files that have a particular tag assigned. Then it checks (depth-first) the children of the tagged item, before continuing with the other tagged items. Children that have already been checked will not be checked a second time.

This is optimised for processing smaller numbers of files that have multiple retention tags.

UserBasedRetention

Examines files per user. It first iterates over all files and folders (siblings first), then examines the tags for those items and checks their respective retention periods. This is optimised for many files with few retention tags.

You can define the way that the retention engine behaves by adding the following config.php setting. The value can be either tagbased (default) or userbased.

'workflow.retention_engine' => 'userbased',