Commit Graph

300 Commits (65deaa1daf7bb913aeb63800bdd9ba0d3919bc25)

Author SHA1 Message Date
MartinHjelmare 5ff6eb8b9c Fix logging lowest level
* Set lowest logging level to NOTSET in enable_logging(), bootstrap.py,
	to enable setting a lower logging level than INFO in the logger
	component.
2015-12-10 02:56:05 +01:00
Paulus Schoutsen fabd0ced3f Make DEPENDENCIES optional for components 2015-11-26 13:11:59 -08:00
Paulus Schoutsen 295f27d259 Only delete lib dir in config upgrade if exists 2015-11-15 02:16:52 -08:00
Paulus Schoutsen 71e4283a2e Remove lib directory in version upgrade 2015-11-15 02:05:46 -08:00
Paulus Schoutsen e4c3d47dbf Expose API to view error log 2015-11-07 01:44:02 -08:00
Paulus Schoutsen 68c2b539ee More flexible domain config extraction 2015-09-28 23:09:05 -07:00
Paulus Schoutsen 19d40612e6 Add home_range to device tracker 2015-09-20 09:35:03 -07:00
Paulus Schoutsen f9b17ab026 Device tracker rewrite 2015-09-09 23:37:15 -07: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 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 fb4121d4b4 Fix components being loaded twice 2015-08-30 15:08:03 -07:00
Paulus Schoutsen a5a1f30798 Make launch more smooth 2015-08-29 23:02:07 -07: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
Paulus Schoutsen 1b89a502c4 Extract core into own submodule 2015-08-16 20:44:46 -07:00
Paulus Schoutsen d2b5f429fe Remove deprecated code 2015-08-04 16:21:09 -04:00
Paulus Schoutsen 7870e9a5e2 Minor cleanup core 2015-08-03 17:05:33 +02:00
Paulus Schoutsen b346f6e8ad Allow installing component dependencies on the fly 2015-07-07 00:00:21 -07:00
eagleamon bcb4766f95 adds a coloourful log output 2015-06-11 15:01:11 +02:00
Paulus Schoutsen 73dab5a398 Make customize parsing more robust 2015-06-02 21:31:50 -07:00
Paulus Schoutsen a4e0a7f235 Fix platform discovery not working 2015-05-14 21:36:12 -07:00
Paulus Schoutsen c523a0b509 Improve error message when prepare_setup_platform fails. 2015-05-11 22:29:53 -07:00
Paulus Schoutsen 4eeaa16f16 Convert some double to single quotes. 2015-05-11 22:23:38 -07:00
Paulus Schoutsen e630476f9f Allow platforms to specify dependencies 2015-05-11 22:23:20 -07:00
Paulus Schoutsen e0ecb64a10 Use UTC as the internal datetime format 2015-04-28 19:12:05 -07:00
Paulus Schoutsen ad016de653 Move config code to separate module + test cover it 2015-04-26 10:05:01 -07:00
Ryan Kraus 8255164eda Rearranged visibility control and image control in the configuration file. Now a single generic clause can be used to customize any attribute. 2015-04-25 14:47:15 -04:00
Ryan Kraus f77b3dbd0a Added decorate option to configuration file to allow a user to set custom images for different entities. 2015-04-25 00:39:35 -04:00
Paulus Schoutsen b855f422ef Tweak visibility config 2015-04-23 06:41:41 -07:00
Ryan Kraus ff3dacedc0 Moved card visibility logic out of the Entity class and into a VisibilityABC. Then made the Group class inherit the VisibilityABC. No duplication of code now. This is definitely better. 2015-04-22 21:21:50 -04:00
Ryan Kraus 8fcf814eb6 Changed visbility property in configuration.yaml to a hash instead of a list of a single hash. 2015-04-22 21:07:23 -04:00
Ryan Kraus b20424261c 1) Performed many pylint and flake8 fixes to clean up isy994 integration and hidden entities addition. 2) Added necessary code to allow groups to also be hidden. 3) Made most of the weather data from the isy994 component be hidden by default. 2015-04-15 02:05:34 -04:00
Ryan Kraus a3d6972268 1) Added basic back-end framework for supporting hidden entities. 2) Enabled hidden suggestions in the isy994 component entities. 2015-04-14 22:57:32 -04:00
Paulus Schoutsen 2863c2d593 Made bootstrap.setup_component more robust 2015-03-21 22:06:59 -07:00
Paulus Schoutsen 58812b326c Move hass.local_api and hass.components to config object 2015-03-21 22:06:59 -07:00
Paulus Schoutsen 7a7f486cb2 Rename config.get_config_path to config.path 2015-03-19 12:27:56 -07:00
Paulus Schoutsen 9b643d57f0 ps: Add a global config object to Home Assistant 2015-03-18 23:02:58 -07:00
Paulus Schoutsen a2558972b9 Empty configuration.yaml no longer crashes setup 2015-03-16 22:20:35 -07:00
theolind 1206c2113c Fixed style error, a line was too long 2015-02-28 20:31:26 +01:00
theolind 461e0d0314 Now converting config values to dictionaries if they are None 2015-02-28 20:17:50 +01:00
theolind 8da1fb1d74 Added example yaml config file, removed old example config, fixed style violation in bootstrap.py 2015-02-28 18:59:45 +01:00
theolind f2b602c7ec Added logic to main that prefers .yaml-config over .conf 2015-02-28 17:42:23 +01:00
theolind 223d2c2c3f Added support for YAML files, now with included python modules 2015-02-28 17:05:38 +01:00
theolind 356732189c Added support for YAML configuration files 2015-02-28 16:56:58 +01:00
Paulus Schoutsen 7dd7c489e8 Fire event for loading component/adding service 2015-02-13 22:49:56 -08:00
Paulus Schoutsen 13ac71bdf0 Clean up http related components 2015-01-30 08:26:06 -08:00
Paulus Schoutsen 8feeafd8a3 Refactor http into frontend and api component 2015-01-29 23:56:21 -08:00
Paulus Schoutsen 5f0f06b22d Add command-line toggle to run in demo mode 2015-01-17 22:23:07 -08:00
Paulus Schoutsen 8c62ae4ce5 Integrate add worker to bootstrap.setup_component 2015-01-14 23:18:44 -08:00
Paulus Schoutsen ba179bc638 Automatic discovery and setting up of devices 2015-01-09 00:07:58 -08:00
Paulus Schoutsen 970014588a New strategy for defining number of used threads
Number of worker threads is 2 + 1 for each component that polls devices.
2014-12-16 21:46:02 -08:00
Paulus Schoutsen e2b434b24e Log file now also contains warnings 2014-12-12 08:15:34 -08:00
Paulus Schoutsen 0527760e9b Refactor: code moved to new helper and constants file. Also adds support for multiple types for switch/light components. 2014-12-06 23:57:02 -08:00
Paulus Schoutsen 5fe73cf33e Made dependency loading more robust 2014-11-28 15:36:21 -08:00
Paulus Schoutsen 1e136a2416 Logging is more efficient 2014-11-08 13:59:40 -08:00
Paulus Schoutsen a9ee2f9c54 Refactor: loading of components now done in a seperate module + better error reporting 2014-11-04 23:34:19 -08:00
Paulus Schoutsen 506496743d Cleaning up the code 2014-10-24 23:44:00 -07:00
Paulus Schoutsen 7eafa5805a In rare occasion the group component would not load 2014-10-22 08:12:32 -07:00
Paulus Schoutsen c69b9aefec Bug fix: group not always loaded 2014-10-21 23:51:23 -07:00
Paulus Schoutsen 17eefcffbe Home Assistant no longer crashes if it cannot write its log file 2014-09-22 21:44:26 -05:00
Paulus Schoutsen d570aeef33 Configuration goes now into a single directory 2014-09-20 21:19:39 -05:00
Paulus Schoutsen 997c2e8ef6 Components+configuration now loaded dynamically
A major change to the bootstrapping of Home Assistant decoupling the
knowledge in bootstrap for a more dynamic approach. This refactoring
also prepares the code for different configuration backends and the
loading components from different places.
2014-08-13 14:28:45 +02:00
Paulus Schoutsen 50b492c64a Remote instances are now 100% operational 2014-04-29 00:30:31 -07:00
Paulus Schoutsen b30aeb1777 Merge pull request #3 from fingon/process-source-up
Added a simple process state monitor
2014-04-24 14:47:07 -07:00
Markus Stenberg 88fd75b4c7 Addressed the comments in the issue. pep8+pylint seem fine now. (still works, too.) 2014-04-24 17:13:57 +03:00
Markus Stenberg 39d1fad8cc Merge remote-tracking branch 'up/master' into process-source-up 2014-04-24 17:00:46 +03:00
Markus Stenberg fc6c2fbc18 Merge remote-tracking branch 'up/master' into luci-checker 2014-04-24 16:31:03 +03:00
Paulus Schoutsen 2e10d7223a Re-organized core for better reusability 2014-04-24 00:40:45 -07:00
Markus Stenberg e36a53eea6 Added simple process state monitor source. 2014-04-23 23:55:22 +03:00
Paulus Schoutsen 3757ddf9df Add option to set fixed hosts for chromecasts instead of discovery 2014-04-21 17:58:58 -07:00
Markus Stenberg ed31b6a527 Added LuciDeviceScanner to scan OpenWrt Luci-RPC enabled router's state. 2014-04-21 22:51:50 +03:00
Paulus Schoutsen ef6d862671 Further Python 3 migration 2014-04-14 23:48:00 -07:00
Paulus Schoutsen 7e06d535ab Ported codebase to Python 3. Long Live Python 3! 2014-04-14 00:10:31 -07:00
Paulus Schoutsen 8fdf2d608a Cleanup of core services 2014-04-13 12:59:45 -07:00
Paulus Schoutsen 90769fc0eb Lights now support profiles 2014-03-26 00:20:02 -07:00
Paulus Schoutsen 6063ffeb5b Added WeMo support 2014-03-23 12:03:34 -07:00
Paulus Schoutsen 75a0498080 Upgraded to use new version of pychromecast 2014-03-11 22:45:05 -07:00
Paulus Schoutsen 086cf77443 Only wipe old logging file when reason to write new one. 2014-01-29 21:41:03 -08:00
Paulus Schoutsen 24b2fba170 Errors are now being logged to the file home-assistant.log 2014-01-29 18:44:39 -08:00
Paulus Schoutsen 097a51abc6 Refactored component 'general' into components.__init__ 2014-01-23 23:26:00 -08:00
Paulus Schoutsen 0fc3d359cb Moved stuff away from core. Made component interface more uniform. 2014-01-23 22:03:13 -08:00
Paulus Schoutsen 87817de805 PEP8 style fix for bootstrap 2014-01-23 21:34:08 -08:00
Paulus Schoutsen 36e28dbc80 Bootstrap only loads modules into memory that it will init 2014-01-23 17:46:29 -08:00
Paulus Schoutsen e9e1b007ed RENAME: StateMachine tracks now entities, not categories. 2014-01-19 23:37:40 -08:00
Paulus Schoutsen 48026c28c1 Added state groups and migrated code base to use them. 2014-01-04 17:55:05 -08:00
Paulus Schoutsen 367433acb2 Some code cleanup 2014-01-04 13:48:17 -08:00
Paulus Schoutsen e3b00ffc71 Added support for Netgear wireless routers (tested with R6300) 2013-12-11 20:43:26 -08:00
Paulus Schoutsen dd271febae Reorg: Merged observers, actors and HTTPInterface into components 2013-12-11 00:07:30 -08:00
Paulus Schoutsen 8a0ca534a2 Moved actor helper functions to observer package 2013-12-10 00:16:51 -08:00
Paulus Schoutsen aedcaf04a4 Lights now fully controlled via statemachine and services 2013-12-09 23:41:44 -08:00
Paulus Schoutsen 28a6400d89 Track states of lights in state machine. 2013-12-07 12:57:27 -08:00
Paulus Schoutsen 08f4c70b4e Added tracking state of ChromeCast 2013-12-07 11:42:13 -08:00
Paulus Schoutsen 3641d2ca24 EventBus is now Bus that handles Events and Services 2013-11-19 23:48:08 -08:00
Paulus Schoutsen 483546a31d Code according to PEP8 standard 2013-11-10 16:46:48 -08:00
Paulus Schoutsen 054d14d5de Bootstrapper now does not need a host option to load Hue 2013-10-31 18:30:45 -07:00
Paulus Schoutsen 05472481c5 Making the config bootstrap more verbose about what started 2013-10-21 22:06:22 -07:00
Paulus Schoutsen 0d156ecbf0 Moved bootstrap code to a seperate bootstrap module. 2013-10-13 10:42:22 -07:00