GAPIC (Generated API Client) Showcase: an API to test your gRPC clients.
GAPIC Showcase is an API to allow you to test a gRPC server and client. It is a simple showcase of an API that follows the Cloud APIs design guide. This project provides a server and client implementation of the API that can be run locally.
The GAPIC Showcase CLI can be installed using three different mechanisms: pulling a docker image from Google Container Registry, downloading the compiled binary from our our releases page, or simply by installing from source using go.
$ docker pull gcr.io/gapic-images/gapic-showcase:0.2.4
$ docker run \
--rm \
-p 7469:7469/tcp \
-p 7469:7469/udp \
gcr.io/gapic-images/gapic-showcase:0.2.4 \
--help
> Root command of gapic-showcase
>
> Usage:
> gapic-showcase [command]
>
> Available Commands:
> completion Emits bash a completion for gapic-showcase
> echo This service is used showcase the four main types...
> help Help about any command
> identity A simple identity service.
> messaging A simple messaging service that implements chat...
> run Runs the showcase server
> testing A service to facilitate running discrete sets of...
>
> Flags:
> -h, --help help for gapic-showcase
> -j, --json Print JSON output
> -v, --verbose Print verbose output
> --version version for gapic-showcase
>
> Use "gapic-showcase [command] --help" for more information about a command.
$ export GAPIC_SHOWCASE_VERSION=0.2.4
$ export OS=linux
$ export ARCH=amd64
$ curl -L https://github.com/googleapis/gapic-showcase/releases/download/v${GAPIC_SHOWCASE_VERSION}/gapic-showcase-${GAPIC_SHOWCASE_VERSION}-${OS}-${ARCH} | sudo tar -zx -- --directory /usr/local/bin/
$ gapic-showcase --help
...
$ go get github.com/googleapis/gapic-showcase/cmd/gapic-showcase
$ gapic-showcase --help
...
* Bear in mind this is not a versioned installation so no versioning guarantees hold using this installation method.
The schema of GAPIC Showcase API can be found in schema/google/showcase/v1beta1 It's dependencies can be found in the googleapis/api-common-protos submodule.
This quick start guide will show you how to start the server and make a request to it.
Run the showcase server to allow requests to be sent to it. This opens port :7469 to send and receive requests.
$ gapic-showcase run
> 2018/09/19 02:13:09 Showcase listening on port: :7469
Open a new terminal window and make a request to the server.
$ gapic-showcase \
identity \ # Service name
create-user \ # Message name
--user.display_name Rumble \ # Request fields
--user.email rumble@goodboi.com
> name:"users/0" display_name:"Rumble" email:"rumble@goodboi.com" create_time:<seconds:1554414332 nanos:494679000 > update_time:<seconds:1554414332 nanos:494679000 >
* You can make requests to this server from your own client but an insecure channel must be used since the server does not implement auth.
GAPIC Showcase releases three main artifacts, a CLI tool, the gapic-showcase service protobuf files staged alongside its dependencies, and a protocol buffer descriptor set compiled from the gapic-showcase service protos.
Check out our releases page to see our released artifacts.
GAPIC Showcase follows semantic versioning. All artifacts that are released for a certain version are guaranteed to be compatible with one another.
GAPIC Showcase is supported for go versions 1.11 and later.
This API is not publicly served.
This is not an official Google product.