Browse Source

Merge pull request #2909 from PavelSavushkinMix/fix/yaml_extension

fix(YAML extension): get built YAML extension for all versions in all services
Shao Yu-Lung (Allen) 4 years ago
parent
commit
976e56c4f9
3 changed files with 15 additions and 14 deletions
  1. 0 1
      .github/workflows/main-ci.yml
  2. 8 6
      php-fpm/Dockerfile
  3. 7 7
      workspace/Dockerfile

+ 0 - 1
.github/workflows/main-ci.yml

@@ -33,7 +33,6 @@ jobs:
         sed -i -- 's/PHALCON=true/PHALCON=false/g' .env
         sed -i -- 's/RDKAFKA=true/RDKAFKA=false/g' .env
         sed -i -- 's/MAILPARSE=true/MAILPARSE=false/g' .env
-        sed -i -- 's/YAML=true/YAML=false/g' .env
         sed -i -- 's/MSSQL=true/MSSQL=false/g' .env
         sed -i -- 's/MEMCACHED=true/MEMCACHED=false/g' .env
         sed -i -- 's/OCI8=true/OCI8=false/g' .env

+ 8 - 6
php-fpm/Dockerfile

@@ -859,13 +859,15 @@ USER root
 ARG INSTALL_YAML=false
 
 RUN if [ ${INSTALL_YAML} = true ]; then \
-    apt-get install libyaml-dev -y ; \
-    if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
-        pecl install -a yaml-1.3.2; \
+    apt-get install -yqq libyaml-dev \
+    && if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
+        echo '' | pecl install -a yaml-1.3.2; \
+    elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
+        echo '' | pecl install yaml-2.0.4; \
     else \
-        pecl install yaml; \
-    fi && \
-    docker-php-ext-enable yaml \
+        echo '' | pecl install yaml; \
+    fi \
+    && docker-php-ext-enable yaml \
 ;fi
 
 ###########################################################################

+ 7 - 7
workspace/Dockerfile

@@ -1401,12 +1401,14 @@ ARG INSTALL_YAML=false
 RUN if [ ${INSTALL_YAML} = true ]; then \
     apt-get install libyaml-dev -y ; \
     if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
-        pecl install -a yaml-1.3.2; \
+        echo '' | pecl install -a yaml-1.3.2; \
+    elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \
+        echo '' | pecl install yaml-2.0.4; \
     else \
-        pecl install yaml; \
-    fi && \
-    echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini && \
-    ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini \
+        echo '' | pecl install yaml; \
+    fi \
+    && echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini \
+    && ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini \
 ;fi
 
 ###########################################################################
@@ -1645,8 +1647,6 @@ RUN if [ ${SHELL_OH_MY_ZSH} = true ]; then \
 	  echo "" >> ~/.zshrc \
 ;fi
 
-USER root
-
 #
 #--------------------------------------------------------------------------
 # Final Touch