Chris@104: #!/bin/bash Chris@104: Chris@104: verbose=false Chris@104: if [ "$1" = "-v" ]; then Chris@104: verbose=true Chris@104: fi Chris@104: Chris@104: set -eu Chris@104: Chris@104: # Run this from the top-level vamp-build-and-test directory Chris@104: Chris@104: cat METADATA/repos.txt | grep -v '^#' | awk -F= '{ print $1 }' | Chris@104: while read name; do Chris@112: ( if ! cd "$name" 2>/dev/null; then Chris@112: echo "$name: missing" Chris@112: elif [ -d .hg ]; then Chris@104: nchanged=$(hg st -dram | wc -l | awk '{ print $1; }') Chris@104: phase=$(hg phase . | awk '{ print $2; }') Chris@104: if [ "$nchanged" != "0" ]; then Chris@104: if [ "$phase" != "public" ]; then Chris@104: echo "$name: uncommitted, unpushed" Chris@104: else Chris@104: echo "$name: uncommitted" Chris@104: fi Chris@104: elif [ "$phase" != "public" ]; then Chris@104: echo "$name: unpushed" Chris@104: elif [ "$verbose" = "true" ]; then Chris@104: echo "$name: ok" Chris@104: fi Chris@104: elif [ -d .git ]; then Chris@104: changes=$(git diff --numstat) Chris@104: if [ "$changes" != "" ]; then Chris@104: echo "$name: changed" Chris@104: elif [ "$verbose" = "true" ]; then Chris@104: echo "$name: ok" Chris@104: fi Chris@104: fi Chris@104: ) Chris@104: done