This repository has been archived on 2024-07-08. You can view files and clone it, but cannot push or open issues or pull requests.
nix-config-tn/.taskfiles/nix/update-all.sh
Truxnell dc0b2518da
Add restic backups and glances (#89)
* flesh out impermanence

* glances

* hack

* hacking in plex and tautulli

* hack

* hacking

* Auto lint/format

---------

Co-authored-by: Truxnell <9149206+truxnell@users.noreply.github.com>
Co-authored-by: truxnell <truxnell@users.noreply.github.com>
2024-04-13 22:46:48 +00:00

37 lines
845 B
Bash
Executable file

#!/usr/bin/env bash
set -e
hosts=($(echo $(nix eval .#nixosConfigurations --apply 'pkgs: builtins.concatStringsSep " " (builtins.attrNames pkgs)') | xargs))
skip=(
"citadel"
"rickenbacker"
)
reboot=0
while getopts ":r" option; do
case $option in
r)
reboot=1
;;
esac
done
for host in "${hosts[@]}"; do
# Check if the host is in the skip list
if [[ " ${skip[*]} " =~ " ${host} " ]]; then
continue
fi
fqdn="$host.l.voltaicforge.com"
if [ $reboot -eq 0 ]; then
echo $fqdn
nixos-rebuild switch -j auto --use-remote-sudo --target-host $fqdn --flake ".#$host"
else
echo "$fqdn with reboot"
nixos-rebuild boot -j auto --use-remote-sudo --target-host $fqdn --flake ".#$host"
ssh -i $rsa_key $fqdn 'sudo reboot'
fi
echo
echo
done