1.3 KiB
1.3 KiB
uptime.link Testing
Whole-system integration scenarios for uptime.link components.
Fast unit tests stay in each component repo. This repo is for stateful cross-component scenarios that verify package boundaries and real interaction flows.
Scenarios
uptimerunner-basic: starts a fake uptime.link runner coordinator plus a target HTTP service, runsuptimerunneronce, verifies the runner fetches assigned checks, executes them from the local machine, and reports results back.uptimerunner-vagrant: starts controller and runner VMs with Vagrant, installsuptimerunneras a systemd service in the runner VM, and verifies that the remote runner executes a runner-local HTTP check and submits the result to the controller VM.
Run
pnpm bootstrap:components
pnpm test
Run the remote-runner VM scenario with:
pnpm scenario:uptimerunner-vagrant
The VM scenario defaults to the libvirt Vagrant provider. Override it with
UPTIMELINK_VAGRANT_PROVIDER=virtualbox if needed.
If the current shell has not picked up newly added libvirt group membership,
run it without restarting the machine using:
sg libvirt -c 'pnpm scenario:uptimerunner-vagrant'
Stop or remove the VMs with pnpm vagrant:halt or pnpm vagrant:destroy.