From 840e67984a61a2ec6860719505c57b67c9469922 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 21 Aug 2020 00:46:19 +0000 Subject: [PATCH 1/5] del several docker related files --- src/php/README.md | 3 +- src/php/bin/build_all_docker_images.sh | 2 +- src/php/bin/run_all_docker_images.sh | 2 +- src/php/docker/README.md | 14 --- .../grpc_interop_php/Dockerfile.template | 23 ----- templates/tools/dockerfile/php_deps.include | 11 --- .../test/php_jessie_x64/Dockerfile.template | 25 ------ .../interoptest/grpc_interop_php/Dockerfile | 74 ---------------- .../grpc_interop_php/build_interop.sh | 53 ----------- .../dockerfile/test/php_jessie_x64/Dockerfile | 88 ------------------- 10 files changed, 3 insertions(+), 292 deletions(-) delete mode 100644 templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template delete mode 100644 templates/tools/dockerfile/php_deps.include delete mode 100644 templates/tools/dockerfile/test/php_jessie_x64/Dockerfile.template delete mode 100644 tools/dockerfile/interoptest/grpc_interop_php/Dockerfile delete mode 100755 tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh delete mode 100644 tools/dockerfile/test/php_jessie_x64/Dockerfile diff --git a/src/php/README.md b/src/php/README.md index 2ab1293bd4d..a6a8921d724 100644 --- a/src/php/README.md +++ b/src/php/README.md @@ -11,8 +11,7 @@ gRPC PHP installation instructions for Google Cloud Platform is in ### Prerequisites -* `php`: version 7.0 or above (PHP 5.x support will be deprecated some time -in 2020). +* `php`: version 7.0 or above (PHP 5.x support is deprecated from Sep 2020). * `pecl` * `composer` * `phpunit` (optional) diff --git a/src/php/bin/build_all_docker_images.sh b/src/php/bin/build_all_docker_images.sh index ed724cd4221..defc5551f00 100755 --- a/src/php/bin/build_all_docker_images.sh +++ b/src/php/bin/build_all_docker_images.sh @@ -16,7 +16,7 @@ set -e cd $(dirname $0)/../../.. -ALL_IMAGES=( grpc-ext grpc-src alpine centos7 php5 php-src php-future php-zts +ALL_IMAGES=( grpc-ext grpc-src alpine centos7 php-src php-future php-zts fork-support i386 ) if [[ "$1" == "--cmds" ]]; then diff --git a/src/php/bin/run_all_docker_images.sh b/src/php/bin/run_all_docker_images.sh index 11f8b0d29ab..7969c281dd0 100755 --- a/src/php/bin/run_all_docker_images.sh +++ b/src/php/bin/run_all_docker_images.sh @@ -16,7 +16,7 @@ set -e cd $(dirname $0)/../../.. -ALL_IMAGES=( grpc-ext grpc-src alpine centos7 php5 php-src php-future php-zts +ALL_IMAGES=( grpc-ext grpc-src alpine centos7 php-src php-future php-zts fork-support i386 ) if [[ "$1" == "--cmds" ]]; then diff --git a/src/php/docker/README.md b/src/php/docker/README.md index 638d65cbb84..1f73c825987 100644 --- a/src/php/docker/README.md +++ b/src/php/docker/README.md @@ -160,24 +160,10 @@ Run image: ```sh $ docker run -it --rm grpc-php/php-future ``` - ### `php5` -This image builds the `grpc` extension against a PHP 5 base image with ZTS -enabled. - NOTE: PHP 5.x has reached the end-of-life state and is no longer supported. -Build `php5` docker image: -```sh -$ cd grpc -$ docker build -t grpc-php/php5 -f ./src/php/docker/php5/Dockerfile . -``` - -Run image: -```sh -$ docker run -it --rm grpc-php/php5 -``` ### `fork-support` diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template deleted file mode 100644 index 7a0ece69ac5..00000000000 --- a/templates/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile.template +++ /dev/null @@ -1,23 +0,0 @@ -%YAML 1.2 ---- | - # Copyright 2016 gRPC authors. - # - # 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. - - <%include file="../../debian_jessie_header.include"/> - - <%include file="../../apt_get_basic.include"/> - <%include file="../../php_deps.include"/> - <%include file="../../run_tests_addons.include"/> - <%include file="../../php_common_deps.include"/> - diff --git a/templates/tools/dockerfile/php_deps.include b/templates/tools/dockerfile/php_deps.include deleted file mode 100644 index fca3ae3edbd..00000000000 --- a/templates/tools/dockerfile/php_deps.include +++ /dev/null @@ -1,11 +0,0 @@ -#================= -# PHP dependencies - -# Install dependencies - -RUN apt-get update && apt-get install -y ${'\\'} - git php5 php5-dev unzip - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && ${'\\'} - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && ${'\\'} - chmod +x /usr/local/bin/phpunit diff --git a/templates/tools/dockerfile/test/php_jessie_x64/Dockerfile.template b/templates/tools/dockerfile/test/php_jessie_x64/Dockerfile.template deleted file mode 100644 index f3459f48ab8..00000000000 --- a/templates/tools/dockerfile/test/php_jessie_x64/Dockerfile.template +++ /dev/null @@ -1,25 +0,0 @@ -%YAML 1.2 ---- | - # Copyright 2015 gRPC authors. - # - # 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. - - <%include file="../../debian_jessie_header.include"/> - - <%include file="../../apt_get_basic.include"/> - <%include file="../../python_deps.include"/> - <%include file="../../gcp_api_libraries.include"/> - <%include file="../../php_deps.include"/> - <%include file="../../run_tests_addons.include"/> - # Define the default command. - CMD ["bash"] diff --git a/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile deleted file mode 100644 index 286ca72c54c..00000000000 --- a/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2016 gRPC authors. -# -# 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. - -FROM debian:jessie - - -# Install Git and basic packages. -RUN apt-get update && apt-get install -y \ - autoconf \ - autotools-dev \ - build-essential \ - bzip2 \ - ccache \ - curl \ - dnsutils \ - gcc \ - gcc-multilib \ - git \ - golang \ - gyp \ - lcov \ - libc6 \ - libc6-dbg \ - libc6-dev \ - libgtest-dev \ - libtool \ - make \ - perl \ - strace \ - python-dev \ - python-setuptools \ - python-yaml \ - telnet \ - unzip \ - wget \ - zip && apt-get clean - -#================ -# Build profiling -RUN apt-get update && apt-get install -y time && apt-get clean - -#================= -# PHP dependencies - -# Install dependencies - -RUN apt-get update && apt-get install -y \ - git php5 php5-dev unzip - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && \ - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && \ - chmod +x /usr/local/bin/phpunit - - -RUN mkdir /var/local/jenkins - -# Install composer -RUN curl -sS https://getcomposer.org/installer | php -RUN mv composer.phar /usr/local/bin/composer - -# Define the default command. -CMD ["bash"] - diff --git a/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh deleted file mode 100755 index d88f51c800d..00000000000 --- a/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/bash -# Copyright 2015 gRPC authors. -# -# 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. -# -# Builds PHP interop server and client in a base image. -set -ex - -mkdir -p /var/local/git -git clone /var/local/jenkins/grpc /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -(cd /var/local/jenkins/grpc/ && git submodule foreach 'cd /var/local/git/grpc \ -&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ -${name}') - -# copy service account keys if available -cp -r /var/local/jenkins/service_account $HOME || true - -cd /var/local/git/grpc -grpc_root="$(pwd)" - -# Install gRPC C core -make -j4 shared_c static_c - -# Build gRPC PHP native extension -pushd src/php/ext/grpc -phpize -GRPC_LIB_SUBDIR=libs/opt ./configure --enable-grpc="${grpc_root}" -make -j4 -popd - -cd src/php - -DONE=0 -for ((i = 0; i < 5; i++)); do - php -d extension=ext/grpc/modules/grpc.so /usr/local/bin/composer install && DONE=1 && break -done - -if [ "$DONE" != "1" ] -then - echo "Failed to do composer install" - exit 1 -fi diff --git a/tools/dockerfile/test/php_jessie_x64/Dockerfile b/tools/dockerfile/test/php_jessie_x64/Dockerfile deleted file mode 100644 index 5a19119d946..00000000000 --- a/tools/dockerfile/test/php_jessie_x64/Dockerfile +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright 2015 gRPC authors. -# -# 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. - -FROM debian:jessie - - -# Install Git and basic packages. -RUN apt-get update && apt-get install -y \ - autoconf \ - autotools-dev \ - build-essential \ - bzip2 \ - ccache \ - curl \ - dnsutils \ - gcc \ - gcc-multilib \ - git \ - golang \ - gyp \ - lcov \ - libc6 \ - libc6-dbg \ - libc6-dev \ - libgtest-dev \ - libtool \ - make \ - perl \ - strace \ - python-dev \ - python-setuptools \ - python-yaml \ - telnet \ - unzip \ - wget \ - zip && apt-get clean - -#================ -# Build profiling -RUN apt-get update && apt-get install -y time && apt-get clean - -#==================== -# Python dependencies - -# Install dependencies - -RUN apt-get update && apt-get install -y \ - python-all-dev \ - python3-all-dev \ - python-setuptools - -# Install Python packages from PyPI -RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7 -RUN pip install --upgrade pip==19.3.1 -RUN pip install virtualenv==16.7.9 -RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 - -# Google Cloud platform API libraries -RUN pip install --upgrade google-api-python-client oauth2client - -#================= -# PHP dependencies - -# Install dependencies - -RUN apt-get update && apt-get install -y \ - git php5 php5-dev unzip - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && \ - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && \ - chmod +x /usr/local/bin/phpunit - - -RUN mkdir /var/local/jenkins - -# Define the default command. -CMD ["bash"] From 867f579e5411b9a3b01634e7ccd083085e667309 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 21 Aug 2020 01:49:03 +0000 Subject: [PATCH 2/5] del php5 from basic Linux test and interop test --- .../pull_request/grpc_basictests_php.cfg | 2 +- tools/interop_matrix/client_matrix.py | 2 +- tools/run_tests/run_interop_tests.py | 38 +------------------ 3 files changed, 3 insertions(+), 39 deletions(-) diff --git a/tools/internal_ci/linux/pull_request/grpc_basictests_php.cfg b/tools/internal_ci/linux/pull_request/grpc_basictests_php.cfg index c844fcfae00..a83ce016467 100644 --- a/tools/internal_ci/linux/pull_request/grpc_basictests_php.cfg +++ b/tools/internal_ci/linux/pull_request/grpc_basictests_php.cfg @@ -26,5 +26,5 @@ action { env_vars { key: "RUN_TESTS_FLAGS" - value: "-f basictests linux php --inner_jobs 16 -j 2 --internal_ci --max_time=3600" + value: "-f basictests linux php7 --inner_jobs 16 -j 2 --internal_ci --max_time=3600" } diff --git a/tools/interop_matrix/client_matrix.py b/tools/interop_matrix/client_matrix.py index c2f63bcaf92..bdba08455db 100644 --- a/tools/interop_matrix/client_matrix.py +++ b/tools/interop_matrix/client_matrix.py @@ -59,7 +59,7 @@ LANG_RUNTIME_MATRIX = { 'python': ['python', 'pythonasyncio'], 'node': ['node'], 'ruby': ['ruby'], - 'php': ['php', 'php7'], + 'php': ['php7'], 'csharp': ['csharp', 'csharpcoreclr'], } diff --git a/tools/run_tests/run_interop_tests.py b/tools/run_tests/run_interop_tests.py index 0ee4d5d72fc..b106f672554 100755 --- a/tools/run_tests/run_interop_tests.py +++ b/tools/run_tests/run_interop_tests.py @@ -483,35 +483,6 @@ class NodePureJSLanguage: return 'nodepurejs' -class PHPLanguage: - - def __init__(self): - self.client_cwd = None - self.safename = str(self) - - def client_cmd(self, args): - return ['src/php/bin/interop_client.sh'] + args - - def cloud_to_prod_env(self): - return {} - - def global_env(self): - return {} - - def unimplemented_test_cases(self): - return _SKIP_SERVER_COMPRESSION + \ - _SKIP_DATA_FRAME_PADDING + \ - _SKIP_SPECIAL_STATUS_MESSAGE + \ - _SKIP_GOOGLE_DEFAULT_CREDS + \ - _SKIP_COMPUTE_ENGINE_CHANNEL_CREDS - - def unimplemented_test_cases_server(self): - return [] - - def __str__(self): - return 'php' - - class PHP7Language: def __init__(self): @@ -734,7 +705,6 @@ _LANGUAGES = { 'javaokhttp': JavaOkHttpClient(), 'node': NodeLanguage(), 'nodepurejs': NodePureJSLanguage(), - 'php': PHPLanguage(), 'php7': PHP7Language(), 'objc': ObjcLanguage(), 'ruby': RubyLanguage(), @@ -879,7 +849,7 @@ def auth_options(language, test_case, google_default_creds_use_key_file, if test_case in ['jwt_token_creds', 'per_rpc_creds', 'oauth2_auth_token']: if language in [ - 'csharp', 'csharpcoreclr', 'aspnetcore', 'node', 'php', 'php7', + 'csharp', 'csharpcoreclr', 'aspnetcore', 'node', 'php7', 'python', 'ruby', 'nodepurejs' ]: env['GOOGLE_APPLICATION_CREDENTIALS'] = service_account_key_file @@ -1161,12 +1131,6 @@ def build_interop_image_jobspec(language, tag=None): } if not args.travis: env['TTY_FLAG'] = '-t' - # This env variable is used to get around the github rate limit - # error when running the PHP `composer install` command - host_file = '%s/.composer/auth.json' % os.environ['HOME'] - if language.safename == 'php' and os.path.exists(host_file): - env['BUILD_INTEROP_DOCKER_EXTRA_ARGS'] = \ - '-v %s:/root/.composer/auth.json:ro' % host_file build_job = jobset.JobSpec( cmdline=['tools/run_tests/dockerize/build_interop_image.sh'], environ=env, From db768cfcbbd84c043dffa200e659487a8f2bf66d Mon Sep 17 00:00:00 2001 From: root Date: Thu, 27 Aug 2020 06:17:35 +0000 Subject: [PATCH 3/5] del unnecessary yum install --- tools/dockerfile/grpc_artifact_centos6_x64/Dockerfile | 10 ---------- tools/dockerfile/grpc_artifact_centos6_x86/Dockerfile | 10 ---------- tools/dockerfile/grpc_artifact_linux_x64/Dockerfile | 11 ----------- 3 files changed, 31 deletions(-) diff --git a/tools/dockerfile/grpc_artifact_centos6_x64/Dockerfile b/tools/dockerfile/grpc_artifact_centos6_x64/Dockerfile index e765c876165..d2b2d8ef027 100644 --- a/tools/dockerfile/grpc_artifact_centos6_x64/Dockerfile +++ b/tools/dockerfile/grpc_artifact_centos6_x64/Dockerfile @@ -39,16 +39,6 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.6' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler" - -################## -# PHP dependencies - -RUN yum -y install php5 php5-dev php-pear - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && \ - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && \ - chmod +x /usr/local/bin/phpunit - # Clean yum RUN yum clean all diff --git a/tools/dockerfile/grpc_artifact_centos6_x86/Dockerfile b/tools/dockerfile/grpc_artifact_centos6_x86/Dockerfile index 0afe909f5c9..ec6a25a30da 100644 --- a/tools/dockerfile/grpc_artifact_centos6_x86/Dockerfile +++ b/tools/dockerfile/grpc_artifact_centos6_x86/Dockerfile @@ -39,16 +39,6 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.6' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler" - -################## -# PHP dependencies - -RUN yum -y install php5 php5-dev php-pear - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && \ - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && \ - chmod +x /usr/local/bin/phpunit - # Clean yum RUN yum clean all diff --git a/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile b/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile index a90aadd23f2..922e61b1689 100644 --- a/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile +++ b/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile @@ -62,17 +62,6 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler -v 1.17.3 --no-document" - -################## -# PHP dependencies - -RUN apt-get update && apt-get install -y \ - php5 php5-dev php-pear && apt-get clean - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && \ - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && \ - chmod +x /usr/local/bin/phpunit - ################## # C# dependencies (needed to build grpc_csharp_ext) From 53563f66a8fa837602e581ebb8d0c2d24ae77623 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 30 Sep 2020 22:11:12 +0000 Subject: [PATCH 4/5] del php5-template --- .../src/php/docker/php5/Dockerfile.template | 32 ------------------- 1 file changed, 32 deletions(-) delete mode 100644 templates/src/php/docker/php5/Dockerfile.template diff --git a/templates/src/php/docker/php5/Dockerfile.template b/templates/src/php/docker/php5/Dockerfile.template deleted file mode 100644 index 1f97bc50a71..00000000000 --- a/templates/src/php/docker/php5/Dockerfile.template +++ /dev/null @@ -1,32 +0,0 @@ -%YAML 1.2 ---- | - # Copyright 2019 gRPC authors. - # - # 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. - - FROM php:5.6-zts-stretch - - RUN apt-get -qq update && apt-get -qq install -y ${'\\'} - autoconf automake git libtool pkg-config ${'\\'} - valgrind wget zlib1g-dev - - ARG MAKEFLAGS=-j8 - - - WORKDIR /tmp - - <%include file="../download_phpunit.include" /> - - <%include file="../pecl_ext_build_src.include" /> - - CMD ["/github/grpc/src/php/bin/run_tests.sh", "--skip-persistent-channel-tests"] From 2c175b9ef505eb558a9f50f0aa5b9f62f7641d5f Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Oct 2020 16:23:04 +0000 Subject: [PATCH 5/5] del php5/Dockerfile --- src/php/docker/php5/Dockerfile | 39 ---------------------------------- 1 file changed, 39 deletions(-) delete mode 100644 src/php/docker/php5/Dockerfile diff --git a/src/php/docker/php5/Dockerfile b/src/php/docker/php5/Dockerfile deleted file mode 100644 index a350e7c9b63..00000000000 --- a/src/php/docker/php5/Dockerfile +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 2019 gRPC authors. -# -# 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. - -FROM php:5.6-zts-stretch - -RUN apt-get -qq update && apt-get -qq install -y \ - autoconf automake git libtool pkg-config \ - valgrind wget zlib1g-dev - -ARG MAKEFLAGS=-j8 - - -WORKDIR /tmp - -RUN wget https://phar.phpunit.de/phpunit-5.7.27.phar && \ - mv phpunit-5.7.27.phar /usr/local/bin/phpunit && \ - chmod +x /usr/local/bin/phpunit - - -WORKDIR /github/grpc - -COPY . . - -RUN pear package && \ - find . -name grpc-*.tgz | xargs -I{} pecl install {} - - -CMD ["/github/grpc/src/php/bin/run_tests.sh", "--skip-persistent-channel-tests"]