Skip to content

Asana GitHub SyncRule-based PR automation

Automatically sync GitHub pull requests to Asana tasks using flexible, declarative rules

Quick Example

yaml
name: Sync PR to Asana
on:
  pull_request:
    types: [opened, closed]

jobs:
  sync:
    runs-on: ubuntu-latest
    steps:
      - uses: planningcenter/asana-github-sync@main
        with:
          asana_token: ${{ secrets.ASANA_TOKEN }}
          github_token: ${{ github.token }}
          rules: |
            rules:
              # Update status when PR opens
              - when:
                  event: pull_request
                  action: opened
                then:
                  update_fields:
                    '1234567890': 'In Review'

              # Mark complete when PR merges
              - when:
                  event: pull_request
                  action: closed
                  merged: true
                then:
                  update_fields:
                    '1234567890': 'Shipped'
                  mark_complete: true

What makes this different?

  • Declarative rules instead of imperative scripts
  • Built-in validation to catch configuration errors early
  • Comprehensive templating for dynamic content generation
  • Real-world tested - used in production at Planning Center
  • Replaces multiple tools - consolidates various Asana/GitHub automation approaches

Get Started →

Released under the MIT License.