summaryrefslogtreecommitdiff
path: root/python-config-with-yaml.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-config-with-yaml.spec')
-rw-r--r--python-config-with-yaml.spec268
1 files changed, 268 insertions, 0 deletions
diff --git a/python-config-with-yaml.spec b/python-config-with-yaml.spec
new file mode 100644
index 0000000..c4a6a6e
--- /dev/null
+++ b/python-config-with-yaml.spec
@@ -0,0 +1,268 @@
+%global _empty_manifest_terminate_build 0
+Name: python-config-with-yaml
+Version: 0.1.0
+Release: 1
+Summary: Loads configurations from yaml files
+License: GNU General Public License v3 (GPLv3)
+URL: https://github.com/aitormf/config_with_yaml
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/93/40/7229e9ef6431d54dd5d9f70c5a59bd1ddcfa052192f757a37833b246ae1b/config_with_yaml-0.1.0.tar.gz
+BuildArch: noarch
+
+Requires: python3-PyYAML
+
+%description
+# Config With YAML
+
+Config With YAML is a pure-Python package to load config YAML files.
+
+```python
+import config_with_yaml as config
+
+cfg = config.load("demo.yml")
+
+print (cfg.getProperty("Demo.Motors.Server"))
+print (cfg.getPropertyWithDefault("Demo.Motors.Server2", "Server2"))
+print (cfg)
+```
+Config file content:
+```
+Demo:
+ Motors:
+ Server: ROS # Deactivate, Ice , ROS
+ Proxy: Motors:default -h localhost -p 9001
+ Topic: '/turtlebotROS/mobile_base/commands/velocity'
+ Name: basic_component_pyCamera
+ maxW: 0.7
+ maxV: 4
+
+ Camera:
+ Server: ROS # Deactivate, Ice , ROS
+ Proxy: "CameraL:default -h localhost -p 9001"
+ Format: RGB8
+ Topic: "/TurtlebotROS/cameraL/image_raw"
+ Name: basic_component_pyCamera
+
+ NodeName: demo
+```
+
+Output:
+```
+loading Config file ./demo.yml
+ROS
+Server2
+Demo:
+ Camera:
+ Format: RGB8
+ Name: basic_component_pyCamera
+ Proxy: CameraL:default -h localhost -p 9001
+ Server: ROS
+ Topic: /TurtlebotROS/cameraL/image_raw
+ Motors:
+ Name: basic_component_pyCamera
+ Proxy: Motors:default -h localhost -p 9001
+ Server: ROS
+ Topic: /turtlebotROS/mobile_base/commands/velocity
+ maxV: 4
+ maxW: 0.7
+ NodeName: demo
+```
+
+## Extra Configuration
+
+by default config_with_yaml uses the path to the file that is passed to it, but if you have all the cofiguration files in directory or several, you can set the value of the environment variable **"YAML_CONFIG_PATHS"** with these files separated by *:*, so just put the file name is able to find it.
+
+```shell
+export YAML_CONFIG_PATHS=path/to/folder1:path/to/folder2
+```
+
+
+
+
+%package -n python3-config-with-yaml
+Summary: Loads configurations from yaml files
+Provides: python-config-with-yaml
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-config-with-yaml
+# Config With YAML
+
+Config With YAML is a pure-Python package to load config YAML files.
+
+```python
+import config_with_yaml as config
+
+cfg = config.load("demo.yml")
+
+print (cfg.getProperty("Demo.Motors.Server"))
+print (cfg.getPropertyWithDefault("Demo.Motors.Server2", "Server2"))
+print (cfg)
+```
+Config file content:
+```
+Demo:
+ Motors:
+ Server: ROS # Deactivate, Ice , ROS
+ Proxy: Motors:default -h localhost -p 9001
+ Topic: '/turtlebotROS/mobile_base/commands/velocity'
+ Name: basic_component_pyCamera
+ maxW: 0.7
+ maxV: 4
+
+ Camera:
+ Server: ROS # Deactivate, Ice , ROS
+ Proxy: "CameraL:default -h localhost -p 9001"
+ Format: RGB8
+ Topic: "/TurtlebotROS/cameraL/image_raw"
+ Name: basic_component_pyCamera
+
+ NodeName: demo
+```
+
+Output:
+```
+loading Config file ./demo.yml
+ROS
+Server2
+Demo:
+ Camera:
+ Format: RGB8
+ Name: basic_component_pyCamera
+ Proxy: CameraL:default -h localhost -p 9001
+ Server: ROS
+ Topic: /TurtlebotROS/cameraL/image_raw
+ Motors:
+ Name: basic_component_pyCamera
+ Proxy: Motors:default -h localhost -p 9001
+ Server: ROS
+ Topic: /turtlebotROS/mobile_base/commands/velocity
+ maxV: 4
+ maxW: 0.7
+ NodeName: demo
+```
+
+## Extra Configuration
+
+by default config_with_yaml uses the path to the file that is passed to it, but if you have all the cofiguration files in directory or several, you can set the value of the environment variable **"YAML_CONFIG_PATHS"** with these files separated by *:*, so just put the file name is able to find it.
+
+```shell
+export YAML_CONFIG_PATHS=path/to/folder1:path/to/folder2
+```
+
+
+
+
+%package help
+Summary: Development documents and examples for config-with-yaml
+Provides: python3-config-with-yaml-doc
+%description help
+# Config With YAML
+
+Config With YAML is a pure-Python package to load config YAML files.
+
+```python
+import config_with_yaml as config
+
+cfg = config.load("demo.yml")
+
+print (cfg.getProperty("Demo.Motors.Server"))
+print (cfg.getPropertyWithDefault("Demo.Motors.Server2", "Server2"))
+print (cfg)
+```
+Config file content:
+```
+Demo:
+ Motors:
+ Server: ROS # Deactivate, Ice , ROS
+ Proxy: Motors:default -h localhost -p 9001
+ Topic: '/turtlebotROS/mobile_base/commands/velocity'
+ Name: basic_component_pyCamera
+ maxW: 0.7
+ maxV: 4
+
+ Camera:
+ Server: ROS # Deactivate, Ice , ROS
+ Proxy: "CameraL:default -h localhost -p 9001"
+ Format: RGB8
+ Topic: "/TurtlebotROS/cameraL/image_raw"
+ Name: basic_component_pyCamera
+
+ NodeName: demo
+```
+
+Output:
+```
+loading Config file ./demo.yml
+ROS
+Server2
+Demo:
+ Camera:
+ Format: RGB8
+ Name: basic_component_pyCamera
+ Proxy: CameraL:default -h localhost -p 9001
+ Server: ROS
+ Topic: /TurtlebotROS/cameraL/image_raw
+ Motors:
+ Name: basic_component_pyCamera
+ Proxy: Motors:default -h localhost -p 9001
+ Server: ROS
+ Topic: /turtlebotROS/mobile_base/commands/velocity
+ maxV: 4
+ maxW: 0.7
+ NodeName: demo
+```
+
+## Extra Configuration
+
+by default config_with_yaml uses the path to the file that is passed to it, but if you have all the cofiguration files in directory or several, you can set the value of the environment variable **"YAML_CONFIG_PATHS"** with these files separated by *:*, so just put the file name is able to find it.
+
+```shell
+export YAML_CONFIG_PATHS=path/to/folder1:path/to/folder2
+```
+
+
+
+
+%prep
+%autosetup -n config-with-yaml-0.1.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-config-with-yaml -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.1.0-1
+- Package Spec generated