aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/dockerfile
diff options
context:
space:
mode:
Diffstat (limited to 'tools/dockerfile')
-rw-r--r--tools/dockerfile/grpc_clang/Dockerfile32
-rw-r--r--tools/dockerfile/grpc_cxx/Dockerfile2
-rw-r--r--tools/dockerfile/grpc_go/Dockerfile8
-rw-r--r--tools/dockerfile/grpc_java/Dockerfile2
-rw-r--r--tools/dockerfile/grpc_java_base/Dockerfile3
-rw-r--r--tools/dockerfile/grpc_node_base/Dockerfile4
-rw-r--r--tools/dockerfile/grpc_php_base/Dockerfile2
-rw-r--r--tools/dockerfile/grpc_python/Dockerfile38
-rw-r--r--tools/dockerfile/grpc_python/README.md11
-rw-r--r--tools/dockerfile/grpc_python_base/Dockerfile20
-rw-r--r--tools/dockerfile/grpc_python_base/README.md7
-rw-r--r--tools/dockerfile/grpc_ruby/Dockerfile2
-rw-r--r--tools/dockerfile/grpc_ruby_base/Dockerfile2
13 files changed, 121 insertions, 12 deletions
diff --git a/tools/dockerfile/grpc_clang/Dockerfile b/tools/dockerfile/grpc_clang/Dockerfile
new file mode 100644
index 0000000000..0928121755
--- /dev/null
+++ b/tools/dockerfile/grpc_clang/Dockerfile
@@ -0,0 +1,32 @@
+FROM ubuntu:latest
+
+RUN apt-get update && apt-get install -y \
+ cmake \
+ g++ \
+ gcc \
+ git \
+ make \
+ python \
+ && apt-get clean
+
+RUN git clone -b release_36 http://llvm.org/git/llvm.git
+RUN git clone -b release_36 http://llvm.org/git/clang.git
+RUN git clone -b release_36 http://llvm.org/git/compiler-rt.git
+RUN git clone -b release_36 http://llvm.org/git/clang-tools-extra.git
+RUN git clone -b release_36 http://llvm.org/git/libcxx.git
+RUN git clone -b release_36 http://llvm.org/git/libcxxabi.git
+
+RUN mv clang llvm/tools
+RUN mv compiler-rt llvm/projects
+RUN mv clang-tools-extra llvm/tools/clang/tools
+RUN mv libcxx llvm/projects
+RUN mv libcxxabi llvm/projects
+
+RUN mkdir llvm-build
+RUN cd llvm-build && cmake \
+ -DCMAKE_BUILD_TYPE:STRING=Release \
+ -DLLVM_TARGETS_TO_BUILD:STRING=X86 \
+ ../llvm
+RUN make -C llvm-build && make -C llvm-build install && rm -rf llvm-build
+
+CMD ["bash"]
diff --git a/tools/dockerfile/grpc_cxx/Dockerfile b/tools/dockerfile/grpc_cxx/Dockerfile
index 9b20e7a58e..e1ddfcb2da 100644
--- a/tools/dockerfile/grpc_cxx/Dockerfile
+++ b/tools/dockerfile/grpc_cxx/Dockerfile
@@ -4,7 +4,7 @@ FROM grpc/base
RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev
# Get the source from GitHub
-RUN git clone git@github.com:google/grpc.git /var/local/git/grpc
+RUN git clone git@github.com:grpc/grpc.git /var/local/git/grpc
RUN cd /var/local/git/grpc && \
git pull --recurse-submodules && \
git submodule update --init --recursive
diff --git a/tools/dockerfile/grpc_go/Dockerfile b/tools/dockerfile/grpc_go/Dockerfile
index 1b998152a7..42620ff3cf 100644
--- a/tools/dockerfile/grpc_go/Dockerfile
+++ b/tools/dockerfile/grpc_go/Dockerfile
@@ -17,11 +17,11 @@ RUN echo 'StrictHostKeyChecking no' >> $HOME/.ssh/config
RUN git config --global url."git@github.com:".insteadOf "https://github.com/"
# Get the source from GitHub
-RUN go get github.com/google/grpc-go/rpc
+RUN go get google.golang.org/grpc
# Build the interop client and server
-RUN cd src/github.com/google/grpc-go/rpc/interop/client && go install
-RUN cd src/github.com/google/grpc-go/rpc/interop/server && go install
+RUN cd src/google.golang.org/grpc/interop/client && go install
+RUN cd src/google.golang.org/grpc/interop/server && go install
# Specify the default command such that the interop server runs on its known testing port
-CMD ["/bin/bash", "-c", "cd src/github.com/google/grpc-go/rpc/interop/server && go run server.go --use_tls=true --port=8020"]
+CMD ["/bin/bash", "-c", "cd src/google.golang.org/grpc/interop/server && go run server.go --use_tls=true --port=8020"]
diff --git a/tools/dockerfile/grpc_java/Dockerfile b/tools/dockerfile/grpc_java/Dockerfile
index a5508cad7f..17682c63f0 100644
--- a/tools/dockerfile/grpc_java/Dockerfile
+++ b/tools/dockerfile/grpc_java/Dockerfile
@@ -1,7 +1,7 @@
# Dockerfile for the gRPC Java dev image
FROM grpc/java_base
-RUN git clone --recursive --depth 1 git@github.com:google/grpc-java.git /var/local/git/grpc-java
+RUN git clone --recursive --depth 1 git@github.com:grpc/grpc-java.git /var/local/git/grpc-java
RUN cd /var/local/git/grpc-java/lib/netty && \
mvn -pl codec-http2 -am -DskipTests install clean
RUN cd /var/local/git/grpc-java && \
diff --git a/tools/dockerfile/grpc_java_base/Dockerfile b/tools/dockerfile/grpc_java_base/Dockerfile
index 5dbd781f7b..6031be484a 100644
--- a/tools/dockerfile/grpc_java_base/Dockerfile
+++ b/tools/dockerfile/grpc_java_base/Dockerfile
@@ -34,11 +34,12 @@ RUN wget -O - https://github.com/google/protobuf/archive/master.tar.gz | \
# Install a GitHub SSH service credential that gives access to the GitHub repo while it's private
# TODO: remove this once the repo is public
COPY .ssh/github.rsa /root/.ssh/id_rsa
+RUN chmod 600 /root/.ssh/id_rsa
RUN echo 'Host github.com\nStrictHostKeyChecking no' > /root/.ssh/config
# Trigger download of as many Maven and Gradle artifacts as possible. We don't build grpc-java
# because we don't want to install netty
-RUN git clone --recursive --depth 1 git@github.com:google/grpc-java.git && \
+RUN git clone --recursive --depth 1 git@github.com:grpc/grpc-java.git && \
cd grpc-java/lib/netty && \
mvn -pl codec-http2 -am -DskipTests verify && \
cd ../.. && \
diff --git a/tools/dockerfile/grpc_node_base/Dockerfile b/tools/dockerfile/grpc_node_base/Dockerfile
index 28bd7b2556..20efde98ad 100644
--- a/tools/dockerfile/grpc_node_base/Dockerfile
+++ b/tools/dockerfile/grpc_node_base/Dockerfile
@@ -10,7 +10,7 @@ RUN apt-get update && apt-get install -y nodejs
RUN npm install -g node-gyp
# Get the source from GitHub, this gets the protobuf library as well
-RUN git clone git@github.com:google/grpc.git /var/local/git/grpc
+RUN git clone git@github.com:grpc/grpc.git /var/local/git/grpc
RUN cd /var/local/git/grpc && \
git pull --recurse-submodules && \
git submodule update --init --recursive
@@ -19,4 +19,4 @@ RUN cd /var/local/git/grpc && \
RUN make static_c shared_c -j12 -C /var/local/git/grpc
# Define the default command.
-CMD ["bash"] \ No newline at end of file
+CMD ["bash"]
diff --git a/tools/dockerfile/grpc_php_base/Dockerfile b/tools/dockerfile/grpc_php_base/Dockerfile
index ef58f3a887..f4bf3b09a4 100644
--- a/tools/dockerfile/grpc_php_base/Dockerfile
+++ b/tools/dockerfile/grpc_php_base/Dockerfile
@@ -62,7 +62,7 @@ ENV PATH /usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/s
RUN rvm all do gem install ronn rake
# Get the source from GitHub, this gets the protobuf library as well
-RUN git clone git@github.com:google/grpc.git /var/local/git/grpc
+RUN git clone git@github.com:grpc/grpc.git /var/local/git/grpc
RUN cd /var/local/git/grpc && \
git pull --recurse-submodules && \
git submodule update --init --recursive
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
diff --git a/tools/dockerfile/grpc_python_base/Dockerfile b/tools/dockerfile/grpc_python_base/Dockerfile
new file mode 100644
index 0000000000..01292c2e12
--- /dev/null
+++ b/tools/dockerfile/grpc_python_base/Dockerfile
@@ -0,0 +1,20 @@
+# Base Dockerfile for GRPC Python.
+#
+# Includes Python environment and installation dependencies.
+FROM grpc/base
+
+# Allows 'source' to work
+RUN rm /bin/sh && ln -s /bin/bash /bin/sh
+
+# Install Python development
+RUN apt-get update && apt-get install -y \
+ python-all-dev \
+ python3-all-dev \
+ python-pip \
+ python-virtualenv \
+
+# Install Python packages from PyPI
+RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.0.0-alpha-1
+
+# Get the GRPC source from GitHub
+RUN git clone --recursive git@github.com:google/grpc.git /var/local/git/grpc
diff --git a/tools/dockerfile/grpc_python_base/README.md b/tools/dockerfile/grpc_python_base/README.md
new file mode 100644
index 0000000000..1d4767ce5c
--- /dev/null
+++ b/tools/dockerfile/grpc_python_base/README.md
@@ -0,0 +1,7 @@
+GRPC Python Base Dockerfile
+========================
+
+Dockerfile for creating the Python GRPC development Docker instance.
+
+As of 2015/02 this
+- installs tools and dependencies needed to build GRPC Python
diff --git a/tools/dockerfile/grpc_ruby/Dockerfile b/tools/dockerfile/grpc_ruby/Dockerfile
index 47972e7eff..ff1b99ba37 100644
--- a/tools/dockerfile/grpc_ruby/Dockerfile
+++ b/tools/dockerfile/grpc_ruby/Dockerfile
@@ -6,7 +6,7 @@ RUN cd /var/local/git/grpc \
&& git pull --recurse-submodules \
&& git submodule update --init --recursive
-# Build the C core.
+# Build the C core
RUN make install_c -C /var/local/git/grpc
# Build ruby gRPC and run its tests
diff --git a/tools/dockerfile/grpc_ruby_base/Dockerfile b/tools/dockerfile/grpc_ruby_base/Dockerfile
index ec4544d2fd..a3a80daf9b 100644
--- a/tools/dockerfile/grpc_ruby_base/Dockerfile
+++ b/tools/dockerfile/grpc_ruby_base/Dockerfile
@@ -43,7 +43,7 @@ RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc"
RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc"
# Get the source from GitHub
-RUN git clone git@github.com:google/grpc.git /var/local/git/grpc
+RUN git clone git@github.com:grpc/grpc.git /var/local/git/grpc
RUN cd /var/local/git/grpc && \
git pull --recurse-submodules && \
git submodule update --init --recursive