Advanced Configurations for Workflow Status Sync
Multi-Step Workflow Transitions
If the workflows between the two environments for an issue type not identical, then the basic Workflow configuration will not be enough because it supports only a single step transitions.
An example use case would be:
Source system transitions from
Open → In Progress,Target system requires
Open → Ready for Development → In Progress(two separate transitions).
If the current issue in the Source system is In Progress, then the target System Issue is currently In Progress, then after the sync the goal is to reach this same status but would require two workflow steps.
Here is a sample configuration in order to use the multi-step workflow transition:
syncSettings:
workflowStatus:
enabled: true
direction: one-way
mappings:
workflows:
basicworkflow:
issueTypes:
- task
- sub-task
sourceToTarget:
# When source moves to "In Progress" (status ID 3)
3:
transitionPaths:
# Default path: Open → Ready for Dev → In Progress
# Execute transition 1, then transition 2
default: ["1", "2"]
# If target is currently in "Ready for Development" (status ID 10001):
# Execute transition 2 (Ready for Development) → In Progress
10001: ["2"]
How it works:
When source issue status changes, the sync looks up the mapping for that status ID
It checks the target issue's current status
If a specific path exists for that current status in
transitionPaths, it uses that pathOtherwise, it uses the
defaultpathEach transition ID in the array is executed sequentially
Error handling:
If a transition in the chain fails, the sync stops at that step and logs the error. On the next sync, the system will use the appropriate path based on the target's current status (which may be an intermediate status from a partial chain).
Using the example above, when transitioning Open to reach In Progress on the target system, two workflow steps must be done which is steps 1 and 2. If the sync was only successful on the first step and issue is now Ready for Development (10001), then on the next sync, it will start from there and execute transition 2 to finally reach In Progress.