Releng 101

What is this?

  • a primer for understanding the Mozilla Release Engineering system. It strips down our infrastructure into bare essentials
  • a series of ‘walk-throughs’ to help connect our concepts, technologies, environments, and src code
  • provides stripped down snippets that represent real source from our repos.

What this is not

  • documentation. We are moving with a strong emphasize to documenting our logic in the src itself. These are tutorials that can not be expressed in the code
  • explanation of technologies we use. Each walk-through will explain how we use technologies but will point to Software for overviews
  • an in depth coverage of all our special edge cases, variants, conditions, and the like.

I hope this provides

  1. a life jacket for Mozilla Releng contributors and new-hires
  2. a bridge between the abstract concepts and the physical code
  3. confidence for exploring every dark corner of our releng universe

Releng in a Nutshell

To get the ball rolling, below are a collection of materials that will help provide a Releng Overview

The Walk-through series at a glance

  1. From a change on a repo to builds being triggered - a tour through Buildbot (latest update if your not reading this online.)

Todo

Write the rest of these.

  1. Building Firefox in automation - harnessing Mozharness

  2. Setting up and configuring our machines - becoming the master of Puppet

  3. Monitoring and nagging when things go wrong - keeping an eye on our machines with BuildAPI, SlaveAPI, Slave Health, and Nagios

  4. Integrating the Cloud - a look at our Cloud Tools

  5. Release Process - explains why we hold the title of ‘Release Engineers’

  6. Handling application updates - Balrog to the rescue

  7. Serving your own machines - loaning and allocating our machines through Selve-serve

  8. Syncing with HG and Git - understanding vcs-sync

  9. Where to go from here - tips on exploring our infrastructure: wikis, bugzilla, mxr, emails, irc, etc

  10. A look into the future - what’s up and coming: taskcluster, relengAPI, etc

    Template for new pages:

    • Software:
    • Repos:
    • Purpose of walk-through: