summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Sima <ben@bsima.me>2019-02-17 14:16:21 -0800
committerBen Sima <ben@bsima.me>2019-02-17 14:16:21 -0800
commite8f2ad8304310f7ddbd79da3a649d4b16e067478 (patch)
tree67681cebb597b5a75003ff263e3d595303f75af4
parent563bf764f0e6705ec0f5b6daf82585b8041e8056 (diff)
Create makefile
More flexible than a script
-rw-r--r--Makefile16
-rw-r--r--README.md11
-rwxr-xr-xdeploy.sh14
3 files changed, 24 insertions, 17 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..7b938e8
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,16 @@
+HOST = root@simatime.com
+OUT = $(shell readlink -n ./result)
+
+result:
+ nix-build --attr system ./nixos.nix
+
+copy: result
+ nix copy --to "ssh://$(USER)@$(HOST)" ./result
+
+switch:
+ ssh $(USER)@$(HOST) sudo "$(OUT)/bin/switch-to-configuration" switch
+
+clean: FORCE
+ rm -f ./result
+
+.PHONY: FORCE
diff --git a/README.md b/README.md
index a093a45..60845a2 100644
--- a/README.md
+++ b/README.md
@@ -2,11 +2,16 @@
To build the production server config locally:
- nix-build --attr system ./nixos.nix
+ make clean result
-To deploy (will ask for ssh passphrase 2x):
+To push the built closure and switch to the new configuration (will ask for ssh
+passphrase 2x):
- ./deploy.sh
+ make copy switch
+
+A quick deploy can be just:
+
+ make clean copy switch
When that damn bug gets fixed, we could just do:
diff --git a/deploy.sh b/deploy.sh
deleted file mode 100755
index 096b205..0000000
--- a/deploy.sh
+++ /dev/null
@@ -1,14 +0,0 @@
-#!/usr/bin/env bash
-
-echo ":: Cleaning"
-rm -f ./result
-
-echo ":: Building"
-nix-build --attr system ./nixos.nix
-
-echo ":: Copying"
-nix copy --to "ssh://root@simatime.com" ./result
-
-echo ":: Switching"
-path=$(readlink -n ./result)
-ssh root@simatime.com sudo "$path/bin/switch-to-configuration" switch