d2/ci/release/aws/ssh.sh

44 lines
1,016 B
Bash
Raw Permalink Normal View History

2022-11-16 16:43:57 +00:00
#!/bin/sh
set -eu
2022-12-15 15:14:06 +00:00
. "$(dirname "$0")/../../../ci/sub/lib.sh"
cd -- "$(dirname "$0")/../../.."
2022-11-16 16:43:57 +00:00
help() {
cat <<EOF
usage: $0 [--dry-run] [--run=regex] ...
Run a command on every builder instance.
EOF
}
main() {
2022-11-16 18:48:39 +00:00
while flag_parse "$@"; do
2022-11-16 16:43:57 +00:00
case "$FLAG" in
h|help)
help
return 0
;;
dry-run)
flag_noarg && shift "$FLAGSHIFT"
DRY_RUN=1
;;
run)
flag_reqarg && shift "$FLAGSHIFT"
JOBFILTER="$FLAGARG"
;;
*)
flag_errusage "unrecognized flag $FLAGRAW"
;;
esac
done
2022-11-16 18:48:39 +00:00
shift "$FLAGSHIFT"
2022-11-16 16:43:57 +00:00
2023-02-02 21:44:50 +00:00
REMOTE_HOST=$CI_D2_LINUX_AMD64 && runjob linux-amd64 ssh "$REMOTE_HOST" "$@"
REMOTE_HOST=$CI_D2_LINUX_ARM64 && runjob linux-arm64 ssh "$REMOTE_HOST" "$@"
REMOTE_HOST=$CI_D2_MACOS_AMD64 && runjob macos-amd64 ssh "$REMOTE_HOST" "$@"
REMOTE_HOST=$CI_D2_MACOS_ARM64 && runjob macos-arm64 ssh "$REMOTE_HOST" "$@"
REMOTE_HOST=$CI_D2_WINDOWS_AMD64 && runjob windows-amd64 ssh "$REMOTE_HOST" "$@"
2022-11-16 16:43:57 +00:00
}
main "$@"