Draft: testing/gvisor: new aport
TODO:
-
Compile the proto files to Go code -
Run tests
List of proto files:
$ find . -name '*.proto'
./pkg/eventchannel/event.proto
./pkg/metric/metric.proto
./pkg/sentry/arch/registers.proto
./pkg/sentry/control/control.proto
./pkg/sentry/kernel/memevent/memory_events.proto
./pkg/sentry/kernel/uncaught_signal.proto
./pkg/sentry/seccheck/points/common.proto
./pkg/sentry/seccheck/points/container.proto
./pkg/sentry/seccheck/points/sentry.proto
./pkg/sentry/seccheck/points/syscall.proto
./pkg/sentry/strace/strace.proto
./pkg/sentry/unimpl/unimplemented_syscall.proto
./pkg/shim/runtimeoptions/v14/runtimeoptions.proto
./pkg/shim/runtimeoptions/runtimeoptions.proto
./test/packetimpact/proto/posix_server.proto
Upstream doesn't have a unified name pattern for the generated Go module name (either the directory name or the proto file name), so simple shell looping isn't enough for the job. Adding 15 lines of repeated protoc
commands to the build file is quite ugly.
They have a go branch https://github.com/google/gvisor/tree/go with generated Go code for convenient go build, but there aren't any official tarballs for it.