Chapter 16: Shipping and running

Now it has to get out, and the way out decides how much risk each change carries.

Deployment

Also called Deploy

Putting a new version where it can run. The aim is to make it automatic, small and boring, so that it can happen often.

A manual step is one that a tired person or an eager agent will skip. So deploying should be a script, the same every time, and what matters most is what stands in front of that script.

Say it to your agent

“Add a deploy job to ci.yml with needs: check, so that it can't start unless check passed. Give it a GitHub environment called production with a required reviewer, and put CLOUDFLARE_API_TOKEN in that environment's secrets. Then tell me every way someone could still deploy around it.”

The workshop

Name a word, or describe what you mean in everyday language.