Mike Degatano
fa90c247ec
Correct /store/addons api output ( #4589 )
2023-09-29 09:17:39 -04:00
Mike Degatano
0cd7bd47bb
Skip watchdog API test on landingpage ( #4588 )
...
* Skip watchdog API test on landingpage
* Skip check from task
2023-09-29 09:17:22 -04:00
Mike Degatano
9322b68d47
Change User LED to System Health LED ( #4586 )
2023-09-26 14:54:41 -04:00
Chris Carini
f5afe13e91
Fix typos in docstrings ( #4546 )
...
* [typo] `Assitant` -> `Assistant`
* [typo] `an` -> `a`
2023-09-26 09:21:57 +02:00
Mike Degatano
dcf024387b
Network backups skip free space check ( #4563 )
2023-09-19 16:28:39 +02:00
Mike Degatano
e1232bc9e7
Add support for green LEDs to API ( #4556 )
...
* Add support for green LEDs to API
* Save board config in supervisor and post on start
* Ignore no-value-for-parameter in validate
2023-09-14 09:27:12 -04:00
Mike Degatano
2c8e6ca0cd
Switch from ruamel.yaml to pyyaml ( #4555 )
...
* Switch from ruamel.yaml to pyyaml
* Use CLoader and CDumper when available
2023-09-13 08:57:01 +02:00
Mike Degatano
0225f574be
Only tell HA to refresh ingress on restore on change ( #4552 )
...
* Only tell HA to refresh ingress on restore on change
* Fix test expecting ingress change
* Assume ingress_panel is false for new addons
2023-09-13 08:50:32 +02:00
Mike Degatano
5ae585ce13
Unmount mounts before backup restore ( #4557 )
2023-09-12 18:56:24 -04:00
Mike Degatano
32da679e02
Ingress does not break when username missing ( #4551 )
2023-09-11 10:42:31 -04:00
Mike Degatano
44daffc65b
Add freeze/thaw apis for external snapshots ( #4538 )
...
* Add freeze/thaw apis for external backups
* Error when thaw called before freeze
* Timeout must be > 0
2023-09-09 10:54:19 +02:00
Mike Degatano
0aafda1477
Mount names cannot include non-alphanumerics ( #4545 )
2023-09-09 10:54:04 +02:00
Mike Degatano
1b649fe5cd
Use newer StrEnum and IntEnum over Enum ( #4521 )
...
* Use newer StrEnum and IntEnum over Enum
* Fix validation issue and remove unnecessary .value calls
---------
Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
2023-09-06 12:21:04 -04:00
Mike Degatano
07c2178ae1
Add jobs to docker supervisor and use group wait ( #4520 )
2023-09-03 18:22:17 +02:00
Mike Degatano
f30d21361f
Skip unnecessary mounts and privileges for landingpage ( #4518 )
...
* Skip unnecessary mounts for landingpage
* Remove privileged and cgroup rules from landingpage
2023-09-03 18:21:35 +02:00
Mike Degatano
6adb4fbcf7
Update store data in one task to prevent races ( #4519 )
...
* Update store data in one task to prevent races
* Always return a dictionary
2023-09-03 18:20:26 +02:00
Mike Degatano
f4b43739da
Skip plugin update on startup if supervisor out of date ( #4515 )
2023-09-01 11:18:22 +02:00
Mike Degatano
4838b280ad
List current job tree in api ( #4514 )
2023-08-31 10:01:42 +02:00
Mike Degatano
f93b753c03
Backup and restore track progress in job ( #4503 )
...
* Backup and restore track progress in job
* Change to stage only updates and fix tests
* Leave HA alone if it wasn't restored
* skip check HA stage message when we don't check
* Change to helper to get current job
* Fix tests
* Mark jobs as internal to skip notifying HA
2023-08-30 16:01:03 -04:00
Mike Degatano
a79fa14ee7
Don't notify listeners on CoreState.CLOSE ( #4506 )
2023-08-25 07:22:49 +02:00
Pascal Vizeli
1eb95b4d33
Remove old add-on state refresh ( #4504 )
2023-08-24 11:04:31 -04:00
Mike Degatano
dad5118f21
Use dataclasses asdict for dataclasses ( #4502 )
2023-08-22 17:50:48 -04:00
Florian Bachmann
acc0e5c989
Allows the supervisor to send a session's user to addon with header X-Remote-User ( #4152 )
...
* Working draft for x-remote-user
* Renames prop to remote_user
* Allows to set in addon description whether it requests the username
* Fixes addon-options schema
* Sends user ID instead of username to addons
* Adds tests
* Removes configurability of remote-user forwarding
* Update const.py
* Also adds username header
* Fetches full user info object from homeassistant
* Cleaner validation and dataclasses
* Fixes linting
* Fixes linting
* Tries to fix test
* Updates tests
* Updates tests
* Updates tests
* Updates tests
* Updates tests
* Updates tests
* Updates tests
* Updates tests
* Resolves PR comments
* Linting
* Fixes tests
* Update const.py
* Removes header keys if not required
* Moves ignoring user ID headers if no session_data is given
* simplify
* fix lint with new job
---------
Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
2023-08-22 10:11:13 +02:00
Mike Degatano
93ba8a3574
Add job names and references everywhere ( #4495 )
...
* Add job names and references everywhere
* Remove group names check and switch to const
* Ensure unique job names in decorator tests
2023-08-21 09:15:37 +02:00
Mike Degatano
61288559b3
Always stop the addon before restoring it ( #4492 )
...
* Always stop the addon before restoring it
* patch ingress refresh to avoid timeout
2023-08-15 13:08:45 +02:00
Mike Degatano
3018b851c8
Missing an await in addon data ( #4487 )
2023-08-10 16:31:43 -04:00
Mike Degatano
222c3fd485
Address addon storage race condition ( #4481 )
...
* Address addon storage race condition
* Add some error test cases
2023-08-10 15:24:43 -04:00
Stefan Agner
9650fd2ba1
Extend container image name validator ( #4480 )
...
* Extend container image name validator
The current validator allows certain invalid names (e.g. upper
case), but disallows valid cases (such as ttl.sh/myimage).
Improve the container image validator to support more valid
options and at the same time disallow some of the invalid
options.
Note that this is not a complete/perfect validation still. A much
much more sophisticated regex would be necessary to be 100% accurate.
Also we format the string and replace {machine}/{arch} using Python
format strings. In that regard the image format in Supervisor deviates
from the Docker/OCI container image name format.
* Use an actual invalid image name in config validation
2023-08-10 12:58:33 -04:00
Stefan Agner
c88fd9a7d9
Add Home Assistant Green ( #4486 )
2023-08-10 17:31:37 +02:00
Mike Degatano
1611beccd1
Add job group execution limit option ( #4457 )
...
* Add job group execution limit option
* Fix pylint issues
* Assign variable before usage
* Cleanup jobs when done
* Remove isinstance check for performance
* Explicitly raise from None
* Add some more documentation info
2023-08-08 16:49:17 -04:00
Mike Degatano
71077fb0f7
Fallback on interface name if path is missing ( #4479 )
2023-08-07 20:53:25 -04:00
Mike Degatano
86f004e45a
Use udev path instead of mac or name for nm match ( #4476 )
2023-08-04 17:39:35 -04:00
Mike Degatano
a98334ede8
Cancel startup wait task on addon uninstallation ( #4475 )
...
* Cancel startup wait task on addon uninstallation
* Await startup task instead
* Suppress cancelled error
2023-08-04 16:28:44 -04:00
Mike Degatano
81ce0a60f6
Missing an await on dns.write_hosts call ( #4463 )
2023-07-31 23:29:40 +02:00
Mike Degatano
e60af93e2b
List discovery only includes healthy addons ( #4451 )
...
Co-authored-by: Stefan Agner <stefan@agner.ch>
2023-07-22 23:27:42 +02:00
Mike Degatano
1691f0eac7
Temporary operations for backups take place in destination folder ( #4452 )
2023-07-21 22:49:31 -04:00
Mike Degatano
be4a6a1564
Allow discovery messages for unknown services with a warning ( #4449 )
...
* Allow discovery messages for unknown services with a warning
* Log at warning level and skip sentry report
2023-07-21 15:05:51 -04:00
J. Nick Koston
24c5613a50
Switch to using the get core state api call to check if the API is up ( #4445 )
...
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-20 13:43:44 +02:00
J. Nick Koston
5266927bf7
Avoid check_api_state in websocket _can_send if we are already connected ( #4446 )
2023-07-20 11:20:02 +02:00
J. Nick Koston
f9bc2f5993
Increase core websocket proxy maximum message size to 64MiB ( #4443 )
2023-07-19 20:02:42 +02:00
Mike Degatano
f1a72ee418
Include interface name in match-device settings ( #4444 )
2023-07-19 10:15:59 +02:00
Mike Degatano
1f92ab42ca
Reduce executor code for docker ( #4438 )
...
* Reduce executor code for docker
* Fix pylint errors and move import/export image
* Fix test and a couple other risky executor calls
* Fix dataclass and return
* Fix test case and add one for corrupt docker
* Add some coverage
* Undo changes to docker manager startup
2023-07-18 11:39:39 -04:00
Mike Degatano
abbf8b9b65
Identify network interfaces by mac over name ( #4416 )
...
* Identify network interfaces by mac over name
* Refactor long if statement into method
2023-07-06 16:26:19 -04:00
Mike Degatano
96d5fc244e
Separate startup event from update check event ( #4425 )
...
* Separate startup event from update check event
* Add a queue for messages sent during startup
2023-07-06 12:45:37 -04:00
Bram Kragten
355961a1eb
Update frontend ( #4423 )
2023-07-05 10:16:49 +02:00
Bram Kragten
e68190b6b6
Bump frontend ( #4420 )
2023-07-04 10:21:32 +02:00
Mike Degatano
c2123f0903
Ensure addon.start always returns coroutine ( #4409 )
2023-06-27 19:43:49 +02:00
Mike Degatano
9fbeb2a769
Add support for apparmor channels ( #4408 )
2023-06-27 19:12:42 +02:00
Mike Degatano
9a7d547394
Allow all characters in mount credentials ( #4399 )
...
* Allow all characters in mount credentials
* Fix permissions on credential files
* Fix pylint issue
2023-06-22 15:55:13 -04:00
Mike Degatano
d3031e2eae
Use noserverino option in cifs mounts ( #4398 )
2023-06-21 18:49:03 +02:00