Stopping the core goes through several stages, which can take up to
120s, 60s and 30s respectively. However, if shutdown is taking longer
than 60s overall, s6 isn't patient and kills the core:
Jan 10 23:56:58 homeassistant eb034fca9c7d[407]: s6-svwait: fatal: timed out
Jan 10 23:56:58 homeassistant eb034fca9c7d[407]: [s6-finish] sending all processes the TERM signal.
Jan 10 23:57:01 homeassistant eb034fca9c7d[407]: [s6-finish] sending all processes the KILL signal and exiting.
This is most of the time not a problem since shutdown is quicker than
that.
However, increasing the timeout is especialy useful to debug cases when
an event is hanging, since the core will point it out after its timeout
elapsed.
Set the timeout to 220s, which is all core timeouts plus 10s grace time.
This sets the uvloop version in Docker containers to 0.11.3, which is the
same version that hass.io uses.
uvloop might be causing issues with some Docker containers on some host
systems, as reported in #20829
* Uninstall enum34 in python3.6 docker image
This is a short term fix for #7733
What's happening is the following dependencies are pulling enum34:
- pygatt
- libsoundtouch
- yeelight
However, enum34 is not meant to be installed in Python versions 3.4+
and causing the `AttributeError: module 'enum' has no attribute 'IntFlag'``
I've submitted patches to these projects so we don't have to do this
manual uninstall in the future.
* Update Dockerfile
Downgrades the Dockerfiles used by Home Assistant to Python 3.5, after
Python 3.6 base image was causing segmentation faults.
See home-assistant/home-assistant#7752
* Make Tradfri discoverable
* Fix lint errors
* Fix bugs and clean up calls to light_control
* Add more color util tests
* Add coap client to dockerfile
* Refactors script/setup_docker_prereqs
Refactors script/setup_docker_prereqs to allow toggling of packages
to being installed
* Adds support for openalpr to Docker
* Updates Dockerfile
Comments ENV directives in order to preserve cache.
* Fixes incorrect position of echo
* Fixes telldus installer by updating apt before pkg install
* Remove build dirs from docker image to keep the layers small
* Create setup_docker_prereqs script to prepare docker env
* Add documentation for required packages, drop colorlog and cython in first step of Dockerfile since it will be installed later on anyway. Drop libglib2.0-dev and libbluetooth-dev
* Also remove early install of colorlog and cython in Dockerfile.dev
* Re-add libglib2.0-dev and libbluetooth-dev for Bluetooth LE