Workflow Synchronization

Workflow Mapping

Workflow mapping are using scheme approach, that mean they can be shared among different contracts.

Administration→ IssueSYNC → Workflow Mapping Scheme


Mappings list


Adding new mapping


1. Workflow mapping name

2. Workflow


Configuring mapping

2. Workflow

3. Outgoing transition code

This is just a text / communication code / trigger that will be sent to remote JIRA. Based on that some actions can be taken by the remote JIRA (see 5).

4. Remote workflow mapping

5. Incoming transition code - remote outgoing transition code

6. Resolution (since v1.3.1)

Some transitions required to set Resolution. Select this option to sent Resolution value as well.

Resolution

(since v1.3.1)

Resolution is sent when the flag is enable.

You are required to have the same resolutions list in both JIRAs.


Different workflows

In case you have different workflows, it is good to start with drawing these workflows. Then create a line between transitions you want to synchronize. Type a text on top of the line (it can be used later in workflow synchronization configuration). Transitions can be bidirectional but it is better to think about it as two separate transitions (one in, one out).

Synchronization Scheme configuration

On Synchronization Scheme in workflow section you specify prepared workflow mapping. All contexts from synchronization scheme will use this mapping. 

  • Single mapping can be shared with several Synchronization Schemes (so with many Contexts also).
  • (warning) Change in given Workflow Mapping configuration will affect all linked Contexts.
 show IssueSYNC 1.x.x...


101 Creating workflow mapping


1. In JIRA1 create new worklow mapping:

a) click Add in Workflow Mapping Scheme

b) enter Name (1) and select Workflow (2)

c) enter Outgoing transition code (3)
(warning) It requires at least one value to make this workflow mapping visible to the remote.

d) click Save

2. In JIRA2 create new worklow mapping:

a) click Add in Workflow Mapping Scheme

b) enter Name (1) and select Workflow (2)

c) enter Outgoing transition code (3)
(warning) It requires at least one value to make this workflow mapping visible to the remote.

d) select Remote workflow mapping (4) (from step 1)
(warning) If you don't see expected value, wait for synchronization or click Synchronize configuration in Connection configuration.

e) select Incoming transition code (5)

f) click Save

3. In JIRA1 edit worklow mapping (from step 1):

a) select Remote workflow mapping (4) (from step 2)
(warning) If you don't see expected value, wait for synchronization or click Synchronize configuration in Connection configuration.

b) select Incoming transition code (5)

c) click Save


Please, keep in mind to enter some incoming transition code, if you want given status to be synchronized.

Limitations


There are limitations you need to consider:

  • Outgoing transitions codes are defined between two statuses. You CANNOT point given transition if there is more than one transition between two statuses. 
  • Incoming transitions codes have to combined with transitions rather than statuses. So it is opposite to limitation mentioned above.
  • If you select the same transition codes for several incoming transition, only first will be executed. 
    That behavior can differ between Server and Cloud version of the IssueSYNC plugin. 


Workaround to differentiate outgoing transitions:

Starting situation:
"In Progress" -reject-> "Close"
"In Progress" -approve-> "Close"
=> only one event text possible

Add new intermediate status:
"In Progress" -reject-> "Reject" -(auto*)-> "Close"
"In Progress" -approve-> "Close"

* JIRA Automation plugin (for Server) can listen on given event that will be triggered via workflow transition (you will need to define new event and change post-function from Generic Event to this new one). JIRA automation action executes transition to "Close".
You should not map (auto) transition in your workflow mapping in IssueSYNC plugin - it can be automated on both sides.