Skip to content

Commit d5f8c81

Browse files
committed
hardfork > build-and-test.sh: unify usage report
1 parent 6108eaf commit d5f8c81

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

scripts/hardfork/build-and-test.sh

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,16 @@ set -eux -o pipefail
1515
PREFORK=""
1616
FORK_METHOD="legacy"
1717

18+
USAGE="Usage: $0 --fork-from <PREFORK> [--fork-method <FORK_METHOD>]"
1819
usage() {
19-
echo "Usage: $0 --fork-from <PREFORK> --fork-method <FORK_METHOD>"
20-
exit 1
20+
if (( $# > 0 )); then
21+
echo "$1" >&2
22+
echo "$USAGE"
23+
exit 1
24+
else
25+
echo "$USAGE"
26+
exit 0
27+
fi
2128
}
2229

2330
# ---- argument parsing --------------------------------------------------------
@@ -26,25 +33,22 @@ while [[ $# -gt 0 ]]; do
2633
--fork-from)
2734
# ensure value exists
2835
if [[ $# -lt 2 ]]; then
29-
echo "Error: $1 requires an argument."
30-
usage
36+
usage "Error: $1 requires an argument."
3137
fi
3238
PREFORK="$2"
3339
shift 2
3440
;;
3541
--fork-method)
3642
# ensure value exists
3743
if [[ $# -lt 2 ]]; then
38-
echo "Error: $1 requires an argument."
39-
usage
44+
usage "Error: $1 requires an argument."
4045
fi
4146
case "$2" in
4247
legacy|advanced-generate-hf-config)
4348
FORK_METHOD="$2"
4449
;;
4550
*)
46-
echo "Error: $1 must be either 'legacy' or 'advanced-generate-hf-config'."
47-
usage
51+
usage "Error: $1 must be either 'legacy' or 'advanced-generate-hf-config'."
4852
;;
4953
esac
5054
shift 2
@@ -53,25 +57,21 @@ while [[ $# -gt 0 ]]; do
5357
usage
5458
;;
5559
--*)
56-
echo "Unknown option: $1"
57-
usage
60+
usage "Unknown option: $1"
5861
;;
5962
*)
6063
# positional arg — store if needed later
61-
echo "Unexpected argument: $1"
62-
usage
64+
usage "Unexpected argument: $1"
6365
;;
6466
esac
6567
done
6668

6769
if [[ -z "$PREFORK" ]]; then
68-
echo "Error: --fork-from must be provided."
69-
usage
70+
usage "Error: --fork-from must be provided."
7071
fi
7172

7273
if [[ "$FORK_METHOD" == "advanced-generate-hf-config" ]]; then
73-
echo "Error: unimplemented fork mode 'advanced-generate-hf-config'"
74-
usage
74+
usage "Error: unimplemented fork mode '$FORK_METHOD'"
7575
fi
7676

7777
NIX_OPTS=( --accept-flake-config --experimental-features 'nix-command flakes' )

0 commit comments

Comments
 (0)