From Fedora Project Wiki

(Initial draft of website release SOP)
 
(Minor updates on release process.)
Line 16: Line 16:
<pre>git branch f12 master && git push origin f12</pre>
<pre>git branch f12 master && git push origin f12</pre>


=== Freeze website ===
=== Unfreeze website ===


Edit the branch to checkout in
Comment out the git checkout line in
<code>modules/fedora-web/files/syncStatic.sh</code> on <code>puppet1</code>.
<code>modules/fedora-web/files/syncStatic.sh</code> on <code>puppet1</code>.


Line 36: Line 36:


<pre>
<pre>
sudo /usr/local/bin/syncPuppetMaster.sh
# 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
sudo /usr/local/bin/syncStatic


# Ensure you have the puppet repo checked out to ~/puppet and up to date
# To sync the changes out, you can use func if you have sudo on puppet1.
cd ~/puppet && make HOSTS="proxy1 proxy2 proxy3 proxy4 proxy5" push
# 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/"
sudo func proxy\* call command run "/usr/local/bin/syncFiles.sh fedoraproject.org /srv/web/fedoraproject.org/"
</pre>
</pre>

Revision as of 21:02, 5 November 2009

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

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.