%global _empty_manifest_terminate_build 0
Name: python-th2-grpc-hand
Version: 2.11.0
Release: 1
Summary: th2_grpc_hand
License: Apache License 2.0
URL: https://github.com/th2-net/th2-grpc-hand
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/29/11/13cc37fa0bd9d61f186e0b4540ef0db0d40b9b6ea81c3037555a5ba75814/th2_grpc_hand-2.11.0.tar.gz
BuildArch: noarch
%description
# th2 gRPC hand library (2.11.0)
This library contains proto messages and `RhBatch` service with RPC methods that are used in [th2 hand](https://github.com/th2-net/th2-hand "th2-hand"). See [proto](src/main/proto "proto") files for details.
Tool generates code from `.proto` files and uploads built packages (`.proto` files and generated code) to specified repositories.
## How to maintain project
1. Make your changes.
2. Up version of Java package in `gradle.properties` file.
3. Up version of Python package in `package_info.json` file.
4. Commit everything.
## How to run project
### Java
If you wish to manually create and publish package for Java, run these command:
```
gradle --no-daemon clean build publish artifactoryPublish \
-Pbintray_user=${BINTRAY_USER} \
-Pbintray_key=${BINTRAY_KEY}
```
`BINTRAY_USER` and `BINTRAY_KEY` are parameters for publishing.
### Python
If you wish to manually create and publish package for Python:
1. Generate services from `.proto` files:
- Download and build [th2 Python service generator](https://github.com/th2-net/th2-python-service-generator "th2-python-service-generator") project with Gradle:
```
gradle clean build
```
- Run th2 Python service generator:
```
java -jar {path_to_jar} -p src/main/proto/{package_name} -w PythonServiceWriter -o src/gen/main/python/{package_name}
```
2. Generate code from `.proto` files and publish everything:
```
pip install -r requirements.txt
python setup.py generate
python setup.py sdist
twine upload --repository-url ${PYPI_REPOSITORY_URL} --username ${PYPI_USER} --password ${PYPI_PASSWORD} dist/*
```
`PYPI_REPOSITORY_URL`, `PYPI_USER` and `PYPI_PASSWORD` are parameters for publishing.
%package -n python3-th2-grpc-hand
Summary: th2_grpc_hand
Provides: python-th2-grpc-hand
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-th2-grpc-hand
# th2 gRPC hand library (2.11.0)
This library contains proto messages and `RhBatch` service with RPC methods that are used in [th2 hand](https://github.com/th2-net/th2-hand "th2-hand"). See [proto](src/main/proto "proto") files for details.
Tool generates code from `.proto` files and uploads built packages (`.proto` files and generated code) to specified repositories.
## How to maintain project
1. Make your changes.
2. Up version of Java package in `gradle.properties` file.
3. Up version of Python package in `package_info.json` file.
4. Commit everything.
## How to run project
### Java
If you wish to manually create and publish package for Java, run these command:
```
gradle --no-daemon clean build publish artifactoryPublish \
-Pbintray_user=${BINTRAY_USER} \
-Pbintray_key=${BINTRAY_KEY}
```
`BINTRAY_USER` and `BINTRAY_KEY` are parameters for publishing.
### Python
If you wish to manually create and publish package for Python:
1. Generate services from `.proto` files:
- Download and build [th2 Python service generator](https://github.com/th2-net/th2-python-service-generator "th2-python-service-generator") project with Gradle:
```
gradle clean build
```
- Run th2 Python service generator:
```
java -jar {path_to_jar} -p src/main/proto/{package_name} -w PythonServiceWriter -o src/gen/main/python/{package_name}
```
2. Generate code from `.proto` files and publish everything:
```
pip install -r requirements.txt
python setup.py generate
python setup.py sdist
twine upload --repository-url ${PYPI_REPOSITORY_URL} --username ${PYPI_USER} --password ${PYPI_PASSWORD} dist/*
```
`PYPI_REPOSITORY_URL`, `PYPI_USER` and `PYPI_PASSWORD` are parameters for publishing.
%package help
Summary: Development documents and examples for th2-grpc-hand
Provides: python3-th2-grpc-hand-doc
%description help
# th2 gRPC hand library (2.11.0)
This library contains proto messages and `RhBatch` service with RPC methods that are used in [th2 hand](https://github.com/th2-net/th2-hand "th2-hand"). See [proto](src/main/proto "proto") files for details.
Tool generates code from `.proto` files and uploads built packages (`.proto` files and generated code) to specified repositories.
## How to maintain project
1. Make your changes.
2. Up version of Java package in `gradle.properties` file.
3. Up version of Python package in `package_info.json` file.
4. Commit everything.
## How to run project
### Java
If you wish to manually create and publish package for Java, run these command:
```
gradle --no-daemon clean build publish artifactoryPublish \
-Pbintray_user=${BINTRAY_USER} \
-Pbintray_key=${BINTRAY_KEY}
```
`BINTRAY_USER` and `BINTRAY_KEY` are parameters for publishing.
### Python
If you wish to manually create and publish package for Python:
1. Generate services from `.proto` files:
- Download and build [th2 Python service generator](https://github.com/th2-net/th2-python-service-generator "th2-python-service-generator") project with Gradle:
```
gradle clean build
```
- Run th2 Python service generator:
```
java -jar {path_to_jar} -p src/main/proto/{package_name} -w PythonServiceWriter -o src/gen/main/python/{package_name}
```
2. Generate code from `.proto` files and publish everything:
```
pip install -r requirements.txt
python setup.py generate
python setup.py sdist
twine upload --repository-url ${PYPI_REPOSITORY_URL} --username ${PYPI_USER} --password ${PYPI_PASSWORD} dist/*
```
`PYPI_REPOSITORY_URL`, `PYPI_USER` and `PYPI_PASSWORD` are parameters for publishing.
%prep
%autosetup -n th2-grpc-hand-2.11.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-th2-grpc-hand -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Wed May 31 2023 Python_Bot - 2.11.0-1
- Package Spec generated