From 4e6674cd610d7a5a3e6696970f8f999818f23f28 Mon Sep 17 00:00:00 2001 From: Mario Voigt Date: Fri, 14 Feb 2025 14:00:03 +0100 Subject: [PATCH] Update README to reflect installation notes and general things --- README.md | 64 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 49 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index a7e2462..877c222 100644 --- a/README.md +++ b/README.md @@ -1,30 +1,64 @@ FabFire Adapter === -The FabFire adapter translates mqtt messages from the reader hardware to api calls to bffhd. -# Usage -## Configuration in `config.toml` +The FabFire adapter translates MQTT messages from the FabReader hardware to API calls to bffhd. + +# Installation + +## With python3-venv + +Easy, native installation without overhead is possible with python3 virtual environment: + +```shell +cd /opt/fabinfra/adapters/ +git clone https://gitlab.com/fabinfra/fabaccess/fabfire_adapter.git --recursive +cd fabfire_adapter/ +python3 -m venv env +. env/bin/activate +pip3 install -r requirements.txt +``` + +## With the Dockerfile and Podman + +You can also install the fabfire adapter using Docker or Podman: + +```shell +podman build -f Dockerfile -t fabinfra/fabfire_adapter +podman run localhost/fabinfra/fabfire_adapter:latest + +#cleanup if required: +podman system prune +``` + +# Configuration + +Edit the config file example provided in `config/config.toml` + 1. Set `hostname` and `port` for your MQTT Broker and bffhd instance -2. Add your readers to the `[readers]` section. Every reader needs a unique subsection name: -```toml -[readers] + +2. Add your desired readers to the `[readers]` section. Every reader needs a unique subsection name: + + ```toml + [readers] [readers.REPLACEME] id = "111" machine = "urn:fabaccess:resource:Testmachine" - + [readers.REPLACEMETOO] id = "222" machine = "urn:fabaccess:resource:Another" -``` + ``` + +# Running + +1. Run the adapter: + +2. ```shell + python3 main.py + ``` -## Running -1. Install the requirements with `pip install -r requirements.txt` -2. Run the adapter with at least python 3.7 -```shell -python3 main.py -``` 3. The adapter has to remain running for the readers to work # Provisioning -See the [provisioning tool](https://gitlab.com/fabinfra/fabaccess/FabFire-Provisioning-Tool) repo. \ No newline at end of file +See the [provisioning tool](https://gitlab.com/fabinfra/fabaccess/FabFire-Provisioning-Tool) repo.