Commit Graph

42 Commits

Author SHA1 Message Date
Matthias Schiffer
4658afb2c6 gluon-core: commit all UCI configs at the end
Avoid commiting configs inbetween to decrease number of flash writes.

Fixes #714.
2016-04-02 18:56:45 +02:00
Matthias Schiffer
0005b3b5a2 autoupdater: stop non-essential services before downloading the image 2016-02-02 09:22:50 +01:00
Matthias Schiffer
9004028cb4 Convert gluon-announce Lua code to C modules, rename to gluon-respondd
gluon-announced and gluon-announce are merged to gluon-respondd.
2016-02-02 09:18:12 +01:00
Matthias Schiffer
53211b5b46 Replace gluon-cron by micrond 2015-10-15 23:52:30 +02:00
Matthias Schiffer
9b172bbaf4 Move all upgrade scripts to a common directory
Moving the scripts to a common directory not only vastly simplifies the
zzz-gluon-upgrade script, but also allows to define an ordering of such
scripts across packages.
2015-01-24 11:27:47 +01:00
Matthias Schiffer
9510d03b8b gluon-autoupdater: perform fallback updates hourly 2014-07-25 16:55:00 +02:00
Matthias Schiffer
35d8ff579f gluon-autoupdater: unconditionally perform an update 5 minutes after boot when the whole PRIORITY delay has passed 2014-07-21 17:27:47 +02:00
Matthias Schiffer
a39f527dad gluon-autoupdater: add locking to ensure no two instances of the autoupdater run in parallel 2014-07-21 17:27:47 +02:00
Matthias Schiffer
bb2adefd34 gluon-autoupdater: adjust for new updater logic
The probability field is removed, updates are performed once per night between
04:00 and 05:00.
2014-07-21 17:27:47 +02:00
Matthias Schiffer
059ea7e5fd gluon-autoupdater: add version_file option to uci settings 2014-07-21 17:27:47 +02:00
Nils Schneider
0a3bf70d56 split announce.d into nodeinfo + statistics 2014-07-20 14:00:10 +02:00
NeoRaider
0312167fcd Merge pull request #36 from freifunk-gluon/gluon-announce
gluon-announce: detach announce.d from alfred
2014-07-11 14:45:40 +02:00
Nils Schneider
318e9d1a1d gluon-announce: detach announce.d from alfred
All announce.d scripts have been moved to /lib/gluon/announce/announce.d
The script /lib/gluon/announce/announce.lua will collect all information
and output json.
2014-07-11 14:43:47 +02:00
Matthias Schiffer
4d80b7a62d Split parts not Gluon-specific out of gluon-autoupdater 2014-07-11 14:06:42 +02:00
Matthias Schiffer
9c53b705d5 Remove all uses of gluon.model and model.sh 2014-07-10 17:57:31 +02:00
Matthias Schiffer
bc54f80dfd gluon-alfred: reduce usage of util.exec, improve table formatting 2014-06-10 15:44:35 +02:00
Matthias Schiffer
48ea4b711f gluon-alfred: split announce.lua into several files and move parts into the appropriate packages
This also fixes the type of a few fields which were strings instead of numbers.
2014-06-09 19:23:16 +02:00
Matthias Schiffer
a3ed0dde1f gluon-autoupdater: replace config script generator with Lua script 2014-05-17 13:43:08 +02:00
Daniel Ehlers
b3d2d8cd32 gluon-autoupdater: Always allow forced autoupdate.
On nodes with autoupdate disabled the cmdline parameter '-f' has no
effect. But using the autoupdater for manual updates is quite handy.
2014-03-19 21:02:21 +01:00
Matthias Schiffer
13d632acb8 gluon-autoupdater: fix version comparison 2014-03-11 20:32:58 +01:00
Nils Schneider
6a2e7d45d8 gluon-autoupdater: drop caches before upgrade
This will free about 5 to 12 MB of RAM even on lightly used devices
yielding plenty of RAM for autoupdate to succeed.
2014-02-19 01:18:54 +01:00
Matthias Schiffer
5c81f5fa70 gluon-autoupdater: add SHA512 support 2014-02-06 00:17:33 +01:00
Nils Schneider
2f5524fdb4 gluon-autoupdater: Randomize mirror order
This way we have a kind of load balancing among the mirrors.
2014-01-21 13:20:50 +01:00
Matthias Schiffer
10d6c1930d gluon-autoupdater: allow configuring the branch name independently of the UCI config section name 2014-01-21 00:29:55 +01:00
Matthias Schiffer
72e7ae68fa gluon-autoupdater: adjust example config for mirror support 2014-01-21 00:10:00 +01:00
Daniel Ehlers
27871c0dc3 gluon-autoupdater: Enable list of mirrors for manifest and firmware.
Instead of a single url this patch allows to have a list of urls. So in case
of network instability a router can still reach local mesh-cloud server to pull
a update from. In this stage the autoupdater simply tries every mirror until
one passes all tests.
2014-01-20 23:31:15 +01:00
Daniel Ehlers
cb6c025a7f gluon-autoupdater: Less global variables.
This also removes the need for the cleanup function. Instead the cleanup
code is moved in place.
2014-01-20 23:31:15 +01:00
Daniel Ehlers
f0b63da868 gluon-autoupdater: Refactor code.
Move building blocks of the update into seperate functions.
2014-01-20 13:26:58 +01:00
Matthias Schiffer
1dd9a9a8a1 gluon-autoupdater: no need to provide a default config just to delete it in the initial script 2014-01-20 00:06:55 +01:00
Nils Schneider
8e73ff90a0 gluon-autoupdater: typo corrected 2014-01-19 23:19:55 +01:00
Jan-Philipp Litza
7cdf3708f0 gluon-autoupdater: get random number from urandom
The approach with awk's rand() wasn't really random between across
devices: When srand() was called without arguments, time() was used as
seed, which of course is the same on all devices when the script is
called via cron at HH:00:00.

