forked from tim/k3s-ansible
10bde4eff0
- reuse validated runner-owned Vagrant linked-clone masters\n- create the default guests in bounded two-machine batches\n- capture create timing and runner utilization diagnostics
28 lines
778 B
Bash
Executable File
28 lines
778 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -Eeuo pipefail
|
|
|
|
printf '%s\n' "$*" >> "$MOCK_VAGRANT_LOG"
|
|
case "${1:-}" in
|
|
up)
|
|
counter_file="$MOCK_VBOX_STATE/counter"
|
|
counter=0
|
|
[[ ! -r "$counter_file" ]] || counter="$(cat "$counter_file")"
|
|
counter=$((counter + 1))
|
|
printf '%s\n' "$counter" > "$counter_file"
|
|
uuid="00000000-0000-4000-8000-$(printf '%012d' "$counter")"
|
|
vm_dir="$MOCK_VBOX_ROOT/master-$counter"
|
|
mkdir -p -- "$vm_dir"
|
|
: > "$vm_dir/master.vbox"
|
|
: > "$vm_dir/master.vdi"
|
|
printf '%s\n' \
|
|
'VMState="poweroff"' \
|
|
'groups="/"' \
|
|
"CfgFile=\"$vm_dir/master.vbox\"" \
|
|
"SATA-0-0=\"$vm_dir/master.vdi\"" > "$MOCK_VBOX_STATE/vm-$uuid"
|
|
printf '%s\n' "$uuid" > "$MOCK_BOX_DIR/master_id"
|
|
;;
|
|
destroy) ;;
|
|
*) exit 2 ;;
|
|
esac
|