[Freifunk-Bonn] Updatescript für unsere Firmware

Jan Lühr ff at jluehr.de
Sa Mär 1 11:48:34 CET 2014


Hallo,
Am 03/01/2014 09:05 AM, schrieb johnny.bee at gmx.de:
> Hallo Jan,
> 
> freut mich doch, das Dir die Idee gefällt. Leider bräuchte dann aber der
> Webspace für unsere Releases eine Anpassung.
> 
> Mein Script funktioniert folgendermaßen:
> - Gehe auf den Updateserver in das Verzeichnis, der in der Config
> angegeben ist.
> -Suche dort nach einem Verzeichnis analog Deinem Boardnamen, damit keine
> falsche Version installiert wird. Also z.B. tl-wdr4300
> -Wenn Du nichts findest (keine Autoupdatefunktion bzw. nicht getestet)
> hör auf.
> -Wechsle in dieses Verzeichnis und suche nach einer Datei "upgradeversion"
> -Diese Datei ist wie folgt aufgebaut:
>    -1. Zeile: Aktuelle Version, also z.B. 2013-09-22_05-05-21-continuous
>    -2. Zeile: Kompletter Downloadpfad, also z.B.
> http://jenkins.kbu.freifunk.net/files/continuous/ff-kbu-tl-wdr4300-v1-2013-09-22_05-05-21.bin
> -Lade diese Datei herunter und überprüfe die Version mit Deiner
> installierten. Wenn gleich, dann hör auf.
> -Ansonsten lade die Firmwaredatei herunter nach /tmp und installiere sie.

Deine Anleitung ist sehr detailreich. Mir ist noch nicht so recht klar,
wozu Du das Verzeichnis "upgrade-Version" brauchst?

Der Server arbeitet wie folgt.
http://jenkins.kbu.freifunk.net/files/release/latest/ - hier sind alle
releases hinterlegt. Der Aufbau der Dateien dort ist
ff-kbu-$RouterTyp-$Version_(2-stellig).bin

Für beta Releases:
http://jenkins.kbu.freifunk.net/files/beta/
-> Unterverzeichnisse der form $Version_(2-stellig)beta$BETA-Version
1-2-stellig, fortlaufend)
-> Dort liegen Dateien der Form
ff-kbu-$RouterTyp-$Version_(2-stellig)beta$BETA-Version 1-2-stellig,
fortlaufend)

Eigentlich solltest Du diese Struktur auswerten können ohne das
Änderungen nötig sind.


> Also würde es wahrscheinlich Sinn machen, den "normalen" Downloadbereich
> für die Releases per IPV6 zugänglich zu machen 

So... der DNS sollte sich synchronisiert haben - jenkins hat eine v6-IP

und den Aufbau nicht zu
> ändern und zusätzlich einen kleinen Bereich zu haben, wo die Datei
> "upgradeversion" in den entsprechenden Unterverzeichnissen liegt.
> Diesen Bereich würde ich auch gerne, auf jeden Fall zu Anfang, nicht
> automatisiert füllen lassen, sondern manuell nach entsprechenden Tests.
> Somit sollten auch die Risiken von totgeflashten Routern minimiert werden.

Hmm... im Prinzip testen wir releases "so oder so". Extra Tests für
automatische Upgrades finde ich ein wenig passend. Es wäre imho genial,
wenn Du Dein Upgrade-Script einfach gegen beta-Versionen laufen lässt.

Gruß, Jan



Mehr Informationen über die Mailingliste Freifunk-Bonn