#335 fixed issue regarding composer running twice

This commit is contained in:
Dominik Liebler
2018-10-22 21:37:43 +02:00
parent c29d7b57fc
commit 9910fdf111
5 changed files with 27 additions and 48 deletions

View File

@@ -1,7 +1,8 @@
FROM php:7.2.0-cli
WORKDIR /opt/php
WORKDIR /app
RUN apt-get update \
&& apt-get install -y zlib1g-dev wget git-core \
&& docker-php-ext-install zip
ADD . /opt/php
CMD [ "./docker/test_runner.sh" ]
&& apt-get install -y zlib1g-dev wget git-core python-pip \
&& docker-php-ext-install zip \
&& pip install Sphinx
ADD . /app
CMD [ "make", "cs", "test" ]

View File

@@ -191,14 +191,11 @@ pseudoxml:
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
composer.phar:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
install: vendor
composer.phar:
docker/install-composer.sh
vendor: composer.phar
php composer.phar install

View File

@@ -4,13 +4,5 @@ services:
build:
context: .
dockerfile: Dockerfile
volumes:
- .:/opt/php
command: ["/opt/php/docker/test_runner.sh"]
composer:
image: composer:latest
working_dir: /app
volumes:
- .:/app
command:
- install

17
docker/install-composer.sh Executable file
View File

@@ -0,0 +1,17 @@
#!/bin/sh
EXPECTED_SIGNATURE="$(wget -q -O - https://composer.github.io/installer.sig)"
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ACTUAL_SIGNATURE="$(php -r "echo hash_file('SHA384', 'composer-setup.php');")"
if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
then
>&2 echo 'ERROR: Invalid installer signature'
rm composer-setup.php
exit 1
fi
php composer-setup.php --quiet
RESULT=$?
rm composer-setup.php
exit $RESULT

View File

@@ -1,28 +0,0 @@
#!/bin/sh
echo "Installing composer..."
EXPECTED_SIGNATURE=$(wget -q -O - https://composer.github.io/installer.sig)
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ACTUAL_SIGNATURE=$(php -r "echo hash_file('SHA384', 'composer-setup.php');")
if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
then
>&2 echo 'ERROR: Invalid installer signature'
rm composer-setup.php
exit 1
fi
php composer-setup.php --quiet
rm composer-setup.php
echo "Downloading dependencies using composer..."
php composer.phar install --prefer-dist --no-interaction
echo "Running tests..."
if ./vendor/bin/phpunit; then
echo "Tests passed successfully!"
exit 0
else
echo "Tests failed :("
exit 1
fi