Skip to content

Instantly share code, notes, and snippets.

@herbetom
Created August 26, 2019 19:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save herbetom/836131f7553c6a3296a406f3858445c6 to your computer and use it in GitHub Desktop.
Save herbetom/836131f7553c6a3296a406f3858445c6 to your computer and use it in GitHub Desktop.
Gluon sysupgrade signieren
#!/bin/sh
# basiert auf https://github.com/FreiFunkMuenster/tools/blob/master/signieren.sh
# benötigt:
# - sshfs
# - ecdsautils (https://github.com/tcatm/ecdsautils)
# - sign.sh und sigtest.sh aus dem Gluon Repo (https://github.com/freifunk-gluon/gluon/tree/master/contrib)
# herunterladen und am besten in /usr/bin ablegen. Dann ausführbar machen.
# wget https://raw.githubusercontent.com/freifunk-gluon/gluon/master/contrib/sign.sh
# wget https://raw.githubusercontent.com/freifunk-gluon/gluon/master/contrib/sigtest.sh
PUBLIC_SIG_KEY='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
PATH_TO_SECRET_SIG_KEY='/root/secret'
FIRMWARESERVER_HOST='root@server.example.com'
FIRMWARESERVER_PORT='22'
FIRMWARESERVER_MOUNTPOINT='/media/firmwareserver'
read -p "Branches? (experimental beta stable): " BRANCHES
if [ "$BRANCHES" = "" ] ; then
echo "Du musst einen oder mehrere Branches (experimental beta stable) angeben!";
exit
fi
mkdir -p $FIRMWARESERVER_MOUNTPOINT
sshfs -p $FIRMWARESERVER_PORT $FIRMWARESERVER_HOST:/ $FIRMWARESERVER_MOUNTPOINT
for b in $BRANCHES
do
sign.sh $PATH_TO_SECRET_SIG_KEY $FIRMWARESERVER_MOUNTPOINT/var/www/firmware/images/"$b"/sysupgrade/"$b".manifest
sigtest.sh $PUBLIC_SIG_KEY $FIRMWARESERVER_MOUNTPOINT/var/www/firmware/images/"$b"/sysupgrade/"$b".manifest
RESULT=$?
if [ $RESULT -eq 1 ] ; then
echo "Signieren von Version $VERSION $b für Domäne-$i fehlgeschlagen!";
elif [ $RESULT -eq 0 ] ; then
echo "Signieren von Version $VERSION $b für Domäne-$i erfolgreich!";
else
echo "Signieren von Version $VERSION $b für Domäne-$i fehlgeschlagen mit Fehlercode $? !";
fi
done
fusermount -u $FIRMWARESERVER_MOUNTPOINT
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment