Skip to main content

Enasis Network Chatting Robie

Project description

Enasis Network Chatting Robie

This project has not released its first major version.

Barebones service for connecting to multiple upstream chat networks.










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.

Installing the package

Installing stable from the PyPi repository

pip install enrobie

Installing latest from GitHub repository

pip install git+https://github.com/enasisnetwork/enrobie

Running the service

There are several command line arguments, see them all here.

python -m enrobie.execution.service --help

Here is an example of running the service from inside the project folder within the Workspace project.

python -m enrobie.execution.service \
  --config ../../Persistent/enrobie-prod.yml \
  --console \
  --debug \
  --print_command

Replace ../../Persistent/enrobie-prod.yml with your configuration file.

Using the Ainswer plugin

These dependencies are not automatically installed but are required when using the new AinswerPlugin. Install the following when using that.

  • pydantic-ai-slim
  • pydantic-ai-slim[anthropic]
  • pydantic-ai-slim[openai]

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" \
  enrobie-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/enrobie.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.

  1. Rebuild the environment.

    make -s check-revenv
    
  2. Update the version.txt file.

  3. Push to the main branch.

  4. Create repository release.

  5. Build the Python package.
    Be sure no uncommited files in tree.

    make -s pypackage
    
  6. Upload Python package to PyPi test.

    make -s pypi-upload-test
    
  7. Upload Python package to PyPi prod.

    make -s pypi-upload-prod
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

enrobie-0.14.8.tar.gz (93.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

enrobie-0.14.8-py3-none-any.whl (173.9 kB view details)

Uploaded Python 3

File details

Details for the file enrobie-0.14.8.tar.gz.

File metadata

  • Download URL: enrobie-0.14.8.tar.gz
  • Upload date:
  • Size: 93.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for enrobie-0.14.8.tar.gz
Algorithm Hash digest
SHA256 be9106fc5757f7bfd739341b747344a25df7c954de22e2e4d2514722788978cd
MD5 a83d18b7ed01a063bb3a493d48aef762
BLAKE2b-256 6eb5d4bab6e32a13f8c66d7c3dc35fbcae9b4c0f97ef3e330ca175b0a1c6cae7

See more details on using hashes here.

File details

Details for the file enrobie-0.14.8-py3-none-any.whl.

File metadata

  • Download URL: enrobie-0.14.8-py3-none-any.whl
  • Upload date:
  • Size: 173.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for enrobie-0.14.8-py3-none-any.whl
Algorithm Hash digest
SHA256 2e01120f08e07181a958cc3dee27f9d80f48c69b63c7d814f2593a885270cb50
MD5 376d51eb8d7b5d7ded1a6d1a4f58ddf7
BLAKE2b-256 6234175b7c08794e7e03bae19184dcdaf9618bd48933ed79dfab6536fbbf4fa7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page