diff --git a/README.md b/README.md index 7d4d623d..26aeaf38 100644 --- a/README.md +++ b/README.md @@ -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?