targets+=(x3wg.b8.nz)
fi
fi
- for h in frodo kd; do
+ # temporarily disabled while doing recovery
+# for h in frodo kd; do
+ for h in kd; do
if [[ $HOSTNAME == "$h" ]]; then
continue
fi
if [[ $source ]]; then
m mount-latest-subvol "${subvols[@]}"
else
- m /a/exe/mount-latest-remote ${targets[@]}
+ for tg in ${targets[@]}; do
+ m /a/exe/mount-latest-remote "$tg" "${subvols[@]}" || ret=$?
+ done
fi
if [[ $ret == 0 ]]; then
# See the License for the specific language governing permissions and
# limitations under the License.
+
+# usage: HOST [mount-latest-subvol args]
+
source /usr/local/lib/err
script_dir=$(dirname $(readlink -f "$BASH_SOURCE"))
if (( ! $# )); then
- echo "mount-latest-remote: error: expected 1 or more host arguments"
+ echo "mount-latest-remote: error: a host argument"
exit 1
fi
+tg="$1"
+shift
+
$script_dir/install-my-scripts
cd /usr/local
ecode=0
-failed_hosts=()
# exit code run
er() {
"$@" || ret=$?
if (( ret )); then
echo "$0: failed command: $*"
- failed_hosts+=($tg)
fi
if (( ret > ecode )); then
ecode=$ret
fi
}
-for tg; do
- rsynctg=$tg
- if [[ $tg == *:* ]]; then
- rsynctg="[$tg]"
- fi
- # R = relative, t = times, O = omit-dir-times, p = perms
- er rsync -RtOp bin/{mount-latest-subvol,check-subvol-stale} lib/err "root@$rsynctg:/usr/local" || continue
- # note: this can hang if we have an old nfs mount.
- er ssh root@$tg timeout -s 9 600 /usr/local/bin/mount-latest-subvol
-done
-
-if (( $# == ${#failed_hosts[@]} )); then
- echo "$0: error: all hosts failed: $*" >&2
-elif (( ${#failed_hosts[@]} )); then
- echo "$0: error: some hosts failed: ${failed_hosts[@]}" >&2
+rsynctg=$tg
+if [[ $tg == *:* ]]; then
+ rsynctg="[$tg]"
fi
+# R = relative, t = times, O = omit-dir-times, p = perms
+er rsync -RtOp bin/{mount-latest-subvol,check-subvol-stale} lib/err "root@$rsynctg:/usr/local" || continue
+# note: this can hang if we have an old nfs mount.
+er ssh root@$tg timeout -s 9 600 /usr/local/bin/mount-latest-subvol "$@"
+
exit $ecode