v0.13.0-1
Created by: yksflip
Release Procedure
Version: v0.13.0-1 Gluon Version: 2019.1.2
Notes:
- First Build had to be canceld because of missing GLUON_BRANCH variable during build. Which led to a wrong autoupdater setting in factory image
Pre-Build
-
Create Version Branch -
Update README.md
Summarize changes on site-ffhl:
-
Add batman adv compat15 domain
-
Add Scheduled-Domain-Switch for 03.09.2020 22:00
-
Create Versions Tag -
Create Merge Request
Build Firmware
-
Build Firmware / Run CI. (Firmware for rollout should be build on trusted hardware) -
Visually check that output/images/*
and the contents ofoutput/images/sysupgrade/{stable,beta}.manifest
looks fine. -
make sure, all desired targets were built -
copy output images to srv02 (/var/www/firmware/) -
chown to directory www-data:www-data
Beta Release
-
manually download and flash a few images to a few devices to check that the overall build process went fine.
Sign Firmware
-
Get minimum amount of signatures -
Update the beta.manifest on the server with the new, added signatures below the "---" in the local copy of the beta.manifest. -
update beta
symlink on srv02
Monitor Beta Nodes
Then check for about 2 weeks that nodes with the beta branch selected in their autoupdater updated and run fine. Make sure to have at least one device of the more popular ones on a beta branch.
-
Nodes are alive and stable with new version number (check node's status page) -
Check that all wifi interfaces are up and running (run iwinfo
via ssh) -
Check that meshing works (run batctl o
via ssh) -
Check that the process list looks fine (run ps
via ssh - no missing processes? no new, suspicious processes?) -
Check that /etc/config/autoupdater
looks fine and has the correct public keys -
Check that /etc/dropbear/authorized_keys
was left unmodified
If not, abort and repeat process with increased build number
Stable Release
-
Update DATE in local stable.manifest -
Get minimum amount of signatures -
Update the DATE in the stable.manifest on the server with the new start time. -
Update the stable.manifest on the server with the new, added signatures below the "---" in the local copy of the stable.manifest. -
update stable
symlink on srv01:
Pre-Stable-Rollout
-
Verify that images are downloadable via https://luebeck.freifunk.net/firmware/0.xx.y-z/sysupgrade/ -
Verify that stable.manifest on the server contains a sufficient amount of valid signatures -
Verify that the start DATE of the stable.manifest on the server is correct -
Then prior the stable update start date, inform passengers: Inform about scheduled landing time of the new release and the firmware changes it contains on the talk@luebeck.freifunk.net mailing list.
Peri-Stable-Rollout
- Daily:
- Check that the predicted number of nodes updates to the new firmware version
- For the nodes which updated successfully, check their status page:
- enough RAM
- load ok (usually < 1)
- neighbor link quality ok
- Monitor mailing lists for passenger feedback
In case of any issues occurring, abort.
Post-Stable-Rollout
-
Check if any nodes might have failed updating (any nodes that might have gone offline, especially during the update time at about 04:00 o'clock. - If available, inform individual node owners via the contact information they set in the config-mode about their failed update. If possible, determine cause for failure.
-
Check that new Firmware version is available on the wizard and add new firmware to the list https://firmware.luebeck.freifunk.net/wizard -
Update https://luebeck.freifunk.net/: Add a new blog entry to inform about the new firmware release -
Inform via Twitter about the new firmware release -
Increment DEFAULT_GLUON_RELEASE in https://gitlab.com/freifunk-luebeck/site-ffhl/blob/master/site.mk
See wiki for more details.