:warning: This project has not released its first major version.
Define desired scenes for groups using flexible conditional plugins.
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.
Installing stable from the PyPi repository
pip install enhomie
Installing latest from GitHub repository
pip install git+https://github.com/enasisnetwork/enhomie
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
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
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.
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 \
limit=all \
orche_files=../../Persistent/orchestro-prod.yml \
ansible_args=" --diff" \
enhomie-install
:warning: Ensure that no changes are pending.
Rebuild the environment.
make -s check-revenv
Update the version.txt file.
Push to the main
branch.
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