Table of Contents | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Excerpt | ||
---|---|---|
| ||
Use the |
Overview
Different events can be used to increment a composite version number using the increment-metadata macro.
You can add a condition to a trigger to increment one element of a composite version.
In this approval workflow the approver in the Review state chooses the element of the composite version update being approved.
...
- the choice of Major, Minor or Patch parameter value acts as a condition for one of three triggers to update the appropriate metadata version component of
@current-version@
using the increment-metadata macrothe increment-metadata macro
Info |
---|
The example only works when the workflow is applied as a space workflow on creation of a page. The space workflow must be active to listen for the |
Use of triggers
The workflow uses the following trigger actions
- a
pagecreated
event trigger initializes a version value using the set-metadata macro - three
pageapproved
event triggers increment the component version value using the increment-metadata macro. Each trigger updates a different element of the composite metadata version number - a
statechanged
event trigger clears any existing value for the@Update type@
workflow parameter on a transition to the Review state
Each of the three pageapproved
event triggers listen for the approval decision for the Approved content review in the Review state. But each trigger has a condition based on the type of version update set by the approver.
- the condition is the value of the workflow parameter
Update type=
Major update
or=Minor update
or=Patching update
.
Using set-metadata macros, values for the following metadata are also updated in each of these three triggers.
@last-approver@
@last-date@
@current-type@
These are displayed on the content using the pageheader macro.
You may need to refresh the page content to view changes in the displayed metadata values.
Workflow parameter value trigger condition
Major, Minor and Patch are workflow parameter values set as a list option choice for the workflow parameter @Update type@.
...
Once confirmed the approved transition occurs.
Composite major-minor-patch version workflow
Code Block | ||||
---|---|---|---|---|
| ||||
{workflow:name=Increment a Metadata Version conditional|label=versiontest} {description} A simple approval workflow with use of increment-metadata macro to set the version of of approved contentand increment the version on the approval transition. {description} {pageheader} |Owner|@creator@| |Version|@current-version@| |Latest update|@current-type@ on @last-date@ by @last-approver@| {pageheader} {workflowparameter:Update type|description=Please, select the update type: Major (x.0.0), Minor (0.x.0), Patch (0.0.x)|type=list|options=Major,Minor,Patch|edit=true} {workflowparameter} {state:Review|approved=Approved|rejected=Rejected|taskable=true} {approval:Please review the content} {state} {state:Rejected|submit=Review|taskable=true|colour=#FF5630} {state} {state:Approved|final=true|updated=Review|hideselection=true|requiredparams=Update type} {state} {trigger:pagecreated} {set-metadata:current-version}1.0.0{set-metadata} {trigger} {trigger:statechanged|state=Review} {set-metadata:Update type}{set-metadata} {trigger} {trigger:pageapproved|approval=Please review the content|@Update type@=Major} {increment-metadata:current-version|increment=1.0.0} {set-metadata:current-type}Major update{set-metadata} {set-metadata:last-date}@date@{set-metadata} {set-metadata:last-approver}@user@{set-metadata} {trigger} {trigger:pageapproved|approval=Please review the content|@Update type@=Minor} {increment-metadata:current-version|increment=0.1.0} {set-metadata:current-type}Minor update{set-metadata} {set-metadata:last-date}@date@{set-metadata} {set-metadata:last-approver}@user@{set-metadata} {trigger} {trigger:pageapproved|approval=Please review the content|@Update type@=Patch} {increment-metadata:current-version|increment=0.0.1} {set-metadata:current-type}Patching update{set-metadata} {set-metadata:last-date}@date@{set-metadata} {set-metadata:last-approver}@user@{set-metadata} {trigger} {workflow} |
In this example, the workflow must be applied in space mode on creation of a page.
Here's how each trigger action works
Trigger Event | Action macro | Notes | |
---|---|---|---|
pagecreated | {set-metadata} |
| o |
... |
| o o | |
... |
| o o | |
... |
| o o | |
... | {set-metadata} |
|
...