Google has moved to rolling releases for their internal Linux distribution. What they describe mirrors my own experience. Rolling, incremental updates (Arch Linux) are much less painful overall than large updates every couple years. With rolling updates, the focus changes to more automated, continuous testing – because it has to. Would be really interesting to hear how the Arch team does testing – they are obviously doing something right as I’ve never had a broken update where the machine was unusable and very rarely have a I had to roll a package back.
They also build their packages from source. Again, this is a good policy as it helps ensure you have a process where you can build/fix anything if needed.
Today, the life of a gLinux team member looks very different. We have reduced the amount of engineering time and energy required for releases to one on-duty release engineer that rotates among team members. We no longer have a big push to upgrade our entire fleet. No more need for multi stage alpha, betas and GAs for new LTS releases while simultaneously chasing down older machines that still were running Ubuntu Precise or Lucid.
Our journey has ultimately reinforced our belief that incremental changes are better manageable than big bang releases.
If you are able to control the influx of new work and keep that predictable, we have made the experience that our engineers stay happier and are less stressed out.