README: more skyflake

This commit is contained in:
Astro 2022-12-03 04:10:31 +01:00
parent 70377149b2
commit 5d7005342e
1 changed files with 17 additions and 7 deletions

View File

@ -148,8 +148,8 @@ Infrastructure to run NixOS MicroVMs on a cluster. Our setup unifies
networking with one bridge per VLAN. Persistent storage is replicated
with Glusterfs.
Recognize MicroVMs for Skyflake by modules containing
`self.nixosModules.cluster-options`.
Recognize nixosConfiguration for our Skyflake deployment by the
`self.nixosModules.cluster-options` module being included.
## User interface
@ -161,19 +161,29 @@ MicroVMs without name clashes.
### Deploying
Push our repo to any machine in the cluster, preferably to Hydra
because it just builds stuff and probably has most packages already in
store.
**git push** this repo to any machine in the cluster, preferably to
Hydra because there building won't disturb any services.
You don't deploy all MicroVMs at once. Instead, Skyflake allows you to
select NixOS systems by the branches you push to.
select NixOS systems by the branches you push to. **You must commit
before you push!**
**Example:** deploy hosts `mucbot` and `sdrweb`
**Example:** deploy nixosConfigurations `mucbot` and `sdrweb` (`HEAD` is your
current commit)
```bash
git push c3d2@hydra.serv.zentralwerk.org:config HEAD:mucbot HEAD:sdrweb
```
This will:
1. Build the configuration on Hydra, refusing the branch update on
broken builds (through a git hook)
2. Copy the MicroVM package and its dependencies to the binary cache
that is accessible to all nodes with Glusterfs
3. Submit one job per MicroVM into the Nomad cluster
*Deleting* a nixosConfiguration's branch will **stop** the MicroVM in Nomad.
### Updating
**TODO:** how would you like it?