grpc-act-template

'th2 gRPC act template library'

License

License

Categories

Categories

gRPC Net Networking
GroupId

GroupId

com.exactpro.test
ArtifactId

ArtifactId

grpc-act-template
Last Version

Last Version

1.0.5
Release Date

Release Date

Type

Type

pom.sha512
Description

Description

grpc-act-template
'th2 gRPC act template library'
Project URL

Project URL

https://github.com/th2-net/test-grpc-act-template
Source Code Management

Source Code Management

https://github.com/th2-net/test-grpc-act-template

Download grpc-act-template

Dependencies

compile (3)

Group / Artifact Type Version
com.exactpro.th2 : grpc-common jar 3.0.1
com.google.protobuf : protobuf-java-util jar
io.grpc : grpc-stub jar

runtime (5)

Group / Artifact Type Version
io.grpc : grpc-protobuf jar
io.grpc : grpc-core jar
io.grpc : grpc-netty jar
javax.annotation : javax.annotation-api jar 1.3.2
com.exactpro.th2 : grpc-service-generator jar 3.1.5

Project Modules

There are no modules declared in this project.

th2 gRPC act template library

This is the template project for creating custom gRPC act libraries. It contains proto messages and Act service that are used th2 act template. See act_template.proto file for details.
Tool generates code from .proto files and uploads built packages (.proto files and generated code) to specified repositories.

How to transform template

  1. Create a directory with the same name as project name (use underscores instead of dashes) under src/main/proto directory (remove other files and directories if they exist).
  2. Place your custom .proto files in created directory. Pay attention to package specifier and import statements.
  3. Edit release_version and vcs_url properties in gradle.properties file.
  4. Edit rootProject.name variable in settings.gradle file. This will be the name of Java package.
  5. Edit package_info.json file in order to specify name and version for Python package (create file if it's absent).
  6. Edit parameters of setup.py in setup function invocation such as: author, author_email, url. Do not edit the others.

Note that the name of created directory under src/main/proto directory is used in Python (it's a package name).

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 by gradle:
       gradle --no-daemon clean generateProto
    
    You can find the generated files by following path: src/gen/main/services/python
  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.
com.exactpro.test

th2

All components are licensed under Apache-2.0 License

Versions

Version
1.0.5
1.0.3
1.0.2
1.0.1
1.0.0