Automation · Workflows

Workflow Versioning with Git

A workflow edited live in a web UI has no history, no review, and no rollback. Putting its definition in git turns automation into software you can change safely.

John Kihiu12 min read

Most automation platforms let you edit workflows directly in a browser, and that convenience is a trap. A change made live has no diff, no reviewer, and no way back except remembering what it used to be. When that workflow runs your billing or provisioning, "someone tweaked it and now it's broken and we don't know what changed" is a genuinely bad afternoon. Git fixes all of that.

Workflow as code

Most platforms can export a workflow as JSON or YAML — the definition of triggers, steps, and connections. Commit that file to a repository and it becomes the source of truth. Now every change is a diff, every diff has an author and a timestamp, and the current state of production is a specific commit rather than whatever the last person clicked.

Review before it ships

With definitions in git, changes go through pull requests. A teammate can see exactly what changed — a new step, a modified condition, a different mapping — and catch the problem before it runs against real data. This is the same review discipline you apply to application code, and workflows that touch money or customer state deserve it just as much.

Bash · promote a reviewed workflow
# Export from the platform, commit, review, then promote
workflow export order-sync > workflows/order-sync.json
git add workflows/order-sync.json && git commit -m "order-sync: gate enrichment on region"
# after PR review + merge, CI promotes to staging, then production
workflow import --env staging    workflows/order-sync.json
workflow import --env production workflows/order-sync.json

Promote across environments

Version control enables a real pipeline: test a workflow in staging, and only after it passes, promote the exact same definition to production. No more editing directly in production and hoping. The definition that was reviewed and tested is byte-for-byte the one that ships, which removes the "works in staging, different in prod" class of surprise.

Rollback becomes git revert

The biggest payoff arrives during an incident. When a workflow change breaks production, rollback is checking out the last known-good commit and re-importing it — seconds, not a scramble to reconstruct the previous version from memory. A workflow you cannot roll back is one you are afraid to change; git makes changing it safe.

Version-controlling workflows in git buys you history, review, environment promotion, and instant rollback — the same safety net that makes changing application code routine. Export the definition, review every change as a pull request, and let the repository, not a browser tab, be the truth of what your automation does.

John Kihiu
Acumatica ERP Developer · Laravel Engineer

Independent software engineer in Nairobi specialising in Acumatica customisations, Laravel backends, and tax fiscalisation integrations across East and Southern Africa.