python3 -m pip install
git clone git@github.com:alanmehio/rf-surveillance-node.git
cd rf-surveillance-node
pip install -e .
Then, for any changes in the code you can execute it from command line
rfnode setting.json -vvv -ld /home/alan/tmp
Development Notes
Testing, Documentation Building, Scripts, CI/CD, Static Code Analysis for this project.
Test Suite, using `pytest`_, located in tests dir
Parallel Execution of Unit Tests, on multiple cpu’s
Documentation Pages, hosted on readthedocs server, located in docs dir
CI(Continuous Integration)/CD(Continuous Delivery) Pipeline, running on Github Actions, defined in .github/
Test Job Matrix, spanning different platform’s and python version’s
Platforms: ubuntu-latest
Python Interpreters: 3.13
Continuous Deployment
Production
Python Distristribution to `pypi.org`_, on tags v*, pushed to main branch
Docker Image to `Dockerhub`_, on every push, with automatic Image Tagging
Staging
Python Distristribution to `test.pypi.org`_, on “pre-release” tags v*-rc, pushed to release branch
Configurable Policies for Docker, and Static Code Analysis Workflows
Automation, using `tox`_, driven by single tox.ini file
Code Coverage measuring
Build Command, using the `build`_ python package
Pypi Deploy Command, supporting upload to both `pypi.org`_ and `test.pypi.org`_ servers
Type Check Command, using `mypy`_
Lint Check and Apply commands, using the fast `Ruff`_ linter, along with `isort`_ and `black`_
Prerequisites
You need to have Python and PySide6 installed for Development
API Documentation
We follow Google style documentation for packages, modules, classes, methods