summaryrefslogtreecommitdiff
path: root/python-pelops.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 12:50:13 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 12:50:13 +0000
commitb5c9bb4418c11be18919ad1b6d9bd524d3629f47 (patch)
tree39a2289253cc6a6568a0684b222771db1aa25116 /python-pelops.spec
parentcda890bd1d3b603c26b8f1afa06edf777d52918c (diff)
automatic import of python-pelopsopeneuler20.03
Diffstat (limited to 'python-pelops.spec')
-rw-r--r--python-pelops.spec252
1 files changed, 252 insertions, 0 deletions
diff --git a/python-pelops.spec b/python-pelops.spec
new file mode 100644
index 0000000..db56c7f
--- /dev/null
+++ b/python-pelops.spec
@@ -0,0 +1,252 @@
+%global _empty_manifest_terminate_build 0
+Name: python-Pelops
+Version: 0.5.0
+Release: 1
+Summary: Common tools for projects of the the gitlab group pelops.
+License: MIT license
+URL: https://gitlab.com/pelops/pelops/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/86/c4/3d30985e41dfb8c25eb8681bfd9526008538d2ca90a2f0a6e1ef21d66331/Pelops-0.5.0.tar.gz
+BuildArch: noarch
+
+
+%description
+Pelops is a set of microservices that are coupled via mqtt. The idea is
+to provide small programs that are configured and drive raspberry pi
+controlled sensors and actuators. Thus - ideally - rich solutions can be
+built without any programming and with little engineering efford. It can
+be used for example to make a stand alone solution on one raspi, make a
+distributed system where several devices interact (maybe even via
+internet services like AWS IoT), or interact with home automation
+systems like openhab. Focus is on ePapers for display devices (currently
+supported are three epapers/einks from Waveshare).
+ Component Overview
+| Currently, the following microservices are available: \*
+ `Alcathous <https://gitlab.com/pelops/alcathous>`__ - This software
+ subscribes to mqtt-topics that contain raw sensor data and publishes
+ average values for configurable time spans. \*
+ `Argaeus <https://gitlab.com/pelops/argaeus>`__ -
+ ThermostatGUIController/Frontend for a room thermostat with epaper \*
+ `Archippe <https://gitlab.com/pelops/archippe>`__ - Archippe is a data
+ persistence micro service for pelops. Targets are influxdb and
+ csv-files. \* `Copreus <https://gitlab.com/pelops/copreus>`__ - This
+ library provides a framework to write device driver for the raspberry
+ pi that are connected to MQTT. \*
+ `Epidaurus <https://gitlab.com/pelops/epidaurus>`__ - PID controller
+ for thermostat \* `Eurydike <https://gitlab.com/pelops/eurydike>`__ -
+ Eurydike is a simple event detection. Reacts to above-threshold,
+ below-threshold, and outside value-band.
+| \* `Hippasos <https://gitlab.com/pelops/hippasos>`__ - Mqtt
+ microservice to play sounds.
+| \* `Nikippe <https://gitlab.com/pelops/nikippe>`__ - A general purpose
+ gui image generator/display server - takes values from mqtt and sends
+ image to mqtt.
+In production are: \*
+`Hippodamia <https://gitlab.com/pelops/hippodamia>`__ - Hippodamia
+observe the state of all registered microservices (aka watch dog). \*
+`Lysidike <https://gitlab.com/pelops/lysidike>`__ - Lysidike publishes
+incoming mqtt messages to various internet services like email. (todos:
+documentation) \* `Thyestes <https://gitlab.com/pelops/thyestes>`__ -
+Timer microservice. Listens on topics for specific messages, starts a
+timer when such a messages has been received and publishes a predefined
+message after the timer expired. (todos: documentation) \*
+`Skeiron <https://gitlab.com/pelops/skeiron>`__ -
+Forwarding/Echo/Collect/Distribute service. (todos: documentation)
+Planned microservices: \*
+`Pleisthenes <https://gitlab.com/pelops/pleisthenes>`__ - A weather
+microservice (connects to a weather site and provides e.g. local sun
+radiation)
+Further ideas for general purpose services: \*
+And/or/xor/not/nand/nor/xnor - for boolean/int messages and for
+arbitrary evaulation statements on the content of the messages. plus
+timeout (how long is a message valid to be joined with another message
+in such an operation) \* Lambda - takes an incoming message, applies the
+configured lambda function to it, and publishes the result. three
+flavors: lambda code in config, python3 core function, function from an
+arbitrary module. important: functions must accept one parameter and one
+only and return one result that can be handled by the mqtt client
+(paho.mqtt).
+Ideas for controllers / applications: \* A pool pump / solar panel
+controller that heats/cools the pool \* A floor heating system
+controller \* A multiroom humidifier controller
+The project `Pelops <https://gitlab.com/pelops/pelops>`__ provides
+common classes like mqtt-client, pyyaml wrapper. Thus it is not a
+microservice itself.
+
+%package -n python3-Pelops
+Summary: Common tools for projects of the the gitlab group pelops.
+Provides: python-Pelops
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-Pelops
+Pelops is a set of microservices that are coupled via mqtt. The idea is
+to provide small programs that are configured and drive raspberry pi
+controlled sensors and actuators. Thus - ideally - rich solutions can be
+built without any programming and with little engineering efford. It can
+be used for example to make a stand alone solution on one raspi, make a
+distributed system where several devices interact (maybe even via
+internet services like AWS IoT), or interact with home automation
+systems like openhab. Focus is on ePapers for display devices (currently
+supported are three epapers/einks from Waveshare).
+ Component Overview
+| Currently, the following microservices are available: \*
+ `Alcathous <https://gitlab.com/pelops/alcathous>`__ - This software
+ subscribes to mqtt-topics that contain raw sensor data and publishes
+ average values for configurable time spans. \*
+ `Argaeus <https://gitlab.com/pelops/argaeus>`__ -
+ ThermostatGUIController/Frontend for a room thermostat with epaper \*
+ `Archippe <https://gitlab.com/pelops/archippe>`__ - Archippe is a data
+ persistence micro service for pelops. Targets are influxdb and
+ csv-files. \* `Copreus <https://gitlab.com/pelops/copreus>`__ - This
+ library provides a framework to write device driver for the raspberry
+ pi that are connected to MQTT. \*
+ `Epidaurus <https://gitlab.com/pelops/epidaurus>`__ - PID controller
+ for thermostat \* `Eurydike <https://gitlab.com/pelops/eurydike>`__ -
+ Eurydike is a simple event detection. Reacts to above-threshold,
+ below-threshold, and outside value-band.
+| \* `Hippasos <https://gitlab.com/pelops/hippasos>`__ - Mqtt
+ microservice to play sounds.
+| \* `Nikippe <https://gitlab.com/pelops/nikippe>`__ - A general purpose
+ gui image generator/display server - takes values from mqtt and sends
+ image to mqtt.
+In production are: \*
+`Hippodamia <https://gitlab.com/pelops/hippodamia>`__ - Hippodamia
+observe the state of all registered microservices (aka watch dog). \*
+`Lysidike <https://gitlab.com/pelops/lysidike>`__ - Lysidike publishes
+incoming mqtt messages to various internet services like email. (todos:
+documentation) \* `Thyestes <https://gitlab.com/pelops/thyestes>`__ -
+Timer microservice. Listens on topics for specific messages, starts a
+timer when such a messages has been received and publishes a predefined
+message after the timer expired. (todos: documentation) \*
+`Skeiron <https://gitlab.com/pelops/skeiron>`__ -
+Forwarding/Echo/Collect/Distribute service. (todos: documentation)
+Planned microservices: \*
+`Pleisthenes <https://gitlab.com/pelops/pleisthenes>`__ - A weather
+microservice (connects to a weather site and provides e.g. local sun
+radiation)
+Further ideas for general purpose services: \*
+And/or/xor/not/nand/nor/xnor - for boolean/int messages and for
+arbitrary evaulation statements on the content of the messages. plus
+timeout (how long is a message valid to be joined with another message
+in such an operation) \* Lambda - takes an incoming message, applies the
+configured lambda function to it, and publishes the result. three
+flavors: lambda code in config, python3 core function, function from an
+arbitrary module. important: functions must accept one parameter and one
+only and return one result that can be handled by the mqtt client
+(paho.mqtt).
+Ideas for controllers / applications: \* A pool pump / solar panel
+controller that heats/cools the pool \* A floor heating system
+controller \* A multiroom humidifier controller
+The project `Pelops <https://gitlab.com/pelops/pelops>`__ provides
+common classes like mqtt-client, pyyaml wrapper. Thus it is not a
+microservice itself.
+
+%package help
+Summary: Development documents and examples for Pelops
+Provides: python3-Pelops-doc
+%description help
+Pelops is a set of microservices that are coupled via mqtt. The idea is
+to provide small programs that are configured and drive raspberry pi
+controlled sensors and actuators. Thus - ideally - rich solutions can be
+built without any programming and with little engineering efford. It can
+be used for example to make a stand alone solution on one raspi, make a
+distributed system where several devices interact (maybe even via
+internet services like AWS IoT), or interact with home automation
+systems like openhab. Focus is on ePapers for display devices (currently
+supported are three epapers/einks from Waveshare).
+ Component Overview
+| Currently, the following microservices are available: \*
+ `Alcathous <https://gitlab.com/pelops/alcathous>`__ - This software
+ subscribes to mqtt-topics that contain raw sensor data and publishes
+ average values for configurable time spans. \*
+ `Argaeus <https://gitlab.com/pelops/argaeus>`__ -
+ ThermostatGUIController/Frontend for a room thermostat with epaper \*
+ `Archippe <https://gitlab.com/pelops/archippe>`__ - Archippe is a data
+ persistence micro service for pelops. Targets are influxdb and
+ csv-files. \* `Copreus <https://gitlab.com/pelops/copreus>`__ - This
+ library provides a framework to write device driver for the raspberry
+ pi that are connected to MQTT. \*
+ `Epidaurus <https://gitlab.com/pelops/epidaurus>`__ - PID controller
+ for thermostat \* `Eurydike <https://gitlab.com/pelops/eurydike>`__ -
+ Eurydike is a simple event detection. Reacts to above-threshold,
+ below-threshold, and outside value-band.
+| \* `Hippasos <https://gitlab.com/pelops/hippasos>`__ - Mqtt
+ microservice to play sounds.
+| \* `Nikippe <https://gitlab.com/pelops/nikippe>`__ - A general purpose
+ gui image generator/display server - takes values from mqtt and sends
+ image to mqtt.
+In production are: \*
+`Hippodamia <https://gitlab.com/pelops/hippodamia>`__ - Hippodamia
+observe the state of all registered microservices (aka watch dog). \*
+`Lysidike <https://gitlab.com/pelops/lysidike>`__ - Lysidike publishes
+incoming mqtt messages to various internet services like email. (todos:
+documentation) \* `Thyestes <https://gitlab.com/pelops/thyestes>`__ -
+Timer microservice. Listens on topics for specific messages, starts a
+timer when such a messages has been received and publishes a predefined
+message after the timer expired. (todos: documentation) \*
+`Skeiron <https://gitlab.com/pelops/skeiron>`__ -
+Forwarding/Echo/Collect/Distribute service. (todos: documentation)
+Planned microservices: \*
+`Pleisthenes <https://gitlab.com/pelops/pleisthenes>`__ - A weather
+microservice (connects to a weather site and provides e.g. local sun
+radiation)
+Further ideas for general purpose services: \*
+And/or/xor/not/nand/nor/xnor - for boolean/int messages and for
+arbitrary evaulation statements on the content of the messages. plus
+timeout (how long is a message valid to be joined with another message
+in such an operation) \* Lambda - takes an incoming message, applies the
+configured lambda function to it, and publishes the result. three
+flavors: lambda code in config, python3 core function, function from an
+arbitrary module. important: functions must accept one parameter and one
+only and return one result that can be handled by the mqtt client
+(paho.mqtt).
+Ideas for controllers / applications: \* A pool pump / solar panel
+controller that heats/cools the pool \* A floor heating system
+controller \* A multiroom humidifier controller
+The project `Pelops <https://gitlab.com/pelops/pelops>`__ provides
+common classes like mqtt-client, pyyaml wrapper. Thus it is not a
+microservice itself.
+
+%prep
+%autosetup -n Pelops-0.5.0
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-Pelops -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.5.0-1
+- Package Spec generated