Plugin overview

The Herzum Approval add-on is a powerful JIRA add-on that provides a simple and flexible way of managing and processing the approval of JIRA issues.

Using a user-friendly configuration panel, an administrator can easily define approvals on specific workflows transitions, projects and issue types.

Features of the add-on are:

Display the approvals status for each transition (progress bar)

From an issue it is possible view all required approvals for each transition and their approval state.

At first the Approval section is hided, by clicking on the right-arrow the approval details are showed.

A progress bar show, in percentage, if the approval requests have been approved (green) or if they are in pending status (yellow).

If one required Approval has been rejected the bar is red and the transition can't be enabled.

When the bar is entirely green the associated transition is enabled, as showed on the following screen shot.

 

Approvals detail

The fields displayed on the Approvals Detail tab are:

It is possible review the approval status of a transition just making reference to the colors of the lines:


How to approve, reject or cancel an approval request

The authorized user can manage an approval request two way:

How to manage the approval via the issue screen

When the user wants to manage the approval, he can add a comment in the text area, before clicking on the button; the comment and the action description will be added to the Comments section.

The following screen shot shows the comment automatically added to the Comments section.

Note: 

  1. When the approval request is in Approved status, the user can reject or reset so to return in Pending status.
  2. When  the approval request  is in Rejected status, the user can approve or reset so to return in Pending status.
  3. When approval is in Pending status, user can approve or reject.

How to manage the approval via email

If you want, you can setup approvals by email just defining the "Approval Mail Handler" for the related mail queue.

Approvers are notified by an email, with issue detail, and with the transition for which the approval is required.


The approver can APPROVE/REJECT just replying to the received email by adding the following tags:

Moreover what you add after the previous tag is considered as an approval/rejection comment.

It's required that you always apply the tag @ to end your reply.

Version 1.1 and earlier only supported adding one line comment on the same line of the '@APPROVED' or '@REJECTED' and the tag @ is not expected to end your reply.

The issue Assignee and the User clicking on the action button are notified for each action made via email.

JQL functions

An user can search the tickets into the issue navigator based on their approval status.

The add-on provides three useful JQL functions to filter on the tickets:

How to use JQL functions

1

From the JIRA header, click Issues -> Search for Issues

Search for Issues tab

2

Click Advanced to switch the form to advance search mode using JQL.

Search screen

3

Enter an Approval JQL function

Search screen

4

Click the search icon to run the search. The list of issues appears.

JIRA search screen list view

The JQL functions have the behavior described below.

The issue in pendingForApproval() JQL function returns all issues having at least one approval requests in 'Pending' status.

JIRA search screen detail view

The issue in rejectedForApprovalStatus() JQL function retuns all issues having at least one approval requests in 'Rejected' status.

JIRA search screen detail view

The issue in approvedForApprovalStatus() returns all issues having all approval requests in 'Approved' status

JIRA search screen detail view


The Approval JQL functions can be combined with other functions as showed in the following screen shot. 

Notifications

The Herzum Approval add-on manages the following notifications via email:

  1. to the Assignee and to User having clicked an action button: when an user click on one of the action buttons (Approve, Reject, Cancel)
  2. to all the Approvers: when the user click on the button allowing the "Request for Approval".

    When the user click on the notification button, a message confirms that the approvers have been notified with an email.