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
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.