Try free
8 min read Guide 264 of 877

Workflow Automation in GitScrum

Manual repetitive tasks waste developer time and introduce inconsistency. Workflow automation in GitScrum handles routine work automatically—moving tasks, sending notifications, assigning work—so teams can focus on building software instead of managing process.

Automation Benefits

Manual ProcessAutomated
Remember to update statusStatus updates automatically
Notify people manuallyNotifications triggered
Track due datesDue dates calculated
Assign based on rulesAuto-assigned
Check for stale itemsAutomatic reminders

Automation Basics

Trigger → Condition → Action

AUTOMATION STRUCTURE
════════════════════

EVERY AUTOMATION HAS:
─────────────────────────────────────
1. TRIGGER
   "When something happens..."
   ├── Task created
   ├── Status changed
   ├── Field updated
   ├── Due date approaching
   ├── Time elapsed
   └── External event (webhook)

2. CONDITION (optional)
   "If criteria met..."
   ├── Task type is Bug
   ├── Priority is High
   ├── Label contains "urgent"
   ├── Assignee is empty
   └── Sprint is current

3. ACTION
   "Then do this..."
   ├── Change status
   ├── Assign to person
   ├── Send notification
   ├── Update field
   ├── Add label
   └── Create linked task

EXAMPLE:
─────────────────────────────────────
TRIGGER: Status changed to "Code Review"
CONDITION: Assignee is not empty
ACTION: 
  ├── Notify Assignee
  └── Set Review Due Date to +24 hours

In plain English:
"When a task moves to Code Review,
notify the assignee and set review
due date to 24 hours from now."

Common Automations

Status-Based

STATUS CHANGE AUTOMATIONS
═════════════════════════

1. AUTO-ASSIGN ON STATUS:
─────────────────────────────────────
Trigger: Status → "QA Testing"
Action: Assign to QA Lead
Reason: Route to right person automatically

2. NOTIFY ON BLOCKED:
─────────────────────────────────────
Trigger: Status → "Blocked"
Condition: Has blockedBy link
Action: 
  ├── Notify Project Manager
  └── Add "needs-attention" label
Reason: Surface blockers immediately

3. MOVE CHILD TASKS:
─────────────────────────────────────
Trigger: Parent Story → "Done"
Condition: Has incomplete subtasks
Action: 
  ├── Alert owner
  └── Keep parent in "In Review"
Reason: Don't close incomplete work

4. START → IN PROGRESS:
─────────────────────────────────────
Trigger: Assignee starts work (first activity)
Action: Status → "In Progress"
Reason: Automatic tracking, less manual

GITSCRUM SETUP:
─────────────────────────────────────
Project → Settings → Automations → Create

┌─────────────────────────────────────────────────────────┐
│  Create Automation                                     │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  Name: Auto-assign QA                                  │
│                                                         │
│  WHEN: Status changes                                  │
│  TO:   QA Testing                                      │
│                                                         │
│  THEN: Assign to                                       │
│        [QA Lead ▼]                                     │
│                                                         │
│        □ Run on existing items                         │
│                                                         │
│  [Cancel]                          [Create Automation] │
│                                                         │
└─────────────────────────────────────────────────────────┘

Time-Based

TIME-BASED AUTOMATIONS
══════════════════════

1. DUE DATE WARNING:
─────────────────────────────────────
Trigger: Due date is 24 hours away
Condition: Status is not Done
Action: 
  ├── Notify assignee
  └── Add "due-soon" label
Reason: Don't miss deadlines

2. STALE TASK ALERT:
─────────────────────────────────────
Trigger: No updates for 3 days
Condition: Status is "In Progress"
Action: 
  ├── Notify assignee
  └── Notify team lead
  └── Add "stale" label
Reason: Surface stuck work

3. OVERDUE ESCALATION:
─────────────────────────────────────
Trigger: Due date passed
Condition: Status is not Done
Action: 
  ├── Notify project manager
  └── Priority → High
Reason: Escalate overdue items

4. SPRINT DUE DATES:
─────────────────────────────────────
Trigger: Task added to sprint
Action: Set due date to sprint end date
Reason: Automatic deadline

SCHEDULING:
─────────────────────────────────────
Some time triggers run on schedule:
├── Daily at 9am: Check due dates
├── Weekly: Find stale items
├── Sprint end: Generate reports
└── Custom schedules

Integration-Based

INTEGRATION AUTOMATIONS
═══════════════════════

1. PR MERGED → DONE:
─────────────────────────────────────
Trigger: GitHub PR merged
Condition: PR linked to task
Action: Status → "Done"
Reason: Automatic completion tracking

2. BUILD FAILED → ALERT:
─────────────────────────────────────
Trigger: CI/CD build failed
Condition: Task has branch linked
Action: 
  ├── Status → "Needs Fix"
  └── Notify assignee
Reason: Immediate feedback

3. DEPLOY → UPDATE STATUS:
─────────────────────────────────────
Trigger: Deployment to staging
Action: 
  ├── Status → "Testing"
  └── Add "deployed-staging" label
