1
mirror of https://github.com/home-assistant/core synced 2024-07-09 04:58:30 +02:00
Commit Graph

65 Commits

Author SHA1 Message Date
Alexander Fortin
ac69db8133 Move hardcoded required Python version into homeassistant.const 2016-02-28 05:41:03 +01:00
Paulus Schoutsen
e80309c03c Fix imports (using isort) 2016-02-18 21:27:50 -08:00
Ian Copp
e53785f30c Fix __main__.py permissions change 2016-02-10 21:20:56 -08:00
Ian Copp
c9c15c4cf7 Fix comment phrasing
Somehow I left out the "some". Whoops.
2016-02-10 11:32:56 -08:00
Ian Copp
3046bfce7b Add small time delay to restart-osx command 2016-02-10 11:29:25 -08:00
Per Sandström
d867d26612 Merge pull request #1168 from persandstrom/sigterm_handler
fix sigterm crash
2016-02-08 19:27:26 +01:00
Per SandstrÃom
564e328698 fix sigterm crash 2016-02-08 18:09:46 +00:00
Ryan Kraus
11a2b8888b Fixes for issue #1114
1. Moved RESTART_EXIT_CODE to constants so it can safely be used by
__main__.py.
2. Allowed __main__/main to return the desired exit code.
3. Forwarded the child processes exit code to the parent process to be
duplicated.
4. Added —debug flag to pass command to force Home Assistant to run in
only one process. A warning is printed to STDERR to indicate HASS is in
debug mode. Another is printed if HASS requests a restart in debug
mode. A restart request in debug mode will quit.
5. Added an argument to __main__/main/setup_and_run_hass to indicate
that it is running in the top process. This tells it to return the exit
code rather than exiting.
2016-02-06 09:48:36 -05:00
Ryan Kraus
b56369855a Cleaned up restart handling in __main__.py
1. Fixed logged message about SIGTERM binding failure.
2. Set to only restart HASS with an exit code of 100.
3. Fixed typo in comment.
2016-01-29 22:11:11 -05:00
Ryan Kraus
519abbbfa2 Better handling of second KeyboardInterrupt
Now the second KeyboardInterrupt will be cleanly handled by the parent
process.
2016-01-26 22:41:57 -05:00
Ryan Kraus
b596fa33d6 Implemented restart service
Implemented an OS and environment safe restart service. This works by
running Home Assistant in a child process. If the child process
terminates with an exit code > 0, HASS is restarted. SIGTERM and
KeyboardInterrupts to the parent process are forwarded to the child
process. KeyboardInterrupts will only be forwarded once. The second
KeyboardInterrupt will be handled by the parent.
2016-01-26 22:39:59 -05:00
Jon Maddox
e0c1885a71 add blank line 2015-09-17 03:52:04 -04:00
Jon Maddox
d25a42426a add a way to restart on os x 2015-09-17 03:25:36 -04:00
Jon Maddox
bb172d8c98 indention 2015-09-15 02:58:13 -04:00
Jon Maddox
acb288f9e7 error handling when writing 2015-09-15 02:54:22 -04:00
Jon Maddox
c7565baa6d NOPE 2015-09-15 02:54:11 -04:00
Jon Maddox
fb29611c15 🔥 codecs 2015-09-15 02:51:23 -04:00
Jon Maddox
37cd62447e let it get overwritten 2015-09-15 02:50:15 -04:00
Jon Maddox
5cbcd72912 dupe 2015-09-15 02:48:23 -04:00
Jon Maddox
8bba0b88fd blocks! 2015-09-15 02:46:06 -04:00
Jon Maddox
3b27bef1ac DOCS 2015-09-15 02:35:20 -04:00
Jon Maddox
1fc2204ca9 get the right path 2015-09-15 02:30:19 -04:00
Jon Maddox
834ce5269d we don't actually have to do this 2015-09-15 02:30:13 -04:00
Jon Maddox
fcad068016 strip the dash 2015-09-15 02:17:01 -04:00
Jon Maddox
e12cc2fbbf attempts at dodging pep8 terror 2015-09-15 02:12:31 -04:00
Jon Maddox
9588fcc5cc install scripts 2015-09-15 02:09:02 -04:00
Andrew Thigpen
2e636f598e Add option to rotate log file daily.
Adds a command line option to rotate the log daily at midnight and
retain up to the specified amount of days.
2015-09-04 19:52:59 -05:00
Andrew Thigpen
6519e589b5 Add option to skip pip install on startup.
Since the requirements only change when the software is updated,
this adds a command line switch to disable pip installs on
startup.  The default behavior is maintained when the switch is
not specified.  Skipping pip helps a lot with startup on older RPi
hardware.
2015-09-04 16:50:57 -05:00
Ryan Kraus
7992882fa3 Cleanup PID checking logic and write PID logic. 2015-09-01 03:29:07 -04:00
Ryan Kraus
4ca8f184e6 Updated Debian daemon script. 2015-09-01 03:22:43 -04:00
Ryan Kraus
5b06e8d25e Daemon handling cleanup.
More cleanly handling whether a PID file should be checked.
Fatal Error on PID file IOError.
Pylint fix to bootstrap.
2015-09-01 02:37:52 -04:00
Ryan Kraus
ff470c8ffe Added core daemon function as flags.
Created three additional flags for the hass command:
-v -  Toggle verbose log file output
—pid-file -  Specify PID file path
—daemon -  Launch as daemon (nix only)

The core now binds to SIGQUIT on nix systems to trigger a clean
shutdown.

Modified HTTP server to write logging messages through the logging
module.
2015-09-01 02:12:00 -04:00
Paulus Schoutsen
9eefa67035 Add Python 3.4 check back 2015-08-31 08:53:59 -07:00
Paulus Schoutsen
9acf3db435 Improved console output for new users 2015-08-30 21:24:10 -07:00
Paulus Schoutsen
81466246cf Add --version command line argument 2015-08-30 00:59:27 -07:00
Paulus Schoutsen
fc6613ffb1 Fix documentation in __main__ 2015-08-29 23:35:19 -07:00
Paulus Schoutsen
a5a1f30798 Make launch more smooth 2015-08-29 23:02:07 -07:00
Ryan Kraus
bea81ddd92 Minor tweaks
Moved another import to the top of main.
Forced an exit code of 1 when there is an error initializing.
2015-08-29 23:31:33 -04:00
Ryan Kraus
f5b98c86f0 Mostly PyLint and Flake8 updates.
Rewrote imports of exceptions to be from the exceptions module.
Made nmap scanner check for libnmap dependency without crashing.
Various flake8 and pylint updates.
2015-08-29 22:34:35 -04:00
Ryan Kraus
0b6358e759 Implemented comments from Paulus.
Revised main to use frontend and demo strings rather than importing
their domains.
Removed submodule validation.
Moved local library mounting to the bootstrap module and out of core.
Added requirements_all.txt for all dependencies.
Made core dependencies looser.
Small updates to setup.py.
2015-08-29 22:19:52 -04:00
Ryan Kraus
6fdf9b8d7c Many changes to cleanup config directory and lib installations.
Cleaned up default config directory determination.
Made bootstrap creators for HA always set config directory.
Made bootstrap creators set the local library in the Python Path.
Moved all exceptions to their own file to make imports easier.
Moved default configuration directory be in the users’ profile.
Moved pip installs to be done to a lib folder in the config directory.
Reduced requirements.txt to only the barebones reqs.
2015-08-29 21:11:24 -04:00
Ryan Kraus
18e32165a4 Cleaned up main file to remove dependency management. 2015-08-29 20:06:54 -04:00
Paulus Schoutsen
e277decd4c Add a check to ensure pip is installed 2015-07-19 19:00:48 -07:00
Paulus Schoutsen
a3906242e9 Make life of Windows users a bit better 2015-07-19 18:32:35 -07:00
Paulus Schoutsen
c532a28a98 Increase robustness dependency installation 2015-07-15 18:37:24 -07:00
Paulus Schoutsen
2b23eec0f7 Fix pip 1.5.4 compatibility 2015-07-10 21:24:28 -07:00
Paulus Schoutsen
90739c9df9 Auto install core dependencies on boot 2015-07-06 23:59:21 -07:00
Paulus Schoutsen
f3f2240e4a Remove usage of deprecated hass.local_api in __main__ 2015-05-15 23:28:16 -07:00
Paulus Schoutsen
09f1983d40 Update dependency check in __main__ 2015-04-30 22:44:24 -07:00
Paulus Schoutsen
ad016de653 Move config code to separate module + test cover it 2015-04-26 10:05:01 -07:00