1 # Copyright 2015 gRPC authors. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 FROM gcr.io/oss-fuzz-base/base-builder 16 17 # Install basic packages and Bazel dependencies. 18 RUN apt-get update && apt-get install -y software-properties-common python-software-properties 19 RUN add-apt-repository ppa:webupd8team/java 20 RUN apt-get update && apt-get -y install \ 21 autoconf \ 22 build-essential \ 23 curl \ 24 libtool \ 25 make \ 26 openjdk-8-jdk \ 27 vim 28 29 #==================== 30 # Python dependencies 31 32 # Install dependencies 33 34 RUN apt-get update && apt-get install -y \ 35 python-all-dev \ 36 python3-all-dev \ 37 python-pip 38 39 # Install Python packages from PyPI 40 RUN pip install --upgrade pip==10.0.1 41 RUN pip install virtualenv 42 RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 43 44 45 #======================== 46 # Bazel installation 47 RUN echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" > /etc/apt/sources.list.d/bazel.list 48 RUN curl https://bazel.build/bazel-release.pub.gpg | apt-key add - 49 RUN apt-get -y update && apt-get -y install bazel=0.15.0 && apt-get clean 50 51 52 RUN mkdir -p /var/local/jenkins 53 54 # Define the default command. 55 CMD ["bash"] 56