Skip to content

How to Test a Scenario

Testing verifies that a scenario actually works — not just that it was set up correctly.

When to test

  • After initial setup
  • After any node is replaced or rebuilt
  • After a software update on any node
  • Periodically (recommended: once per quarter)

General test procedure

1. Check sync state

On the source, open Syncthing GUI and confirm:

  • All folders show Up to Date
  • No errors or conflicts

2. Simulate node loss

Pick one node to "lose" (do not actually delete data — just stop Syncthing or disconnect):

  • Lose the relay: disconnect relay from network or stop its Docker container
  • Lose the secondary: stop Syncthing on secondary or disconnect it

Verify the remaining nodes continue to function normally.

3. Test failover (secondary)

On the secondary, run st-failover.sh:

# dry run first
bash st-failover.sh --dry-run

# if output looks correct:
bash st-failover.sh

Verify:

  • Secondary folders change from Receive Only to normal mode
  • A test file created on secondary syncs to the relay

4. Test restore from relay

On a clean machine with Syncthing installed:

  1. Add the relay as a device
  2. Request a folder that was shared with the relay
  3. Provide the encryption password when prompted
  4. Verify the folder contents match the source

5. Test full reprovisioning

Follow reproduce-host-id_tf5-7hp.md for the source node. Verify all folders resync to the rebuilt source.

Recording results

After each test, update the scenario's ## Current state section with:

  • Date of test
  • Which steps were run
  • Any issues found and how they were resolved

← How to Reproduce a Host · Timeline →

tf5-7hq · v2026-05-16 · Export created: 2026-06-11 15:09 UTC