SWAT deploys are deployments that happen during a SWAT deploy window (naturally) that are done by a member(s) of the SWAT deploy team (see below).
The purpose is to provide a known window for people to get bug fixes deployed in a timely manner without having to beg people to do the deployment for them; the SWAT team is there to do the deployment part.
- There will be at least one SWAT deploy team member available and active during the window.
Allowed types of patches Things not fitting these criteria should use the standard deploy window process
- No new features/extensions
- Fixes of regressions
- Backports from things committed in master (and tested to work/fix the regression on Beta Cluster)
- Simple config changes (that don't turn on any new features)
- Nothing that needs prior public communication
- The SWAT team must be comfortable with the patch going out and can veto any proposed patch
- All (public) communication MUST happen in #wikimedia-operations on Freenode
- Prepare patches in gerrit against the current live (usually wmfNN) branches (or a subset if the bug is limited)
- Depending on the patch, positive reviews beforehand are necessary (the SWAT team are not responsible for code review)
- Add the gerrit URL and your IRC name to Deployments calendar page in the correct SWAT deploy slot, eg:
Doing the deploy
- The SWAT team coordinates the merging and deploying of the patches, order is decided by them
- The SWAT team may ask questions regarding the patches to understand the implications and assess risk. The relevant developers should ideally be on IRC in the hour prior to the SWAT window proper.
- The SWAT team will ping the relevant developers at the start of the window and when theirs is up; they MUST be available.
- The relevant developers should have their test cases ready to run as soon as their patches are deployed.
08:00 SF window
- Brad Jorsch
- Nik Everett
- Chad Horohoe
- Mark Holmquist
- Alex Monk (except Thursdays)
- Tyler Cipriani
16:00 SF window
- Roan Kattouw
- Chad Horohoe
- Alex Monk
SWAT, or the Setting Wikis Ablaze Team, is responsible for breaking the site on a regular basis so we all don't get too used to a stable platform upon which to develop. Compare chaos monkey or unit testing (which are similar to each other) - this is less automatic but much more effective at breaking things.