supervisor issueshttps://gitlab.nic.cz/turris/updater/supervisor/-/issues2019-05-06T17:50:00+02:00https://gitlab.nic.cz/turris/updater/supervisor/-/issues/7Updater is reported as disabled/not configured even if it was enabled2019-05-06T17:50:00+02:00Karel KociUpdater is reported as disabled/not configured even if it was enabledUpdater does does not run automatically and Foris sees it as not configured (visually does not allow updater to be disabled).
All releases from up to and including 4.0-alpha5 are affected.Updater does does not run automatically and Foris sees it as not configured (visually does not allow updater to be disabled).
All releases from up to and including 4.0-alpha5 are affected.Turris OS 4.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/41.0 has an invalid entry point2019-05-06T17:50:00+02:00Karel Koci1.0 has an invalid entry pointEntry point `updater-supervisor` is invalid. It fails with following error:
```
root@alfa: ~ # /usr/bin/updater-supervisor -d --rand-sleep
Traceback (most recent call last):
File "/__init__.py", line 2332, in resolve
AttributeError: mo...Entry point `updater-supervisor` is invalid. It fails with following error:
```
root@alfa: ~ # /usr/bin/updater-supervisor -d --rand-sleep
Traceback (most recent call last):
File "/__init__.py", line 2332, in resolve
AttributeError: module 'svupdater' has no attribute 'main'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/updater-supervisor", line 11, in <module>
load_entry_point('svupdater==1.0', 'console_scripts', 'updater-supervisor')()
File "/__init__.py", line 480, in load_entry_point
File "/__init__.py", line 2693, in load_entry_point
File "/__init__.py", line 2324, in load
File "/__init__.py", line 2334, in resolve
ImportError: module 'svupdater' has no attribute 'main'
```Turris OS 4.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/8Retrieve TOS version/branch from updater2019-10-14T15:51:23+02:00Martin MatějekRetrieve TOS version/branch from updaterGet current TOS branch/version. Useful mainly for foris-controllerGet current TOS branch/version. Useful mainly for foris-controllerTurris OS 4.0.2https://gitlab.nic.cz/turris/updater/supervisor/-/issues/12No show notification about an update package.2019-12-18T12:51:23+01:00Jan HoracekNo show notification about an update package.Updater doesn't show/send information about install/uninstall packages. Show only release notes. Last relevant information from a log is:
```
Dec 16 19:46:22 turris updater[8849]: src/pkgupdate/main.c:39 (results_interpret): Failed op...Updater doesn't show/send information about install/uninstall packages. Show only release notes. Last relevant information from a log is:
```
Dec 16 19:46:22 turris updater[8849]: src/pkgupdate/main.c:39 (results_interpret): Failed operations:
turris-netboot-tools/postinst: udhcpc: started, v1.28.4
udhcpc: sending discover
udhcpc: no lease, failing
udhcpc: started, v1.28.4
udhcpc: sending discover
udhcpc: no lease, failing
Regenerating configuration...
Getting new rootfs...
Downloading 'https://repo.turris.cz/hbs/netboot/mox-netboot-latest.tar.gz'
Connecting to 2001:1488:ac15:ff80::69:443
Writing to '/srv/turris-netboot/rootfs/rootfs-new.tar.gz'
/srv/turris-netboot/ 0% | | 65230 0:11:10 ETA
/srv/turris-netboot/ 0% | | 143k 0:09:53 ETA
/srv/turris-netboot/ 0% | | 191k 0:11:06 ETA
/srv/turris-netboot/ 0% | | 303k 0:09:19 ETA
/srv/turris-netboot/ 0% | | 335k 0:10:32 ETA
/srv/turris-netboot/ 0% | | 367k 0:11:32 ETA
/srv/turris-netboot/ 0% |
Dec 16 19:47:01 turris /usr/sbin/cron[25721]: (root) CMD (/usr/bin/rainbow_button_sync.sh)
```Turris OS 4.0.3https://gitlab.nic.cz/turris/updater/supervisor/-/issues/10Use pyuci everywhere2020-04-09T14:17:40+02:00Martin MatějekUse pyuci everywhereRefactor get/set functions to generic get/set from `EUci`. Don't use undocumented and deprecated functions.
* `get_integer()`, `get_boolean` -> `get()`
* `set_integer()`, `set_boolean` -> `set()`
Also replace `Uci` with `EUci` elsewher...Refactor get/set functions to generic get/set from `EUci`. Don't use undocumented and deprecated functions.
* `get_integer()`, `get_boolean` -> `get()`
* `set_integer()`, `set_boolean` -> `set()`
Also replace `Uci` with `EUci` elsewhere.
Complementary to turris/updater/updater#284
Related MR turris/updater/supervisor!7Turris OS 5.1https://gitlab.nic.cz/turris/updater/supervisor/-/issues/9pkglists: support for options in pkglist2020-04-09T14:17:48+02:00Karel Kocipkglists: support for options in pkglistpkglists package now provides additional options for package lists. Supervisor should read those and support those.
It should be as easy as updating returned dictionary from `pkglists` and modifying `update_pkglists` to also modify othe...pkglists package now provides additional options for package lists. Supervisor should read those and support those.
It should be as easy as updating returned dictionary from `pkglists` and modifying `update_pkglists` to also modify other uci sections.
Please see https://gitlab.labs.nic.cz/turris/turris-build/merge_requests/51 and https://gitlab.labs.nic.cz/turris/turris-os-packages/merge_requests/151Turris OS 5.1https://gitlab.nic.cz/turris/updater/supervisor/-/issues/14Can't update list of packages.2020-04-09T14:18:01+02:00Bogdan BodnarCan't update list of packages.```
Error:
Remote Exception: Internal error Invalid argument('<class 'uci.UciException'>')
Extra:
{"module": "updater", "action": "update_settings", "kind": "request", "data": {"languages": ["cs", "de"], "user_lists": [{"name": "3g"}], ...```
Error:
Remote Exception: Internal error Invalid argument('<class 'uci.UciException'>')
Extra:
{"module": "updater", "action": "update_settings", "kind": "request", "data": {"languages": ["cs", "de"], "user_lists": [{"name": "3g"}], "enabled": true, "approval_settings": {"status": "on"}}}
Trace:
Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/foris_controller/message_router.py", line 117, in process_message data = module_instance.perform_action(message["action"], message.get("data", {})) File "/usr/lib/python3.7/site-packages/foris_controller/module_base.py", line 61, in perform_action res = action_function(data) File "/usr/lib/python3.7/site-packages/foris_controller_modules/updater/__init__.py", line 54, in action_update_settings data["enabled"], File "/usr/lib/python3.7/site-packages/foris_controller/utils.py", line 113, in inner res = func(*args, **kwargs) File "/usr/lib/python3.7/site-packages/foris_controller_modules/updater/handlers/openwrt.py", line 62, in update_settings user_lists, languages, approvals_status, approvals_delay, enabled File "/usr/lib/python3.7/site-packages/foris_controller_backends/updater/__init__.py", line 76, in update_settings svupdater_lists.update_pkglists(self._jsonschema_to_svupdater(user_lists)) File "/usr/lib/python3.7/site-packages/svupdater/lists.py", line 108, in update_pkglists uci.set('pkglists', 'pkglists', 'pkglist', list(lists.keys())) File "/__init__.py", line 134, in set uci.UciException: Invalid argument
```https://gitlab.nic.cz/turris/updater/supervisor/-/issues/19Try to block system shutdown when updater is running2020-11-06T15:25:02+01:00Karel KociTry to block system shutdown when updater is runningWe should block system shutdown when updater is running to make chance of breakage because of reboot in inappropriate moment minimal.
On ProcD it seems that we can do it by just writing stop service that blocks shutdown till update term...We should block system shutdown when updater is running to make chance of breakage because of reboot in inappropriate moment minimal.
On ProcD it seems that we can do it by just writing stop service that blocks shutdown till update terminates.
Problem is that at the moment when updater is running reboot as part of its execution it infinitely blocks instead of exit. We can't easily recognize this state and so we can just simply check for updater process.Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/18Provide API to get last run info2020-11-06T15:25:10+01:00Michal HruseckyProvide API to get last run infoFrom users point of view, it might be interesting in WebUI to know when was the last time updates were checked and whether they were sucessfully installed.From users point of view, it might be interesting in WebUI to know when was the last time updates were checked and whether they were sucessfully installed.Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/16Add option to force execution (to skip check for autorun)2020-11-06T15:25:20+01:00Karel KociAdd option to force execution (to skip check for autorun)Updater supervisor is in general usable to run updater in unattended mode. This is usable even if autorun is disabled.
We might even switch it around and make it so check for autorun is conditioned by `--autorun` option. This way cron j...Updater supervisor is in general usable to run updater in unattended mode. This is usable even if autorun is disabled.
We might even switch it around and make it so check for autorun is conditioned by `--autorun` option. This way cron job that trigger autorun would use this flag any other use to run updater would be free from autorun settings.Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/13Clarify license and add License file2020-11-06T15:25:42+01:00Josef SchlehoferClarify license and add License fileTurris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/5Solidify API with typing2020-11-06T15:25:51+01:00Karel KociSolidify API with typingWe should add typing to our API.
https://docs.python.org/3/library/typing.htmlWe should add typing to our API.
https://docs.python.org/3/library/typing.htmlTurris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/2Add interface to query updater log and trace file2020-11-06T15:25:59+01:00Karel KociAdd interface to query updater log and trace fileThis interface should be usable to query system change list and to query trace file of current (latest) updater run.This interface should be usable to query system change list and to query trace file of current (latest) updater run.Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/20Add API for package queries2020-11-11T14:54:39+01:00Karel KociAdd API for package queriesIt would be very handy to query for installed packages. That should take in to consideration not only installed name but also Provide.It would be very handy to query for installed packages. That should take in to consideration not only installed name but also Provide.Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/22Fix deprecated collections import2020-11-27T10:17:16+01:00Martin MatějekFix deprecated collections importMinor refactoring of collections import to avoid this DeprecationWarning:
```
DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop...Minor refactoring of collections import to avoid this DeprecationWarning:
```
DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.10 it will stop working
class Status(collections.Mapping):
```https://gitlab.nic.cz/turris/updater/supervisor/-/issues/21Exception thrown when approvals are being used2020-11-27T23:24:17+01:00Karel KociException thrown when approvals are being usedThis seems to happen when delayed updates are configured.
```
2020-11-13 13:59:48 info updater-supervisor[]: Traceback (most recent call last):
File "/usr/bin/updater-supervisor", line 11, in <module>
load_entry_point('svupdater=...This seems to happen when delayed updates are configured.
```
2020-11-13 13:59:48 info updater-supervisor[]: Traceback (most recent call last):
File "/usr/bin/updater-supervisor", line 11, in <module>
load_entry_point('svupdater==1.3.1', 'console_scripts', 'updater-supervisor')()
File "/usr/lib/python3.7/site-packages/svupdater/__main__.py", line 103, in main
File "/usr/lib/python3.7/site-packages/svupdater/_supervisor.py", line 160, in run
File "/usr/lib/python3.7/site-packages/svupdater/_supervisor.py", line 77, in run
File "/usr/lib/python3.7/site-packages/svupdater/approvals.py", line 157, in _approved
TypeError: '>' not supported between instances of 'NoneType' and 'int'
```Turris OS 5.1.5https://gitlab.nic.cz/turris/updater/supervisor/-/issues/23Exception thrown when running in CLI2020-12-01T09:35:16+01:00Josef SchlehoferException thrown when running in CLIIntroduced in version 1.4.0 by this commit https://gitlab.nic.cz/turris/updater/supervisor/-/commit/772939b06cd4d795bb0fc2ea17a5e5860a9cb23c
```
root@omnia:~# updater-supervisor --autorun
Traceback (most recent call last):
File "/usr/...Introduced in version 1.4.0 by this commit https://gitlab.nic.cz/turris/updater/supervisor/-/commit/772939b06cd4d795bb0fc2ea17a5e5860a9cb23c
```
root@omnia:~# updater-supervisor --autorun
Traceback (most recent call last):
File "/usr/bin/updater-supervisor", line 11, in <module>
load_entry_point('svupdater==1.4.1', 'console_scripts', 'updater-supervisor')()
File "/usr/lib/python3.7/site-packages/svupdater/__main__.py", line 76, in main
TypeError: '>' not supported between instances of 'NoneType' and 'int'
```
```
root@omnia:~# updater-supervisor
Traceback (most recent call last):
File "/usr/bin/updater-supervisor", line 11, in <module>
load_entry_point('svupdater==1.4.1', 'console_scripts', 'updater-supervisor')()
File "/usr/lib/python3.7/site-packages/svupdater/__main__.py", line 76, in main
TypeError: '>' not supported between instances of 'NoneType' and 'int'
```Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/15Detect broken Internet connection2021-08-18T17:33:37+02:00Vojtech MyslivecDetect broken Internet connectionWhen a WAN is down and Internet connection is not available, updater "spam" Foris notifications with:
```
unreachable: https://repo.turris.cz/omnia/lists/base.lua: Couldn't resolve host 'repo.turris.cz'
```
which is a bit cryptic, espec...When a WAN is down and Internet connection is not available, updater "spam" Foris notifications with:
```
unreachable: https://repo.turris.cz/omnia/lists/base.lua: Couldn't resolve host 'repo.turris.cz'
```
which is a bit cryptic, especially for new Turris users.
It would be really nice to enhance user experience and lower "false issues" [like that](https://forum.turris.cz/t/nemohu-resolvovat-repo-turris-cz/12907) (that's really not unique).Turris OS 5.2.0https://gitlab.nic.cz/turris/updater/supervisor/-/issues/6Add option to notify user about new *-opkg files2022-01-26T22:15:34+01:00Karel KociAdd option to notify user about new *-opkg filesThese files are new versions of configurations. One of users requested to be
notified about those. And it makes sense to do so.These files are new versions of configurations. One of users requested to be
notified about those. And it makes sense to do so.https://gitlab.nic.cz/turris/updater/supervisor/-/issues/27Fix notification about changes after changelog replaced statelog2022-02-15T16:06:00+01:00Karel KociFix notification about changes after changelog replaced statelogIn turris/updater/updater!292 the statelog was removed and now there is changelog. The notification supervisor generates now should be generated from that log instead.
The second change that is tied to this is removal of error and crash...In turris/updater/updater!292 the statelog was removed and now there is changelog. The notification supervisor generates now should be generated from that log instead.
The second change that is tied to this is removal of error and crash log file. These are removed without any replacement and internal handling of logs from pkgupdate should be used instead.