open-traffic-generator / snappi

Open Traffic Generator SDK in Python and Go
MIT License
69 stars 7 forks source link

For a given .proto file, gosnappi client and gRPC server in non-go language may not always be compatible #137

Closed ashutshkumr closed 2 years ago

ashutshkumr commented 2 years ago

We have hit this issue in multiple instances. Here's the reason why:

Let's take an exampe of otg.proto. The package name is defined as package otg;.

This results in an incompatible API call.

There are two solutions that we need to choose from:

ashutshkumr commented 2 years ago

@ajbalogh need your input on this. @jkristia maybe this affects you too.

ajbalogh commented 2 years ago

The otg.proto that is generated and pushed as part of the open-traffic-generator/models repo is considered to be the source of truth with the expectation that protobuf/grpc generation would use that artifact as the input. The package name is otg not snappi as the snappi name is just a UX package naming convention. The build process for snappi should use the otg artifact or generate the same named artifact so that there would be no conflict. Minor bugs would need to be fixed (copy files, message option extension number declaration). Am i missing anything?

ashutshkumr commented 2 years ago

@ajbalogh that's about it, most probably change will be limited to snappi repo only, so will move this issue to that repo.

alakendu commented 2 years ago

fix should available in https://github.com/open-traffic-generator/snappi/releases/tag/v0.6.16