feat(storage): erase rootfs on boot

We want impermanence so that it's easier to keep track of what state we
have on our system, and what we should be rigrously backing up

This is the first step towards setting that up

Change-Id: I399a7035237f02172180be559c9340faba40af47
Reviewed-on: https://git.clicks.codes/c/Infra/NixFiles/+/722
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: Samuel Shuert <coded@clicks.codes>
2 files changed
tree: 3000ad2b372e57ad4c682545a2d753682bdcbbce
  1. .reuse/
  2. .vscode/
  3. lib/
  4. LICENSES/
  5. modules/
  6. shells/
  7. systems/
  8. .editorconfig
  9. .envrc
  10. .gitignore
  11. .gitreview
  12. .gitreview.license
  13. CONTRIBUTORS.md
  14. flake.lock
  15. flake.lock.license
  16. flake.nix
  17. README.md
README.md

Clicks - Infrastructure

This repository contains system configuration for Clicks's infrastructure.

Config

Config is written using Snowfall lib. It keeps us organized and has some nice features like namespaces.

Systems

a stands for "area", d stands for "device". So for example, a1d1 is device 1 in area 1. Areas are generally managed by one member of Clicks, who has full access to all of the servers in that area. If you require help for a specific area you can email admin@clicks.codes and in the subject line include the area you want help for.

SystemDescriptionAddress
a1d1Primary Hostd1.a1.clicks.domains
a1d2Build Serverd2.a1.clicks.domains

Deploying

Deploys are done with deploy-rs, you'll need to be able to ssh into a machine with its hostname (either by a nifty .ssh/config rule or tailscale).

Once you've done that, you'll be able to deploy with

$ deploy .#MACHINE_NAME