To get a request and reply a response, go-driver uses standard input and output.
To generate the binary to add to the container and build the docker image:
- $ make clean && make
To run inside a container:
- $ docker run --rm -i babelfish-go-driver
Directory driverclient/ contains a program to generate a single request and feed babelfish-go-driver for testing. You can set language and language version by flags. See go run driverclient/main.go --help
Directory driverout/ contains a program to retrieve the output generated by babelfish and print it on stdoud, so you can see the "unmarshaled" response (The ast deserialized is not implemented. You can see the response's fields "status", "errors", "driver", "language", "language_version", and the response unmarshalled as a map[interface{}]interface{}).
Demo(in the project directory):
- $ go run driverclient/main.go -f testfiles/test1.source | docker run --rm -i babelfish-go-driver | go run driverout/main.go