about summary refs log tree commit diff
path: root/ci/kokoro/Dockerfile.fedora
diff options
context:
space:
mode:
authorTakashi Matsuo <tmatsuo@google.com>2019-07-12T17·12-0700
committerGitHub <noreply@github.com>2019-07-12T17·12-0700
commitd6e90be651ccc153840fd6a118ae6f50fb0fd9f5 (patch)
tree9a5a04acf726e2f1f4c3416f1044d101af558feb /ci/kokoro/Dockerfile.fedora
parentaefb8c98b00ffd23543f295b9b5b70532f1afee9 (diff)
Refactor Dockerfiles (#6)
Diffstat (limited to 'ci/kokoro/Dockerfile.fedora')
-rw-r--r--ci/kokoro/Dockerfile.fedora38
1 files changed, 38 insertions, 0 deletions
diff --git a/ci/kokoro/Dockerfile.fedora b/ci/kokoro/Dockerfile.fedora
new file mode 100644
index 000000000000..af3aa38037fc
--- /dev/null
+++ b/ci/kokoro/Dockerfile.fedora
@@ -0,0 +1,38 @@
+# Copyright 2019 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+ARG DISTRO_VERSION=30
+FROM fedora:${DISTRO_VERSION}
+
+# Fedora includes packages for gRPC, libcurl, and OpenSSL that are recent enough
+# for `google-cloud-cpp`. Install these packages and additional development
+# tools to compile the dependencies:
+RUN dnf makecache && \
+    dnf install -y clang clang-tools-extra cmake doxygen findutils gcc-c++ git \
+        grpc-devel grpc-plugins libcxx-devel libcxxabi-devel libcurl-devel \
+        make openssl-devel pkgconfig protobuf-compiler python-pip ShellCheck \
+        tar wget zlib-devel
+
+# Install the the buildifier tool, which does not compile with the default
+# golang compiler for Ubuntu 16.04 and Ubuntu 18.04.
+RUN wget -q -O /usr/bin/buildifier https://github.com/bazelbuild/buildtools/releases/download/0.17.2/buildifier
+RUN chmod 755 /usr/bin/buildifier
+
+# Install cmake_format to automatically format the CMake list files.
+#     https://github.com/cheshirekow/cmake_format
+# Pin this to an specific version because the formatting changes when the
+# "latest" version is updated, and we do not want the builds to break just
+# because some third party changed something.
+RUN pip install --upgrade pip
+RUN pip install numpy cmake_format==0.5.2