In this page
What is a content lifecycle configuration?
Configuration scopes
Global configurations
Custom configurations
Triggers
Age-based triggers
Label-based triggers
Combining triggers
Configuring content lifecycle rules
After you understood the current state of your content and decided where to implement what type of strategy, you can start setting up the configurations for your spaces.
What is a content lifecycle configuration?
Content lifecycle configurations (also frequently referred as "archiving configurations") are applied to Confluence spaces and describe what should happen with the pages in that space. Each space has its own content lifecycle configuration, even if that is a "do nothing" configuration. It is possible to have a totally unique strategy in each space, although it is probably impractical.
Configurations contain rules plus some additional settings, as visible in this screenshot:
Rules are combinations of triggers and actions:
- Trigger: describes when to take the action. Ex: "if a page is older than 100 days or is labeled with 'expire-14/2/20'...".
- Action: describes what to do. Ex: "...then notify its last modifier and the space supervisor".
For details on the rules and additional settings, please see the following pages:
Configuration scopes
Global configurations
When having tens or hundreds of spaces, maintaining the configuration separately for each would be time consuming. To ease maintenance, the app enables sharing and reusing so-called global configurations among multiple spaces.
To create, update or delete global configurations, login as Confluence administrator, then go to Confluence Administration (cog icon "⚙" in the top-right) → General Configuration → Archiving / Global Configurations (left panel). You can manage your global configurations in that screen.
Tip: always use a good descriptive name for your global configurations that identifies their primary use. Ex: "Monthly product documentation review".
After you have created a global configuration, you can apply it to a space by going to the space and clicking Space Admin → Archiving / Configuration → Edit configuration. The existing global configurations can be selected in the Select configuration drop-down.
Custom configurations
Although we strongly encourage using global configurations in most situations, you can also define custom settings that are applied to one specific space only. Just select Custom settings in the Select configuration drop-down, and set up the unique settings right there in the form.
Triggers
As written above, triggers decide when to take actions. A trigger can be either based on the page's age or on the labels added to the page.
Age-based triggers
This is the "automatic" (implicit) way of triggering actions.
In this case, the app calculates the "view age" and the "update age" (see their definitions) of the page, then compares those to a lower limit defined in the configuration. For example, "If the page was not updated for 100 days...".
Label-based triggers
This is the "manual" (explicit) way of triggering actions.
In this case, the app checks the labels added to the page and to its ancestors (parent pages recursively). For example, "If the page is labeled with 'archive'...".
The labels themselves can be added to the pages using the quick actions (more convenient) or the Labels dialog.
Combining triggers
You can freely activate multiple types of triggers for the same actions, in which case they can be connected by trivial logical operators:
- OR: at least one "sub-trigger" must be true to start the action.
- AND: all "sub-triggers" must be true.
The configuration interface makes the combinations intuitive.
There is one special case though: for page archiving, you can activate 3 different triggers and you can even freely select the first logical operator:
How does it work when all three sub-triggers are active?
- OR: trivial, as the order of evaluation doesn't matter.
-
AND: as the graphics around the triggers suggests, first the two age-based sub-triggers are evaluated, and then the result is combined with the last label-based sub-trigger.
Interpret it like this: the app inspects the ages, but you can manual override the result by applying the labels.
Questions?
Ask us any time.