bugzilla/scripts/provision.sh
2026-03-14 20:13:25 +01:00

29 lines
820 B
Bash
Executable file

#!/bin/sh
# Full first-time provisioning: set up networking, create VMs, run the
# complete playbook, then snapshot as "provisioned" for fast iteration.
set -eu
. "$(dirname "$0")/env.sh"
echo "==> Setting up bridge network"
mkdir -p .local/qemu
sudo --preserve-env=QEMU_VM "$SCRIPT_DIR/vm/setup-network.sh"
echo "==> Creating VMs"
"$SCRIPT_DIR/vm/create.sh"
echo "==> Starting VMs"
"$SCRIPT_DIR/vm/start.sh"
echo "==> Running full playbook"
ansible-playbook -i "$INVENTORY" "$PLAYBOOK" --vault-password-file "$VAULT_PASS"
echo "==> Setting up local WireGuard"
"$SCRIPT_DIR/local/setup-wireguard.sh"
echo "==> Setting up local /etc/hosts"
"$SCRIPT_DIR/local/setup-hosts.sh"
echo "==> Snapshotting 'provisioned'"
"$SCRIPT_DIR/vm/snapshot.sh" provisioned
echo "==> Done. Iterate with: scripts/deploy.sh <service>"