DEVOPS

Start a Worker canary on merge to main

On a push to the main branch, deploys the built Worker as a new uploaded version and starts it at a small canary percentage.

CategoryDevOps
Enginesim
Difficultyintermediate
Triggerevent
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerGitHub push to mainGitHubGitHub
  • LogicVerify Worker path changed; read SHA
  • ActionUpload version and start canary splitCloudflareCloudflare
  • ActionOpen Linear rollout tracking issueLinearLinear
  • OutputAnnounce canary live in DiscordDiscordDiscord

What it does

Turns a merge into the start of a controlled canary instead of a full deploy. When code lands on main, it tells Cloudflare to upload the new Worker version and route only a small slice of traffic to it, then files a Linear issue that records the version ID, the starting percentage, and a checklist for promotion.

When to use it

Use it as the front door of your Worker delivery pipeline — the step that makes "merged" mean "canarying at 5%" rather than "live for everyone." Pair it with the error-rate or latency gate templates to handle promotion.

How it works

  1. 1A GitHub push-to-main event fires after CI passes.
  2. 2A logic step verifies the push touched the Worker source and extracts the commit SHA.
  3. 3Cloudflare uploads the new version and sets the traffic split to the configured canary start percentage.
  4. 4A Linear issue is created with the version ID, SHA, percentage, and a promotion checklist.
  5. 5A Discord message announces the canary is live and links the Linear issue.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GitHubRepos, issues, pull requests, actions.
  2. 2
    Connect CloudflareWorkers, Pages, R2, KV — the edge stack.
  3. 3
    Connect LinearIssues, projects, cycles, triage.
  4. 4
    Connect DiscordCommunity channels + voice + bots.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.