Files
testing/readme.md
T

44 lines
1.3 KiB
Markdown
Raw Normal View History

2026-04-29 19:48:14 +00:00
# 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, runs `uptimerunner` once, verifies the runner fetches
assigned checks, executes them from the local machine, and reports results
back.
2026-04-30 07:13:20 +00:00
- `uptimerunner-vagrant`: starts controller and runner VMs with Vagrant,
installs `uptimerunner` as 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.
2026-04-29 19:48:14 +00:00
## Run
```bash
pnpm bootstrap:components
pnpm test
```
2026-04-30 07:13:20 +00:00
Run the remote-runner VM scenario with:
```bash
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:
```bash
sg libvirt -c 'pnpm scenario:uptimerunner-vagrant'
```
Stop or remove the VMs with `pnpm vagrant:halt` or `pnpm vagrant:destroy`.