Yesterday, Fedora Infrastructure went into “freeze”. This happens at the same time in the Fedora release cycle as the development freezes.

First, what is a ‘freeze’? We mark all our hosts (with ansible variables) as either freezing or non freezing. Hosts are assumed to freeze unless they specifically are marked non freezing. If a host is non freezing, there’s no change for it. We could update it’s configuration in puppet or ansible, reinstall it, apply updates, reboot it, whatever we normally would like to do with it. However, if the host is frozen, we have to follow a new process to make any changes on it: A patch or description of the change has to be mailed to the fedora infrastructure list and get two people to approve it that are in the sysadmin-main or releng groups.

Why do we do this? It’s to make sure that we don’t make any changes that could possibly impact the upcoming immanent release. For example, if we updated a compose machine and caused it to no longer be able to compose release candidates, the release might be delayed. Or we changed some configuration on the download servers that broke people’s ability to download and sync new releases or test composes. We want to make sure everything is very stable to build, compose, test and distribute the upcoming release.

Freezes have some other advantages as well, at least for me. They allow us to work on things we sometimes don’t have time for, like documentation, or testing new versions of things, or investigating how better to setup existing things, or staging setup, or logs that we don’t often get to read, the list goes on.