add RENNES nodes and some helper function in the shell
This commit is contained in:
parent
3e857b2afc
commit
013d69e674
3 changed files with 289 additions and 3 deletions
50
shell.nix
50
shell.nix
|
@ -13,11 +13,61 @@ pkgs.mkShell {
|
|||
packages = with pkgs; [
|
||||
deploy-rs
|
||||
nano
|
||||
wireguard-tools
|
||||
];
|
||||
|
||||
EDITOR="nano";
|
||||
|
||||
shellHook = ''
|
||||
rungcall() {
|
||||
echo "Running nix-collect-garbage -d on all nodes..."
|
||||
while read ip; do
|
||||
echo "=========================================="
|
||||
echo "Running garbage collection on $ip"
|
||||
echo "=========================================="
|
||||
ssh "$ip" "sudo nix-collect-garbage -d" < /dev/null 2>&1 | \
|
||||
while IFS= read -r line; do
|
||||
echo "[$ip] $line"
|
||||
done
|
||||
echo ""
|
||||
done < <(grep -o 'ip4 = "[0-9.]*/' nodes.nix | sed 's/ip4 = "//; s/\/.*//')
|
||||
}
|
||||
runrebootall() {
|
||||
echo "This will reboot ALL nodes in the network!"
|
||||
echo "Nodes to be rebooted:"
|
||||
grep -o 'ip4 = "[0-9.]*/' nodes.nix | \
|
||||
sed 's/ip4 = "//; s/\/.*//' | \
|
||||
while read ip; do
|
||||
echo " - $ip"
|
||||
done
|
||||
echo ""
|
||||
|
||||
read -p "Are you sure you want to reboot all these nodes? (yes/no): " confirm
|
||||
|
||||
if [ "$confirm" = "yes" ]; then
|
||||
echo "Rebooting all nodes..."
|
||||
while read ip; do
|
||||
echo "Rebooting $ip..."
|
||||
# Calling systemctl bypass molly-guard
|
||||
ssh "$ip" "sudo systemctl reboot" < /dev/null 2>&1 || echo "Yup, that failed"
|
||||
done < <(grep -o 'ip4 = "[0-9.]*/' nodes.nix | sed 's/ip4 = "//; s/\/.*//')
|
||||
echo "Reboot commands sent to all nodes."
|
||||
else
|
||||
echo "Reboot cancelled."
|
||||
fi
|
||||
}
|
||||
getallhk() {
|
||||
echo "Collecting SSH Ed25519 host keys from all nodes..."
|
||||
echo ""
|
||||
|
||||
while read ip; do
|
||||
ssh "$ip" "cat /etc/ssh/ssh_host_ed25519_key.pub" < /dev/null 2>&1 || echo "Failed to get host key from $ip"
|
||||
done < <(grep -o 'ip4 = "[0-9.]*/' nodes.nix | sed 's/ip4 = "//; s/\/.*//')
|
||||
}
|
||||
|
||||
export -f rungcall
|
||||
export -f runrebootall
|
||||
|
||||
echo "Welcome to Federez-LaSuite network deploy-rs shell environment!"
|
||||
'';
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue