* Add logs/follow to admin paths in hassio.http
* Add tests for logs/follow admin paths in hassio.http
* Add tests for logs/follow admin paths in hassio.http
* Add compress and timeout exclusions for hassio http api
* Fix should_compress usage in hassio/ingress
* Add missing follow exceptions for hassio/http
* Add hassio range header forward for logs endpoints
* Fix test syntax hassio/http
* Move set addon options to aiohasupervisor
* addon stats to aiohasupervisor and test fixes
* addon changelogs to aiohasupervisor
* Raise correct error for library in tests
* Cache client in instance property
* Use singleton method rather then HassIO instance method
* Mock supervisor client in more tests
* Use aiohasupervosor for store addon info
* Use aiohasupervisor install addon
* Use aiohasupervisor for store info API
* Fix onboarding test
* Changes from feedback
* Move get_supervisor_client out of constructor
* Mock supervisor_client in tests
* Make property private
* Deprecate hassio service to update addon
* Update homeassistant/components/hassio/strings.json
Co-authored-by: Stefan Agner <stefan@agner.ch>
* service -> action
* service -> action; in the title as well
---------
Co-authored-by: Stefan Agner <stefan@agner.ch>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
* Speed up hassio send_command url check
The send_command call checked the resulting path to make
sure that the input path was not modified when converting
to a URL. Since the host is is pre-set, we only need to check
the processed raw_path matches command instead of converting
back to a string, and than comparing it against another
constructed string.
* Speed up hassio send_command url check
The send_command call checked the resulting path to make
sure that the input path was not modified when converting
to a URL. Since the host is is pre-set, we only need to check
the processed raw_path matches command instead of converting
back to a string, and than comparing it against another
constructed string.
* adjust
* Opt in to install Mosquitto broker add-on in MQTT config flow
* rephrase
* Tests with supervisor and running add-on
* Complete tests for success flows
* Also set up entry in success flow
* Use realistic names for addon and broker
* Finetuning and fail test cases
* Spelling
* Improve translation strings
* Update addon docstr
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Raise AddonError if add-on does not start
* Only show the option to use the add-on
* Simplify flow, rework and cleanup
* Revert unrelated cleanup, process suggestion
* Move ADDON_SLUG const to addon module
* Move fixture to component level
* Move back supervisor fixture
* Move addon_setup_time_fixture and superfixe to config flow model tests
* Refactor hassio fixture
* Rename helpers as they are no fixtures, remove fixture from their names
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add virtualization field fo system info
* Add ntp sync and host connectivity
* Prevent nonetype errors
* Add supervisor_connectivity and fix tests
* Add mock of network info to other fixtures
* Update more fixtures with network/info mock
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Phase out periodic tasks
* false by default or some tests will block forever, will need to fix each one manually
* kwarg works
* kwarg works
* kwarg works
* fixes
* fix more tests
* fix more tests
* fix lifx
* opensky
* pvpc_hourly_pricing
* adjust more
* adjust more
* smarttub
* adjust more
* adjust more
* adjust more
* adjust more
* adjust
* no eager executor
* zha
* qnap_qsw
* fix more
* fix fix
* docs
* its a wrapper now
* add more coverage
* coverage
* cover all combos
* more fixes
* more fixes
* more fixes
* remaining issues are legit bugs in tests
* make tplink test more predictable
* more fixes
* feedreader
* grind out some more
* make test race safe
* one more
* Schedule periodic coordinator updates as background tasks.
Currently, the coordinator's periodic refreshes delay startup because they are not scheduled as background tasks. We will wait if the startup takes long enough for the first planned refresh. Another coordinator's scheduled refresh will be fired on busy systems, further delaying the startup. This chain of events results in the startup taking a long time and hitting the safety timeout because too many coordinators are refreshing.
This case can also happen with scheduled entity refreshes, but it's less common. A future PR will address that case.
* periodic_tasks
* periodic_tasks
* periodic_tasks
* merge
* merge
* merge
* merge
* merge
* fix test that call the sync api from async
* one more place
* cannot chain
* async_run_periodic_hass_job
* sun and pattern time changes from automations also block startup
* Revert "sun and pattern time changes from automations also block startup"
This reverts commit 6de2defa05.
* make sure polling is cancelled when config entry is unloaded
* Revert "Revert "sun and pattern time changes from automations also block startup""
This reverts commit e8f12aad55.
* remove DisabledError from homewizard test as it relies on a race
* fix race
* direct coverage
* Add system_health to the hassio pre-imports to avoid a late executor job
`2024-03-05 17:01:33.034 DEBUG (MainThread) [homeassistant.loader] Importing platforms for hassio executor=[system_health] loop=[] took 0.12s`
This one does not take that much time but it happens at a time where
the import executor is the most busy during startup
* key
* move patch as its too early now
* Split up hassio coordinator and data into new file to allow preload
Since we cannot mark hassio as having a config_flow, it will
not get preloaded and since cloud will almost always load right
after it and block the import executor, we want to preload
the hassio config_flow and platform modules so the other
dependants can continue on while cloud is being imported
to not delay startup
* tweak
* tweak
* Add LED control support to Home Assistant Green
* Add strings.json
* Sort alphabetically
* Reorder LED schema
* Improve test coverage
* Apply suggestions from code review
Co-authored-by: Stefan Agner <stefan@agner.ch>
* Sort + fix test
* Remove reboot menu
---------
Co-authored-by: Stefan Agner <stefan@agner.ch>
* Validate slug in addon services
* Move validator into hassio component
* Fixes from mypy
* Fix test for changes
* Adjust fixtures to current supervisor
* Fix call counts after fixture adjustment
* Increase coverage
* Update return signature of service calls
* Add timeout error handling in websocket api for service calls
* Update recorder tests to remove assertion on service call
* Remove timeout behavior and update callers that depend on it today
* Fix tests
* Add missing else
* await coro directly
* Fix more tests
* Update the intent task to use wait instead of timeout
* Remove script service call limits and limit constants
* Update tests that depend on service call limits
* Use wait instead of wait_for and add test
* Update homeassistant/helpers/intent.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add LED control support to Home Assistant Yellow
* Fix the handlers
* Remove switch platform
* Allow configuring LED settings from the options flow
* Add missing translations
* Add tests
* Add tests