diff options
author | Nathaniel Manista <nathaniel@google.com> | 2015-02-15 01:21:53 +0000 |
---|---|---|
committer | Nathaniel Manista <nathaniel@google.com> | 2015-02-15 01:21:53 +0000 |
commit | d4cb0d649c3c4c6b0fa8094629d728f24c419597 (patch) | |
tree | 1e0fa5d253c1e734d10f15b3bfb6d7d680be2cae /tools/dockerfile/grpc_python | |
parent | 1d1f952731887521117b863625d60da05a85aec8 (diff) |
Add Docker files for Python.
Diffstat (limited to 'tools/dockerfile/grpc_python')
-rw-r--r-- | tools/dockerfile/grpc_python/Dockerfile | 38 | ||||
-rw-r--r-- | tools/dockerfile/grpc_python/README.md | 11 |
2 files changed, 49 insertions, 0 deletions
diff --git a/tools/dockerfile/grpc_python/Dockerfile b/tools/dockerfile/grpc_python/Dockerfile new file mode 100644 index 0000000000..2390ed7bcf --- /dev/null +++ b/tools/dockerfile/grpc_python/Dockerfile @@ -0,0 +1,38 @@ +# Dockerfile for GRPC Python +FROM grpc/python_base + +# Build the C library +RUN cd /var/local/git/grpc \ + && git pull --recurse-submodules \ + && git submodule update --init --recursive + +# Build the C core. +RUN make install_c -C /var/local/git/grpc + +# Build Python GRPC +RUN cd /var/local/git/grpc \ + && pip install src/python/src \ + && pip install src/python/interop + +# Run Python GRPC's tests +RUN cd /var/local/git/grpc \ + # TODO(nathaniel): It would be nice for these to be auto-discoverable? + && python2.7 -B -m _adapter._blocking_invocation_inline_service_test + && python2.7 -B -m _adapter._c_test + && python2.7 -B -m _adapter._event_invocation_synchronous_event_service_test + && python2.7 -B -m _adapter._future_invocation_asynchronous_event_service_test + && python2.7 -B -m _adapter._links_test + && python2.7 -B -m _adapter._lonely_rear_link_test + && python2.7 -B -m _adapter._low_test + && python2.7 -B -m _framework.base.packets.implementations_test + && python2.7 -B -m _framework.face.blocking_invocation_inline_service_test + && python2.7 -B -m _framework.face.event_invocation_synchronous_event_service_test + && python2.7 -B -m _framework.face.future_invocation_asynchronous_event_service_test + && python2.7 -B -m _framework.foundation._later_test + && python2.7 -B -m _framework.foundation._logging_pool_test + +# Add a cacerts directory containing the Google root pem file, allowing the interop client to access the production test instance +ADD cacerts cacerts + +# Specify the default command such that the interop server runs on its known testing port +CMD ["/bin/bash", "-l", "-c", "python2.7 -m interop.server --use_tls --port 8050"] diff --git a/tools/dockerfile/grpc_python/README.md b/tools/dockerfile/grpc_python/README.md new file mode 100644 index 0000000000..efbdbeff82 --- /dev/null +++ b/tools/dockerfile/grpc_python/README.md @@ -0,0 +1,11 @@ +GRPC Python Dockerfile +==================== + +Dockerfile for creating the Python development instances + +As of 2015/02 this +- is based on the GRPC Python base +- adds a pull of the HEAD GRPC Python source from GitHub +- builds it +- runs its tests and aborts image creation if the tests don't pass +- specifies the Python GRPC interop test server as default command |