-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathlockfile+node_modules.sh
More file actions
43 lines (39 loc) · 2.56 KB
/
Copy pathlockfile+node_modules.sh
File metadata and controls
43 lines (39 loc) · 2.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# Exit on error
set -Eeuxo pipefail
# Load common variables
source "$1/variations/common.sh"
# Prepare command base for each run
BENCH_PREPARE_BASE="sleep 1; bash $BENCH_SCRIPTS/clean-helpers.sh clean_all_cache clean_package_manager_files"
# Run the benchmark suite
# When running a cache benchmark, we want to clean up only the node_modules
# directory and the lockfiles between each run.
hyperfine --ignore-failure \
--time-unit=millisecond \
--export-json="$BENCH_OUTPUT_FOLDER/benchmarks.json" \
--warmup="$BENCH_WARMUP" \
--runs="$BENCH_RUNS" \
--setup="bash $BENCH_SCRIPTS/clean-helpers.sh clean_all" \
--conclude="sleep 1; bash $BENCH_SCRIPTS/package-count.sh $BENCH_OUTPUT_FOLDER; bash $BENCH_SCRIPTS/clean-helpers.sh clean_all_cache clean_package_manager_files clean_package_manager_field clean_build_files" \
--cleanup="bash $BENCH_SCRIPTS/clean-helpers.sh clean_all" \
${BENCH_INCLUDE_NPM:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_NPM")"} \
${BENCH_INCLUDE_NPM:+--command-name="npm" "$BENCH_COMMAND_NPM"} \
${BENCH_INCLUDE_YARN:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_YARN")"} \
${BENCH_INCLUDE_YARN:+--command-name="yarn" "$BENCH_COMMAND_YARN"} \
${BENCH_INCLUDE_BERRY:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_BERRY")"} \
${BENCH_INCLUDE_BERRY:+--command-name="berry" "$BENCH_COMMAND_BERRY"} \
${BENCH_INCLUDE_ZPM:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_ZPM")"} \
${BENCH_INCLUDE_ZPM:+--command-name="zpm" "$BENCH_COMMAND_ZPM"} \
${BENCH_INCLUDE_PNPM:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_PNPM")"} \
${BENCH_INCLUDE_PNPM:+--command-name="pnpm" "$BENCH_COMMAND_PNPM"} \
${BENCH_INCLUDE_PACQUET:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_PACQUET")"} \
${BENCH_INCLUDE_PACQUET:+--command-name="pacquet" "$BENCH_COMMAND_PACQUET"} \
${BENCH_INCLUDE_VLT:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_VLT")"} \
${BENCH_INCLUDE_VLT:+--command-name="vlt" "$BENCH_COMMAND_VLT"} \
${BENCH_INCLUDE_BUN:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_BUN")"} \
${BENCH_INCLUDE_BUN:+--command-name="bun" "$BENCH_COMMAND_BUN"} \
${BENCH_INCLUDE_DENO:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_DENO")"} \
${BENCH_INCLUDE_DENO:+--command-name="deno" "$BENCH_COMMAND_DENO"} \
${BENCH_INCLUDE_AUBE:+--prepare="$(append_setup "$BENCH_PREPARE_BASE" "$BENCH_SETUP_AUBE")"} \
${BENCH_INCLUDE_AUBE:+--command-name="aube" "$BENCH_COMMAND_AUBE"}
collect_package_count
collect_process_count