60fec1d47d6af450217fcb199ece890de9bb0ad4
[platform/upstream/grpc.git] / tools / dockerfile / test / php7_jessie_x64 / Dockerfile
1 # Copyright 2016 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 debian:jessie
16
17
18 #=================
19 # PHP7 dependencies
20
21 # Install Git and basic packages.
22 RUN apt-get update && apt-get install -y \
23   autoconf \
24   automake \
25   build-essential \
26   ccache \
27   curl \
28   git \
29   libcurl4-openssl-dev \
30   libgmp-dev \
31   libgmp3-dev \
32   libssl-dev \
33   libtool \
34   libxml2-dev \
35   pkg-config \
36   re2c \
37   time \
38   unzip \
39   wget \
40   zip && apt-get clean
41
42 # Install other dependencies
43 RUN ln -sf /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h
44 RUN wget http://ftp.gnu.org/gnu/bison/bison-3.4.2.tar.gz -O /var/local/bison-3.4.2.tar.gz
45 RUN cd /var/local \
46   && tar -zxvf bison-3.4.2.tar.gz \
47   && cd /var/local/bison-3.4.2 \
48   && ./configure \
49   && make \
50   && make install
51
52 # Compile PHP7 from source
53 RUN git clone https://github.com/php/php-src /var/local/git/php-src
54 RUN cd /var/local/git/php-src \
55   && git checkout PHP-7.2.22 \
56   && ./buildconf --force \
57   && ./configure \
58   --with-gmp \
59   --with-openssl \
60   --with-zlib \
61   && make \
62   && make install
63
64 #====================
65 # Python dependencies
66
67 # Install dependencies
68
69 RUN apt-get update && apt-get install -y \
70     python-all-dev \
71     python3-all-dev \
72     python-setuptools
73
74 # Install Python packages from PyPI
75 RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
76 RUN pip install --upgrade pip==19.3.1
77 RUN pip install virtualenv==16.7.9
78 RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0
79
80 # Google Cloud platform API libraries
81 RUN pip install --upgrade google-api-python-client oauth2client
82
83 #=================      
84 # PHP Test dependencies 
85
86  RUN apt-get update && apt-get install -y \     
87     valgrind
88
89
90 RUN mkdir /var/local/jenkins
91
92 # Define the default command.
93 CMD ["bash"]