This patch instead uses /dev/urandom as source of random (we don't need
cryptographically strong random numbers, so urandom is just fine) but
still uses awk for the comparison as busybox's ash cannot deal with
floats in $(())
2014-01-19 22:36:49 +01:00
Jan-Philipp Litza
54620d6231 autoupdater: Use awk instead of grep+head+tail to split manifest 2014-01-17 16:09:34 +01:00
Nils Schneider
5f976809a1 gluon-autoupdater: strip trailing - from model 2014-01-13 12:45:55 +01:00
Matthias Schiffer
293c64e723 gluon-autoupdater: use the new get_model function 2014-01-12 21:40:19 +01:00
Nils Schneider
61171c8c25 gluon-autoupdater: remove dead code
Recently the autoupdater contained a case statement to distinguish
between TP-Link WDR3600 and TP-Link WDR4300. This was left over from
previous development versions of autoupdater that relied on the board
name instead of the model. It is thus no longer needed and be removed
safely.
2014-01-12 21:18:27 +01:00
Nils Schneider
4fdcc218c5 autoupdater: fix initial upgrade script 2013-11-11 11:45:12 +01:00
Nils Schneider
f637e923f5 gluon-autoupdater: new branch specification
It is now possible to specific multiple branches like this:

config branch stable
  option url ...
  list pubkey ...
  ...

config branch testing
  ...

and select one in autoupdater.settings:

config autoupdater settings
  option branch "stable"
2013-10-02 13:33:47 +02:00
Nils Schneider
d866400ef9 gluon-autoupdater: rename script to autoupdater (was autoupdate) 2013-10-02 13:18:48 +02:00
Nils Schneider
fd4222f65d gluon-autoupdater: read config from site.conf 2013-09-30 23:31:35 +02:00
Nils Schneider
18f0fc6366 gluon-autoupdater: read version from /lib/gluon/release 2013-09-30 17:12:57 +02:00
Nils Schneider
1044a446b8 autoupdater: enable by default 2013-09-30 01:07:31 +02:00
Nils Schneider
9402824e14 autoupdater: simple autoupdater updated to use gluon-cron 2013-09-29 22:38:12 +02:00