-
Notifications
You must be signed in to change notification settings - Fork 18
/
install
executable file
·63 lines (47 loc) · 2.1 KB
/
install
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/usr/bin/env bash
set -e
## include global bundle test configuration
source $TRAVIS_BUILD_DIR/tests/_etc/bundle_configuration
## setup php
phpenv config-add ./tests/_etc/config/system/php.ini
## setup mysql
mysql --version
mysql -e "SET GLOBAL innodb_file_format=Barracuda;"
mysql -e "SET GLOBAL innodb_large_prefix=1;"
mysql -e "CREATE DATABASE dachcom_bundle_test CHARSET=utf8mb4;"
## move bundle temporarily and clean dir in order to install pimcore
mkdir -p ../lib/$DACHCOM_BUNDLE_NAME
mv {.[!.],}* ../lib/$DACHCOM_BUNDLE_NAME
rm -rf {.[!.],}*
## clone pimcore
git clone https://github.com/pimcore/skeleton.git $DACHCOM_BUNDLE_HOME
git checkout ${PIMCORE_SKELETON_BRANCH} $DACHCOM_BUNDLE_HOME
## move bundle back into lib/$DACHCOM_BUNDLE_NAME
mv ../lib .
## copy _etc dir to root dir
cp -r ./lib/$DACHCOM_BUNDLE_NAME/tests/_etc/bundle_configuration ./bundle_configuration
cp -r ./lib/$DACHCOM_BUNDLE_NAME/tests/_etc ./_etc
chmod -R +x ./_etc
## create download dir
mkdir ./lib/$DACHCOM_BUNDLE_NAME/tests/_data/downloads
## add config templates
mkdir -p ./var/config
cp ./_etc/config/system/config.yml app/config/config.yml
cp app/config/parameters.example.yml app/config/parameters.yml
for K in "${!DACHCOM_INSTALL_CONFIG_FILES[@]}"
do
cp $K ${DACHCOM_INSTALL_CONFIG_FILES[$K]};
done
## load GeoLite2
git clone -b 4.0.1 --single-branch https://github.com/geocoder-php/geoip2-provider
cp ./geoip2-provider/Tests/fixtures/GeoLite2-City.mmdb var/config/
rm -rf geoip2-provider
## install composer dependencies
rm composer.lock
## add monolog >= 2 conflict (not supported until symfony 5
sed -i '0,/{/a \ "conflict": { "monolog/monolog": ">=2" },\' composer.json
composer config repositories.pimcore-${DACHCOM_BUNDLE_REPO_NAME} '{"type": "path", "url": "./lib/'${DACHCOM_BUNDLE_NAME}'", "options": {"symlink": true}}'
COMPOSER_MEMORY_LIMIT=-1 composer require symfony/symfony:$SYMFONY_VERSION --no-scripts
COMPOSER_MEMORY_LIMIT=-1 composer require phpstan/phpstan:^0.11.1 phpstan/phpstan-symfony:^0.11.0 symplify/easy-coding-standard:^5.4 dachcom-digital/${DACHCOM_BUNDLE_REPO_NAME} @dev
## clear cache
rm -rf var/cache