Fedora Websites Release SOP

From FedoraProject

Revision as of 15:12, 17 November 2009 by Ricky (Talk | contribs)

Jump to: navigation, search
Artwork DesignService fedorawebsitesbanner 3.png


Contents

Preparing the website for a release

Update gpg key

As the release approaches, watch the fedora-release package for a new key to be added. Use the update-gpg-keys script in the fedora-web git repository to add it to static/. Manually add it to /keys and /verify.

Branch master for stable release in fedora-web git repository

Note.png
Perhaps this should be done right after release?
git branch f12 master && git push origin f12

Unfreeze website

Comment out the git checkout line in modules/fedora-web/files/syncStatic.sh on puppet1.

Prepare puppet commits

Prior to release day, prepare puppet commits to move the fedora-web branch to the release (alpha, beta, final, whatever) and, edit redirects.conf (in modules/fedora-web/files on puppet1) to do the right thing with /get-prerelease requests.

Fire in the hole

On release day, wait for rel-eng to say go, then push the puppet changes (e.g.: cd ~/puppet && git push). Then, on puppet1 run:

# Ensure you have the puppet repo checked out to ~/puppet and up to date
cd ~/puppet && make HOSTS="puppet1 proxy1 proxy2 proxy3 proxy4 proxy5" push

# Once /usr/local/bin/syncStatic is updated with your changes, run
sudo /usr/local/bin/syncStatic

# To sync the changes out, you can use func if you have sudo on puppet1.
# Otherwise, SSH to the proxies and call the below command.
sudo func proxy\* call command run "/usr/local/bin/syncFiles.sh fedoraproject.org /srv/web/fedoraproject.org/"

to push the updated website live.

Fedora 12 Notes

(Still needs to be wikified)

The times below are based on the timing of the website build and sync cronjobs.
It'd be a good idea to double check those in advance.

Unfreeze website (modules/fedora-web/files/syncStatic.sh), push after 9:05 AM EDT.

Run sudo /usr/local/bin/syncStatic on puppet1 after 9:45 AM EDT, make sure this
succeeds by checking /var/lib/puppet/application/fedoraproject.org.

Release:

Push commit to redirect get-prerelease to get-fedora.

sudo func proxy\* call command run "/usr/local/bin/syncFiles.sh fedoraproject.org /srv/web/fedoraproject.org/"

Manually run

sudo /usr/local/bin/syncFiles.sh fedoraproject.org /srv/web/fedoraproject.org/

on any proxy server where the func call did not succeed.

If necessary, clear proxy caches using

rm -rf /srv/cache/mod_cache/*

After the site is out, do link checking and push any last-minute fixes/changes
by committing to the git repo, running syncStatic, and syncing to the proxies
as above.