basic functionality

This commit is contained in:
2025-08-21 15:54:05 +02:00
commit fc015e8958
25 changed files with 1138 additions and 0 deletions

44
ctl.sh Executable file
View File

@@ -0,0 +1,44 @@
#!/usr/bin/env bash
set -e
source .env
function info {
sed -n 's/^##//p' ctl.sh
}
function build {
echo "Building project..."
pio run
}
function flash {
echo "Flashing firmware..."
pio run --target upload
}
function ota {
function update {
echo "Updating node at $1"
curl -X POST \
-F "file=@.pio/build/esp01_1m/firmware.bin" \
http://$1/api/node/update | jq -r '.status'
}
function all {
echo "Updating all nodes..."
curl -s http://$API_NODE/api/cluster/members | jq -r '.members.[].ip' | while read -r ip; do
ota update $ip
done
}
${@:-info}
}
function cluster {
function members {
curl -s http://$API_NODE/api/cluster/members | jq -r '.members[] | "\(.hostname) \(.ip)"'
}
${@:-info}
}
${@:-info}