forked from tenancy/tenancy
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest
More file actions
executable file
·42 lines (34 loc) · 1.76 KB
/
test
File metadata and controls
executable file
·42 lines (34 loc) · 1.76 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!/bin/bash
COMMAND=$1
PHP_VERSION=8.2
DB_VERSION=8
LARAVEL_VERSION=11.*
PHPUNIT_VERSION=10.*
DEPENDENCY_VERSIONS=prefer-stable
PHPUNIT_PREPEND=
PHPUNIT_APPEND=
while [[ "$#" -gt 0 ]]; do
case $1 in
--php) PHP_VERSION="$2"; shift ;;
--db) DB_VERSION="$2"; shift ;;
--laravel) LARAVEL_VERSION="$2"; shift ;;
--phpunit) PHPUNIT_VERSION="$2" PHPUNIT_APPEND="--configuration phpunit-$2.xml"; shift ;;
--dependencies) DEPENDENCY_VERSIONS="$2"; shift ;;
--coverage) PHPUNIT_APPEND="${PHPUNIT_APPEND} --coverage-clover=coverage.xml" PHPUNIT_PREPEND="${PHPUNIT_PREPEND} XDEBUG_MODE=coverage";;
*) echo "Unknown parameter passed: $1"; exit 1 ;;
esac
shift
done
RUNCOMMAND="composer require 'laravel/framework:$LARAVEL_VERSION' --no-interaction --no-update"
# If LARAVEL_VERSION is 9.*, then we need to install doctrine/dbal 3.0^
if [[ $LARAVEL_VERSION == 9.* ]]; then
RUNCOMMAND="${RUNCOMMAND} && composer require 'doctrine/dbal:^3.0' --no-interaction --no-update"
fi
RUNCOMMAND="${RUNCOMMAND} && composer require 'laravel/laravel:$LARAVEL_VERSION' --dev --no-interaction --no-update"
RUNCOMMAND="${RUNCOMMAND} && composer require 'phpunit/phpunit:$PHPUNIT_VERSION' --dev --no-interaction --no-update"
RUNCOMMAND="${RUNCOMMAND} && composer update --no-ansi --no-interaction --$DEPENDENCY_VERSIONS"
RUNCOMMAND="${RUNCOMMAND} && composer update --no-ansi --no-interaction nesbot/carbon"
RUNCOMMAND="${RUNCOMMAND} && /ops/wait-for-it.sh mysql:3306 --timeout=120"
RUNCOMMAND="${RUNCOMMAND} && $PHPUNIT_PREPEND vendor/bin/phpunit $PHPUNIT_APPEND"
echo "${RUNCOMMAND}"
PHP_VERSION=$PHP_VERSION DB_VERSION=$DB_VERSION docker-compose -f ./.dev/docker/docker-compose.yaml run -T --rm --service-ports --use-aliases php bash -c "${RUNCOMMAND}"