deployment

  • Compose v1 reaches end of life, and the alias that hid it

    A shell alias mapping docker-compose to docker compose, added in 2021, which meant nobody noticed the old binary was still installed and still being used by two scripts.…

  • The alert that woke the wrong person for a year

    A routing rule sending database alerts to a person who left the database team in 2023. A personal integration key survives a role change invisibly, because nothing about…

  • The service we merged back

    Two services extracted in 2021, a team of four maintaining four pipelines, and forty-one of forty-four releases touching both.

  • A shadowing month with the expert silent

    A month where the person who knows everything sat next to the person who does not and was not allowed to speak. The silence is the mechanism —…

  • Eight failure modes covering forty-one incidents

    Three years of incident notes, read as an inventory rather than as history. Eight documents cover eighty-seven per cent of what has ever gone wrong, which is a…

  • Artifact actions v4, and the append that no longer works

    A workflow uploading to the same artifact name from four matrix jobs, which had merged them and now fails on the second. Artifacts are immutable in v4, which…

  • Four credentials that existed on one laptop

    An inventory of what a second person would need, produced by asking one person to stop using their own machine for a day. The DNS account is the…

  • terraform test, and the module that had no assertions

    A testing framework in 1.6, usable in 1.7, and a module that had been verified by applying it and looking. command = plan asserts against the plan without…

  • Reproducing a build from six months ago

    A security question about a release from July, and no way to rebuild it. The same commit produces a different image, and neither of them is wrong.

  • Symfony 6.4 LTS, and choosing not to move to 7

    6.4 and 7.0 shipped in the same week, which is the release model working as designed and is still a decision. Taking the long-term-support release and stopping is…