Skip to main content

Software Framework for Task Automation and Scheduling

Project description

Sonaris
Sonaris Automation Framework

Sonaris is a hardware device control platform developed to control lab devices and provide basic scheduling and monitoring utilities in a lab setting.

The device hardware written are at the moment quite limited and support only DG4202 Signal Generator and the EDUX1002A Oscilloscope, written to facilitate a thesis project.

Dependencies

To setup the environment for env variables used in the app

On Linux you might need to install a few packages:

sudo apt-get update
sudo apt-get install libgl1 libegl1 ffmpeg libsm6 libxext6

On development environments or running from source:

python etc/env.py

To setup dependencies on the terminal:

poetry install --no-root
poetry shell
# Running the app
python -m sonaris run --hardware-mock --grafana

The generated .env file will look as such:

WORKINGDIR='C:/source/sonaris'
DATA='C:/source/sonaris/data'
PYTHONPATH='C:\source\sonaris\frontend\src;C:\source\sonaris\src'
ASSETS='C:/source/sonaris/frontend/assets'

Run Flags

Usage: python -m sonaris run [OPTIONS]

  Run the Sonaris application.

Options:
  -hm, --hardware-mock  Run the app in hardware mock mode.
  --grafana             Start Grafana container alongside the application.
                        Requires Docker.
  --help                Show this message and exit.

Installing and Running Sonaris

A stable distribution of Sonaris

pip install sonaris

When not utilizing a .env file it will attempt to use $HOME/.sonaris

Running the app

python -m sonaris run

Running the app from source

poetry install --no-root
poetry run python -m sonaris run

Running the app for hardware-mock

poetry run python -m sonaris run --hardware-mock

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

sonaris-0.1.5.tar.gz (68.3 kB view hashes)

Uploaded Source

Built Distribution

sonaris-0.1.5-py3-none-any.whl (87.8 kB view hashes)

Uploaded Python 3

Supported by

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