| 1 | #!/bin/bash |
| 2 | # |
| 3 | # An example hook script to prepare a packed repository for use over |
| 4 | # dumb transports. |
| 5 | # |
| 6 | # To enable this hook, rename this file to "post-update". |
| 7 | |
| 8 | local_checkout=/home/git/local/checkouts/fsf-giving-guide |
| 9 | |
| 10 | case $1 in |
| 11 | refs/heads/master) |
| 12 | ;; |
| 13 | *) |
| 14 | echo |
| 15 | echo "use the 'master' branch to update the gift giving site." |
| 16 | echo |
| 17 | exit 0 |
| 18 | ;; |
| 19 | esac |
| 20 | |
| 21 | unset GIT_DIR |
| 22 | echo Deploying to fsf.org... |
| 23 | |
| 24 | cd $local_checkout |
| 25 | echo Updating local checkout... |
| 26 | git pull |
| 27 | git reset --hard $1 |
| 28 | echo Copying files... |
| 29 | # copy the v8 etc dirs. |
| 30 | # note, the -f arg is a trick documented in the rsync man page |
| 31 | rsync -vazm --delete --include='/v[[:digit:]]/***' --include='/v[[:digit:]][[:digit:]]/***' \ |
| 32 | -f 'hide,! */' /home/git/local/checkouts/fsf-giving-guide/ vcshookuser@fsf.org:/var/www/fsf-giving-guide |
| 33 | echo Fixing permissions on webserver... |
| 34 | ssh vcshookuser@fsf.org chmod -R ug=rwX,o=rX /var/www/fsf-giving-guide |
| 35 | exec git update-server-info |