Enasis Network Homie Automate
This project has not released its first major version.
Define desired scenes for groups using flexible conditional plugins.
Documentation
Read project documentation
built using the Sphinx project.
Should you venture into the sections below you will be able to use the
sphinx recipe to build documention in the sphinx/html directory.
Useful and related links
Installing the package
Installing stable from the PyPi repository
pip install enhomie
Installing latest from GitHub repository
pip install git+https://github.com/enasisnetwork/enhomie
Running the service
There are several command line arguments, see them all here.
python -m enhomie.execution.service --help
Here is an example of running the service from inside the project folder within the Workspace project.
python -m enhomie.execution.service \
--config ../../Persistent/enhomie-prod.yml \
--console \
--debug \
--respite_update 120 \
--respite_desire 15 \
--timeout_stream 120 \
--idempotent \
--print_desire \
--print_aspire
Replace ../../Persistent/enhomie-prod.yml with your configuration file.
Deploying the service
It is possible to deploy the project with the Ansible roles located within the Orchestro project! Below is an example of what you might run from that project to deploy this one. However there is a bit to consider here as this requires some configuration.
make -s \
stage=prod limit=all \
ansible_args=" --diff" \
enhomie-install
Or you may use the Ansible collection directly! GitHub, Galaxy
Quick start for local development
Start by cloning the repository to your local machine.
git clone https://github.com/enasisnetwork/enhomie.git
Set up the Python virtual environments expected by the Makefile.
make -s venv-create
Execute the linters and tests
The comprehensive approach is to use the check recipe. This will stop on
any failure that is encountered.
make -s check
However you can run the linters in a non-blocking mode.
make -s linters-pass
And finally run the various tests to validate the code and produce coverage
information found in the htmlcov folder in the root of the project.
make -s pytest
Version management
:warning: Ensure that no changes are pending.
-
Rebuild the environment.
make -s check-revenv -
Update the version.txt file.
-
Push to the
mainbranch. -
Create repository release.
-
Build the Python package.
Be sure no uncommited files in tree.make -s pypackage -
Upload Python package to PyPi test.
make -s pypi-upload-test -
Upload Python package to PyPi prod.
make -s pypi-upload-prod
Metadata
Release files for enhomie 0.14.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| enhomie-0.14.1.tar.gz | 105.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| enhomie-0.14.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 338.5 kB
Release files / enhomie-0.14.1.tar.gz
| Download URL | enhomie-0.14.1.tar.gz |
|---|---|
| Size | 105.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f23d05f1fe95260d778bfb5433a551be09233bb88f40dfb66af2a00be56d4a54
|
|
BLAKE2b-256 checksum How to use checksums |
9868918b731f9d592449737a4152ddce2fa5228fa0b71833d3c6a533e1024aea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.6
|
Release files / enhomie-0.14.1-py3-none-any.whl
| Download URL | enhomie-0.14.1-py3-none-any.whl |
|---|---|
| Size | 233.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
68e7185fba891e4fca44513d3e2cec84b64ca4f5c47fdefb6cf8969c9c7f69cf
|
|
BLAKE2b-256 checksum How to use checksums |
af245695b20efe35923be0b3b785be66e43cc2f6df95e3b6a267aa9bb229f598
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.6
|