14 """The Python implementation of the GRPC interoperability test server."""
17 from concurrent
import futures
22 from src.proto.grpc.testing
import test_pb2_grpc
28 _LOGGER = logging.getLogger(__name__)
32 parser = argparse.ArgumentParser()
33 parser.add_argument(
'--port',
36 help=
'the port on which to serve')
37 parser.add_argument(
'--use_tls',
39 type=resources.parse_bool,
40 help=
'require a secure connection')
41 parser.add_argument(
'--use_alts',
43 type=resources.parse_bool,
44 help=
'require an ALTS connection')
45 return parser.parse_args()
50 private_key = resources.private_key()
51 certificate_chain = resources.certificate_chain()
60 server = test_common.test_server()
63 if args.use_tls
or args.use_alts:
65 server.add_secure_port(
'[::]:{}'.
format(args.port), credentials)
67 server.add_insecure_port(
'[::]:{}'.
format(args.port))
70 _LOGGER.info(
'Server serving.')
71 server.wait_for_termination()
72 _LOGGER.info(
'Server stopped; exiting.')
75 if __name__ ==
'__main__':