Releasing updates to Quirm

sburnett edited this page Apr 15, 2012 · 2 revisions

This page explains how to build and distribute package updates to routers running Quirm. These are packages that will be updated via bismark-updater or installed via bismark-experiments-manager.

Branches and tags

We released Quirm on April 9, 2012. To enable reproducible builds, we tagged or branched many of the bismark repositories:

  • bismark-openwrt-overlay and bismark-packages have new branches 2012-04-09-quirm.
  • bismark-data-transmit, bmlua, luci-bismark, openflow-ucap have tags 2012-04-04-quirm. (These tags were unchanged from a prior release candidate.)

These branches and tags must not change. Instead, if you need to create changes we suggest you do the following:

  1. Update your package on the master branch of all relevant repositories. For example, if you needed to apply a security fix to bismark-data-transmit, apply your fix to the master branch of bismark-data-transmit and increment the package revision number in the package Makefile for bismark-data-transmit in bismark-packages.
  2. Merge any changes to bismark-packages or bismark-openwrt-overlay into the 2012-04-09-quirm-updates branch. Keep in mind that many of the package Makefiles in bismark-packages are hard coded to check out sources from the 2012-04-09 release tag; you may need to change these tags to HEAD to force a checkout from master. For example, if you're updating bismark-data-transmit, you'll need to change PKG_VERSION to HEAD in the Makefile.
  3. Find an openwrt build tree and make sure bismark-openwrt-overlay is on the latest version of the 2012-04-09-quirm-updates branch. The build at dp4:/data2/users/bismark/openwrt/src/quirm-2012-04-09 should work.
  4. Build your updated package. For example, run make package/bismark-data-transmit/compile.
  5. Add your package name to scripts/special-packages.conf. For example, add the line bismark-data-transmit updates. Consider testing the release on a single router first (e.g., bismark-data-transmit device-updates/OW0123456789AB).
  6. Run scripts/experiments-to-www.sh /data/users/bismark/builds/quirm. DO NOT run scripts/release-to-www.sh!
  7. Verify that your updated package appears in https://downloads.projectbismark.net/quirm/ar71xx. For example, an update to bismark-data-transmit will be in https://downloads.projectbismark.net/quirm/ar71xx/updates/.
  8. Test the update by running bismark-updater on a router.