diff options
author | lassulus <lassulus@lassul.us> | 2020-05-12 14:31:39 +0200 |
---|---|---|
committer | Lassulus <github@lassul.us> | 2020-05-12 19:19:00 +0200 |
commit | be3fa4608b23b1e24f838903d6f7be932b299776 (patch) | |
tree | be4893070633d0b8afc317a966ba86a20a0b5931 | |
parent | 476fb97dc91032dcef7e812a7473ea7df90ae537 (diff) |
README: document writeTest & writeCommand
-rw-r--r-- | README.md | 60 |
1 files changed, 58 insertions, 2 deletions
@@ -52,11 +52,13 @@ in ``` and run `$(nix-build --no-out-link krops.nix)` to deploy the target machine. +krops exports some funtions under `krops.` namely: -Under the hood, this will make the sources available on the target machine +## writeDeploy + +This will make the sources available on the target machine below `/var/src`, and execute `nixos-rebuild switch -I /var/src`. -## Deployment Attributes ### `target` @@ -130,6 +132,60 @@ in a dedicated `nix build` step. Create the sentinel file (`/var/src/.populate`) before syncing the new source. +## writeTest + +Very similiar to writeDeploy, but just builds the system on the target without +activating it. + +This basically makes the sources available on the target machine +below `/var/src`, and executes `NIX_PATH=/var/src nix-build -A system '<nixpkgs/nixos>'`. + +### `target` + +[see `writeDeploy`](#writeDeploy) + +### `backup` (optional, defaults to false) + +[see `writeDeploy`](#writeDeploy) + +### `force` (optional, defaults to false) + +[see `writeDeploy`](#writeDeploy) + +## writeCommand + +This can be used to run other commands than `nixos-rebuild` or pre/post build hooks. + +### `command` + +A function which takes the targetPath as an attribute. +Example to activate/deactivate a swapfile before/after build: + +```nix +pkgs.krops.writeCommand "deploy-with-swap" { + source = source; + target = "root@YOUR_IP_ADDRESS_OR_HOST_NAME_HERE"; + command = targetPath: '' + swapon /var/swapfile + nixos-rebuild -I ${targetPath} switch + swapoff /var/swapfile + ''; +} +``` + +### `target` + +[see `writeDeploy`](#writeDeploy) + +### `backup` (optional, defaults to false) + +[see `writeDeploy`](#writeDeploy) + +### `force` (optional, defaults to false) + +[see `writeDeploy`](#writeDeploy) + + ## Source Types ### `derivation` |