Script collection to sync data from local sources to a wattro node
Project description
Wattro Sync
Ermöglicht es, Daten aus einer lokalen Quelle mit Wattro zu synchronisieren.
Voraussetzung
- Verbindung zu wattro (https) und Quellsystem
- python >= 3.10 und pip
Installation
pip install wattro-sync
Einrichten
Die zentrale Konfigurationsdatei
Die Synchronisation beruht auf einer Konfigurationsdatei, welche mit python -m wattro_sync.setup ZIEL QUELLE
erzeugt
oder aktualisiert werden kann (siehe python -m wattro_sync.setup --help
für alle gültigen Optionen).
Im Prozess werden je nach Ziel- und Quelltyp verschiedene Eingaben abgefragt und die Datenverfügbarkeit geprüft. Nur gültige Werte werden in die Konfigurationsdatei geschrieben.
ACHTUNG
Für Importe aus Mosaik muss aus technischen Gründen ein View angesporchen werden, welcher
- die Datensätze auf maximal 2k beschränkt und
- die Datensätze nach Änderungsdatum sortiert
Die Konfigurationsdatei kann von Hand angepasst werden.
Mit python -m wattro_sync.sync --dry
kann geprüft werden, ob die Synchronisation wie erwartet arbeitet.
Mail Infos
Um Informationen zum Erfolg der Synchornisation zu bekommen, können Mails verschickt werden. Das "log_level" entspricht dabei einem numerischen Wert nach dem Python Log Level Schema.
Insbesondere:
Level | numerischer Wert | Mail wird versendet bei... |
---|---|---|
ERROR | 40 | Fehler beim Synchronisieren |
INFO | 20 | Änderung von Datensätzen |
DEBUG | 10 | Aufruf des Scripts |
Synchronisation
Mit python -m wattro_sync.sync
werden die Daten synchronisiert.
Siehe python -m wattro_sync.sync --help
für mehr.
Development
Pre Commit tooling
# requires black, mypy and bandit to be installed (via pip)
# none of the following commands should produce output on the second run.
# lint
black wattro_sync -q
# search for typing issues
mypy wattro_sync --no-error-summary --config-file mypy.ini
# search for common issues
bandit -r wattro_sync -c bandit.yaml -q
Build
# requires build and twine to be installed (via pip)
python -m build
twine upload dist/*
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
Built Distribution
Hashes for wattro_sync-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 42bc67938c5c1ccbe5af897bec698103267f737d02c168549e6c6d72c68761d7 |
|
MD5 | de02b5baecfeabe9b8f53f90bf588b0d |
|
BLAKE2b-256 | 624f783246c92c0d39222530b43eb65a88533f2deaf20f37c5b92dd85633a11e |