#!/bin/bash
-GIT_REPOS="next next-history.git quilt next-fixes tools etc mmotm"
+GIT_REPOS='next next-history.git quilt next-fixes tools etc mmotm'
-cd ~/kernels/next
+NEXT_DIR="$HOME/kernels/next"
-echo "Updating Linus' tree"
-ssh ozlabs.org "cd kernels/linus.git; git remote update"
+if ! cd "$NEXT_DIR"; then
+ printf '%s: cannot cd to %s\n' "$0" "$NEXT_DIR" 1>&2
+ exit 1
+fi
+
+printf 'Updating Linus'\'' tree\n'
+ssh ozlabs.org 'cd kernels/linus.git; git remote update'
for i in $GIT_REPOS; do
- echo "Pushing $i"
- ( cd $i; git push --prune bilbo )
- [ "${i%.git}" = "$i" ] &&
- ssh ozlabs.org "cd kernels/next/$i; git reset --hard"
+ printf 'Pushing %s\n' "$i"
+ ( cd "$i" && git push --prune bilbo )
+ if [ "${i%.git}" = "$i" ]; then
+ ssh ozlabs.org 'cd kernels/next/'"$i"'; git reset --hard'
+ fi
done
{
done
} | rsync -avHP --open-noatime --include-from - --delete . ozlabs.org:kernels/next/.
-ssh ozlabs.org "touch kernels/NEXT-DONE"
+ssh ozlabs.org 'touch kernels/NEXT-DONE'
# Fix up the git configs so that the next pushes will work
-ssh ozlabs.org 'cd kernels/next; for i in '"$GIT_REPOS"'; do ( cd $i; git config receive.denyCurrentBranch ignore; ); done'
+ssh ozlabs.org '
+cd kernels/next
+for i in '"$GIT_REPOS"'; do
+(
+ cd $i
+ git config receive.denyCurrentBranch ignore
+)
+done'
exit 0