diff --git a/deploy.sh b/deploy.sh index 62edcb7..989e4dd 100755 --- a/deploy.sh +++ b/deploy.sh @@ -19,9 +19,6 @@ for NIXHOST in $NIXHOSTLIST; do echo "==== DOING $NIXHOST ====" - echo "updating Nix channels" - ssh -F ssh_config $SSH_DEST sudo nix-channel --update - echo "generating NixOS config" cat configuration.nix | ssh -F ssh_config $SSH_DEST sudo tee /etc/nixos/configuration.nix > /dev/null cat node/$NIXHOST.nix | ssh -F ssh_config $SSH_DEST sudo tee /etc/nixos/node.nix > /dev/null diff --git a/upgrade.sh b/upgrade.sh new file mode 100755 index 0000000..4134bbd --- /dev/null +++ b/upgrade.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +cd $(dirname $0) + +if [ -z "$@" ]; then + NIXHOSTLIST=$(ls node | grep -v '\.site\.') +else + NIXHOSTLIST="$@" +fi + +for NIXHOST in $NIXHOSTLIST; do + NIXHOST=${NIXHOST%.*} + + if [ -z "$SSH_USER" ]; then + SSH_DEST=$NIXHOST + else + SSH_DEST=$SSH_USER@$NIXHOST + fi + + echo "==== DOING $NIXHOST ====" + + ssh -F ssh_config $SSH_DEST sudo nix-channel --update + ssh -F ssh_config $SSH_DEST sudo nixos-rebuild switch +done