Reason: Deployment tracking

4. EXTERNAL WEBHOOK:
─────────────────────────────────────
Trigger: Webhook from external tool
Condition: Payload contains task ID
Action: Custom (based on payload)
Reason: Integrate any system

SETUP:
─────────────────────────────────────
Integrations → GitHub → Enable
└── Automations trigger on GitHub events

Notification Automations

NOTIFICATION AUTOMATIONS
════════════════════════

1. ASSIGNMENT NOTIFICATION:
─────────────────────────────────────
Trigger: Assignee changed
Action: Notify new assignee
Message: "You've been assigned [Task] by [Changer]"

2. MENTION NOTIFICATION:
─────────────────────────────────────
Trigger: @mention in comment
Action: Notify mentioned person
Message: "[Mentioner] mentioned you in [Task]"

3. WATCHER NOTIFICATION:
─────────────────────────────────────
Trigger: Any update to watched task
Action: Notify watchers
Message: "[Task] was updated"

4. ESCALATION NOTIFICATION:
─────────────────────────────────────
Trigger: Priority changed to Critical
Action: 
  ├── Notify team channel
  └── Notify project manager
Message: "[Task] is now critical: [Title]"

5. DAILY DIGEST:
─────────────────────────────────────
Trigger: 9am daily
Action: Send digest of:
  ├── Overdue tasks
  ├── Due today
  ├── Stale items
  └── Blockers
To: Each team member
Reason: Morning awareness

NOTIFICATION CHANNELS:
─────────────────────────────────────
├── In-app notification
├── Email
├── Slack/Teams
├── Mobile push
└── Configure per automation

Best Practices

Automation Strategy

AUTOMATION STRATEGY
═══════════════════

START SMALL:
─────────────────────────────────────
Week 1: 
├── 1-2 simple automations
├── Status-based notifications
├── Observe how they work
└── Get team comfortable

Week 2-4:
├── Add more based on need
├── Address specific pain points
├── Team suggests automations
└── Refine existing

Ongoing:
├── Review in retros
├── Add as processes mature
├── Remove unused
└── Iterate

GOOD CANDIDATES:
─────────────────────────────────────
Automate if:
├── Happens every time (rule-based)
├── Currently manual and tedious
├── Forgetting causes problems
├── Consistent behavior desired
└── Can be described as "when X, do Y"

Don't automate if:
├── Requires judgment
├── Exception-heavy
├── Complex conditions
├── Rarely happens
└── Team pushback

TESTING AUTOMATIONS:
─────────────────────────────────────
Before enabling:
├── Create test task
├── Trigger automation
├── Verify action happened
├── Check edge cases
├── Roll out to team
└── Monitor for issues

Maintenance

AUTOMATION MAINTENANCE
══════════════════════

REGULAR REVIEW:
─────────────────────────────────────
Monthly or quarterly:
├── Are automations still useful?
├── Any false triggers?
├── Missing automations needed?
├── Team feedback?
└── Adjust or remove

AUDIT:
─────────────────────────────────────
List all automations:
├── Document purpose
├── Note last trigger
├── Identify owners
├── Remove orphaned
└── Clean up cruft

AVOID AUTOMATION DEBT:
─────────────────────────────────────
Signs of problems:
├── No one knows why it exists
├── Triggers unexpectedly
├── Conflicts with other automations
├── Blocks legitimate actions
└── Team works around it

Fix: Review, simplify, or remove.

GitScrum Setup

Creating Automations

GITSCRUM AUTOMATION SETUP
═════════════════════════

NAVIGATION:
─────────────────────────────────────
Project → Settings → Automations

LIST VIEW:
├── All project automations
├── Enable/disable toggle
├── Edit/delete
├── View trigger history
└── Create new

CREATING:
─────────────────────────────────────
1. Click "Create Automation"
2. Select trigger type
3. Configure trigger details
4. Add conditions (optional)
5. Select actions
6. Test with sample
7. Enable

TEMPLATES:
─────────────────────────────────────
Pre-built automations:
├── Notify on blocked
├── Auto-assign on status
├── Due date reminders
├── Stale task alerts
├── PR merge → Done
└── Choose and customize

HISTORY:
─────────────────────────────────────
View automation runs:
├── When triggered
├── What task
├── What action taken
├── Success/failure
└── Debug issues

Best Practices

For Automation

  1. Start simple — One or two automations first
  2. Solve real problems — Automate actual pain points
  3. Test before enabling — Verify with test tasks
  4. Document purpose — Future-you will forget
  5. Review regularly — Remove unused, add needed

Anti-Patterns

AUTOMATION MISTAKES:
✗ Automate everything immediately
✗ Complex chains that break
✗ No one knows why it exists
✗ Conflicting automations
✗ Over-notification fatigue
✗ Never reviewing/cleaning up
✗ Replacing necessary human judgment
✗ Automating bad processes