Package and Repository Policy
Clone this wiki locally
BISmark Package and Repository Policies
$repo refers to the base URL for a release repository, such as
Experiments managed by bismark-experiment-manager
- Experiments mangaged by BEM can be marked as 'required' in the
bismark-activeis the only experiment that will be marked as required for automatic installation, though we reserve the right to mark other experiment packages as required in future.
Packages automatically updated by bismark-updater
For a given release, the
$repo/updates/repository will initially be empty, and all packages associated with that release that are not experiments will be located in
$repo/packages. As the need arises to provide updates and upgrade packages installed on routers in the field, we can put the new version in the upgradable directory and it'll be automatically picked up by the routers. The original version can remain in the non-upgradable directory to no ill effect.
Allowing a broken/flawed package to be upgraded automatically via bismark-updater could potentially break a BISmark router in the field such that it is not recoverable without user intervention. Thus, all packages proposed for automatic updating must be tested via the following process that can be coordinated with the BISmark team:
- Test the package update thoroughly on a lab/non-critical router flashed with a fresh copy of the targeted BISmark release. Be sure to check for reasonable CPU, memory and flash/tmpfs usage, proper transmission of data back to your data collection server, correct functioning of your software, and long-term "well-behavedness" and stability.
- Test on your own home router for several days, looking for the same issues as noted above.
- Contact the BISmark team to review the changes propsed for your update, as well as testin the automatic update on a small set of routers in homes of the BISmark team in Altanta. If your update passes these steps then it will be considered for automatic update.
Management of the downloads.projectbismark.net package repositories
One member of the BISmark team is responsible for performing releases and
updates. This user will have control of the
bismark-downloadsuser and corresponding control over the contents of the downloads.projectbismark.net package repositories. This individual is responsible for ensuring the package quality requirements above are met prior to releasing a package on downloads.projectbismark.net.