Skip to content

Commit adb34bd

Browse files
author
Benjamin Calef
authored
Merge pull request #67 from zepgram/develop
[v1.3.4] resolve redis config issue and move php version settings
2 parents aed5a49 + 2014ec9 commit adb34bd

File tree

7 files changed

+56
-59
lines changed

7 files changed

+56
-59
lines changed

Readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![vagrant](https://img.shields.io/badge/vagrant-debian:stretch-blue.svg?longCache=true&style=flat&label=vagrant&logo=vagrant)](https://app.vagrantup.com/debian/boxes/stretch64)
44
[![dev-box](https://img.shields.io/badge/git/composer-blue.svg?longCache=true&style=flat&label=setup&logo=magento)](https://github.com/zepgram/magento2-fast-vm/blob/master/config.yaml.example)
55
[![mount](https://img.shields.io/badge/nfs/rsync-blue.svg?longCache=true&style=flat&label=mount)](https://github.com/zepgram/magento2-fast-vm/releases)
6-
[![release](https://img.shields.io/badge/release-v1.3.3-blue.svg?longCache=true&style=flat&label=release)](https://github.com/zepgram/magento2-fast-vm/releases)
6+
[![release](https://img.shields.io/badge/release-v1.3.4-blue.svg?longCache=true&style=flat&label=release)](https://github.com/zepgram/magento2-fast-vm/releases)
77
[![license](https://img.shields.io/badge/license-MIT-blue.svg?longCache=true&style=flat&label=license)](https://github.com/zepgram/magento2-fast-vm/blob/master/LICENSE)
88

99
![windows](https://img.shields.io/badge/windows-ok-green.svg?longCache=true&style=flat&label=windows&logo=windows)

provision/001-system-env.sh

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,22 @@ export DEBIAN_FRONTEND=noninteractive
1111

1212
echo '--- Environment variables ---'
1313

14+
# Set php version
15+
PROJECT_VERSION=${12};
16+
PROJECT_PHP_VERSION='7.2';
17+
if $(dpkg --compare-versions "${PROJECT_VERSION}" "gt" "2.3.2-p1"); then
18+
PROJECT_PHP_VERSION='7.3';
19+
fi
20+
if $(dpkg --compare-versions "${PROJECT_VERSION}" "lt" "2.3"); then
21+
PROJECT_PHP_VERSION='7.1';
22+
fi
23+
if $(dpkg --compare-versions "${PROJECT_VERSION}" "lt" "2.2"); then
24+
PROJECT_PHP_VERSION='7.0';
25+
fi
26+
if [ "${9}" != 'default' ]; then
27+
PROJECT_PHP_VERSION="${9}"
28+
fi
29+
1430
# Set environment variable
1531
cat <<EOF > /etc/profile.d/env.sh
1632
export PROJECT_NAME="${1}"
@@ -23,10 +39,10 @@ export PROJECT_GIT_EMAIL="${5}"
2339
export PROJECT_HOST_REPOSITORY="${6}"
2440
export PROJECT_REPOSITORY="${7}"
2541
export PROJECT_URL="${8}"
26-
export PROJECT_PHP_VERSION="${9}"
42+
export PROJECT_PHP_VERSION="${PROJECT_PHP_VERSION}"
2743
export PROJECT_SOURCE="${10}"
2844
export PROJECT_EDITION="${11}"
29-
export PROJECT_VERSION="${12}"
45+
export PROJECT_VERSION="${PROJECT_VERSION}"
3046
export PROJECT_SAMPLE="${13}"
3147
export PROJECT_MODE="${14}"
3248
export PROJECT_CURRENCY="${15}"

provision/010-system-packages.sh

Lines changed: 8 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -49,36 +49,17 @@ dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb
4949
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
5050
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-6.x.list
5151

52-
# Set php version
53-
MAGENTO_PHP_VERSION='7.2';
54-
if $(dpkg --compare-versions "${PROJECT_VERSION}" "gt" "2.3.2-p1"); then
55-
MAGENTO_PHP_VERSION='7.3';
56-
fi
57-
if $(dpkg --compare-versions "${PROJECT_VERSION}" "lt" "2.3"); then
58-
MAGENTO_PHP_VERSION='7.1';
59-
fi
60-
if $(dpkg --compare-versions "${PROJECT_VERSION}" "lt" "2.2"); then
61-
MAGENTO_PHP_VERSION='7.0';
62-
fi
63-
if [ $PROJECT_PHP_VERSION != 'default' ]; then
64-
MAGENTO_PHP_VERSION=$PROJECT_PHP_VERSION
65-
fi
66-
67-
# Set php version env
68-
sed -i '/export PROJECT_PHP_VERSION*/c\'"export PROJECT_PHP_VERSION=${MAGENTO_PHP_VERSION}" /etc/profile.d/env.sh
69-
source /etc/profile.d/env.sh
70-
71-
# PHP and aditionals
52+
# PHP and additional
7253
apt-get update -y && apt-get install -y \
73-
php${PROJECT_PHP_VERSION} php${PROJECT_PHP_VERSION}-common php${PROJECT_PHP_VERSION}-cli \
74-
php${PROJECT_PHP_VERSION}-curl php${PROJECT_PHP_VERSION}-gd php${PROJECT_PHP_VERSION}-intl \
75-
php${PROJECT_PHP_VERSION}-mbstring php${PROJECT_PHP_VERSION}-soap php${PROJECT_PHP_VERSION}-zip \
76-
php${PROJECT_PHP_VERSION}-xml php${PROJECT_PHP_VERSION}-xml php${PROJECT_PHP_VERSION}-bcmath \
77-
php${PROJECT_PHP_VERSION}-mysql php${PROJECT_PHP_VERSION}-sqlite3 php${PROJECT_PHP_VERSION}-fpm \
78-
php${PROJECT_PHP_VERSION}-memcache php${PROJECT_PHP_VERSION}-redis php${PROJECT_PHP_VERSION}-opcache \
54+
php"${PROJECT_PHP_VERSION}" php"${PROJECT_PHP_VERSION}"-common php"${PROJECT_PHP_VERSION}"-cli \
55+
php"${PROJECT_PHP_VERSION}"-curl php"${PROJECT_PHP_VERSION}"-gd php"${PROJECT_PHP_VERSION}"-intl \
56+
php"${PROJECT_PHP_VERSION}"-mbstring php"${PROJECT_PHP_VERSION}"-soap php"${PROJECT_PHP_VERSION}"-zip \
57+
php"${PROJECT_PHP_VERSION}"-xml php"${PROJECT_PHP_VERSION}"-xml php"${PROJECT_PHP_VERSION}"-bcmath \
58+
php"${PROJECT_PHP_VERSION}"-mysql php"${PROJECT_PHP_VERSION}"-sqlite3 php"${PROJECT_PHP_VERSION}"-fpm \
59+
php"${PROJECT_PHP_VERSION}"-memcache php"${PROJECT_PHP_VERSION}"-redis php"${PROJECT_PHP_VERSION}"-opcache \
7960
percona-server-server-5.7 elasticsearch
8061
if $(dpkg --compare-versions "${PROJECT_PHP_VERSION}" "lt" "7.2"); then
81-
apt-get install -y php${PROJECT_PHP_VERSION}-mcrypt
62+
apt-get install -y php"${PROJECT_PHP_VERSION}"-mcrypt
8263
fi
8364

8465
# Composer

provision/020-system-services.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,9 @@ systemd-tmpfiles --create /etc/tmpfiles.d/php-cli-opcache.conf
181181
mkdir /home/vagrant/ssl
182182
cd /home/vagrant/ssl && openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 \
183183
-subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.${PROJECT_URL}" \
184-
-keyout www.${PROJECT_URL}.key -out www.${PROJECT_URL}.crt
185-
cp /home/vagrant/ssl/www.${PROJECT_URL}.crt /etc/ssl/certs/www.${PROJECT_URL}.crt
186-
cp /home/vagrant/ssl/www.${PROJECT_URL}.key /etc/ssl/private/www.${PROJECT_URL}.key
184+
-keyout www."${PROJECT_URL}".key -out www."${PROJECT_URL}".crt
185+
cp /home/vagrant/ssl/www."${PROJECT_URL}".crt /etc/ssl/certs/www."${PROJECT_URL}".crt
186+
cp /home/vagrant/ssl/www."${PROJECT_URL}".key /etc/ssl/private/www."${PROJECT_URL}".key
187187
rm -rf /home/vagrant/ssl && cd /home/vagrant
188188

189189
# Nginx

provision/100-magento-pre.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ mysql -u root -ppassword -e "DROP DATABASE IF EXISTS ${PROJECT_NAME};"
1616
mysql -u root -ppassword -e "CREATE DATABASE ${PROJECT_NAME} COLLATE 'utf8mb4_general_ci';"
1717

1818
# Nginx project conf
19-
cat <<-EOF > /etc/nginx/sites-available/010-$PROJECT_NAME
19+
cat <<-EOF > /etc/nginx/sites-available/010-"$PROJECT_NAME"
2020
upstream fastcgi_backend {
2121
server unix:/run/php/php${PROJECT_PHP_VERSION}-fpm.sock;
2222
}
@@ -39,8 +39,8 @@ server {
3939
error_log /var/log/nginx/${PROJECT_NAME}.error.log error;
4040
}
4141
EOF
42-
sed -i 's/MAGE_ROOT/$MAGE_ROOT/' /etc/nginx/sites-available/010-$PROJECT_NAME
43-
ln -sfn /etc/nginx/sites-available/010-$PROJECT_NAME /etc/nginx/sites-enabled/010-$PROJECT_NAME
42+
sed -i 's/MAGE_ROOT/$MAGE_ROOT/' /etc/nginx/sites-available/010-"$PROJECT_NAME"
43+
ln -sfn /etc/nginx/sites-available/010-"$PROJECT_NAME" /etc/nginx/sites-enabled/010-"$PROJECT_NAME"
4444

4545
# Permission script
4646
cat <<-EOF > /home/vagrant/permission.bak
@@ -63,7 +63,7 @@ chmod 600 /home/vagrant/.ssh/id_rsa
6363
chmod 600 /home/vagrant/.ssh/id_rsa.pub
6464
rm -rf /home/vagrant/.ssh/known_hosts /home/vagrant/.ssh/config
6565
echo -e "StrictHostKeyChecking no\n" >> /home/vagrant/.ssh/config
66-
ssh-keyscan -t rsa ${PROJECT_HOST_REPOSITORY} >> /home/vagrant/.ssh/known_hosts
66+
ssh-keyscan -t rsa "${PROJECT_HOST_REPOSITORY}" >> /home/vagrant/.ssh/known_hosts
6767
mkdir -p /home/vagrant/.composer
6868
cat <<-EOF > /home/vagrant/.composer/auth.json
6969
{

provision/110-magento-app.sh

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -27,20 +27,20 @@ if [ "$PROJECT_SOURCE" == "composer" ]; then
2727
# Install from magento
2828
sudo -u vagrant composer create-project --no-interaction --no-install --no-progress \
2929
--repository=https://repo.magento.com/ magento/project-"$PROJECT_EDITION"-edition="$PROJECT_VERSION" "$PROJECT_NAME" -d "$DIRECTORY_BUILD"
30-
# Install sample data
31-
if [ "$PROJECT_SAMPLE" == "true" ]; then
32-
sudo -u vagrant composer require -d "$PROJECT_BUILD" \
33-
magento/module-bundle-sample-data magento/module-widget-sample-data \
34-
magento/module-theme-sample-data magento/module-catalog-sample-data \
35-
magento/module-customer-sample-data magento/module-cms-sample-data \
36-
magento/module-catalog-rule-sample-data magento/module-sales-rule-sample-data \
37-
magento/module-review-sample-data magento/module-tax-sample-data \
38-
magento/module-sales-sample-data magento/module-grouped-product-sample-data \
39-
magento/module-downloadable-sample-data magento/module-msrp-sample-data \
40-
magento/module-configurable-sample-data magento/module-product-links-sample-data \
41-
magento/module-wishlist-sample-data magento/module-swatches-sample-data \
42-
magento/sample-data-media magento/module-offline-shipping-sample-data
43-
fi
30+
# Install sample data
31+
if [ "$PROJECT_SAMPLE" == "true" ]; then
32+
sudo -u vagrant composer require -d "$PROJECT_BUILD" \
33+
magento/module-bundle-sample-data magento/module-widget-sample-data \
34+
magento/module-theme-sample-data magento/module-catalog-sample-data \
35+
magento/module-customer-sample-data magento/module-cms-sample-data \
36+
magento/module-catalog-rule-sample-data magento/module-sales-rule-sample-data \
37+
magento/module-review-sample-data magento/module-tax-sample-data \
38+
magento/module-sales-sample-data magento/module-grouped-product-sample-data \
39+
magento/module-downloadable-sample-data magento/module-msrp-sample-data \
40+
magento/module-configurable-sample-data magento/module-product-links-sample-data \
41+
magento/module-wishlist-sample-data magento/module-swatches-sample-data \
42+
magento/sample-data-media magento/module-offline-shipping-sample-data
43+
fi
4444
else
4545
# Install from git
4646
sudo -u vagrant git clone "$PROJECT_REPOSITORY" "$PROJECT_BUILD"
@@ -49,6 +49,7 @@ fi
4949

5050
# Composer install
5151
sudo -u vagrant composer install -d "$PROJECT_BUILD" --no-progress --no-interaction --no-suggest
52+
chmod +x "$PROJECT_PATH"/bin/magento
5253

5354
# Rsync directory
5455
if [ "$PROJECT_BUILD" != "$PROJECT_PATH" ]; then
@@ -65,7 +66,6 @@ if [ "$PROJECT_MOUNT" != "nfs" ] || [ "$PROJECT_MOUNT_PATH" == "app" ]; then
6566
fi
6667

6768
# Run install
68-
chmod +x "$PROJECT_PATH"/bin/magento
6969
sudo -u vagrant "$PROJECT_PATH"/bin/magento setup:uninstall -n -q
7070
sudo -u vagrant "$PROJECT_PATH"/bin/magento setup:install \
7171
--base-url="http://${PROJECT_URL}/" \

provision/120-magento-post.sh

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ if [ "$PROJECT_SOURCE" == "composer" ]; then
3434
sudo -u vagrant cp "$PROJECT_PATH"/nginx.conf.sample "$PROJECT_PATH"/nginx.conf
3535
fi
3636
if [ -f "$PROJECT_PATH/nginx.conf" ]; then
37-
sudo -u vagrant cp "$PROJECT_PATH"/nginx.conf /home/vagrant/extra/${PROJECT_NAME}.nginx.conf;
38-
sudo -u vagrant sed -i "s/fastcgi_buffers 1024 4k;/fastcgi_buffers 16 14k;\n fastcgi_buffer_size 32k;/" /home/vagrant/extra/${PROJECT_NAME}.nginx.conf;
37+
sudo -u vagrant cp "$PROJECT_PATH"/nginx.conf /home/vagrant/extra/"${PROJECT_NAME}".nginx.conf;
38+
sudo -u vagrant sed -i "s/fastcgi_buffers 1024 4k;/fastcgi_buffers 16 14k;\n fastcgi_buffer_size 32k;/" /home/vagrant/extra/"${PROJECT_NAME}".nginx.conf;
3939
fi
4040
fi
4141

@@ -58,7 +58,7 @@ fi
5858
# Magento config
5959
redis-cli flushall
6060
if $(dpkg --compare-versions "${PROJECT_VERSION}" "gt" "2.2"); then
61-
sudo -u vagrant "$PROJECT_PATH"/bin/magento setup:config:set \
61+
sudo -u vagrant "$PROJECT_PATH"/bin/magento -n setup:config:set \
6262
--cache-backend=redis \
6363
--cache-backend-redis-server=127.0.0.1 \
6464
--cache-backend-redis-port=6379 \
@@ -69,7 +69,7 @@ if $(dpkg --compare-versions "${PROJECT_VERSION}" "gt" "2.2"); then
6969
--page-cache-redis-db=1 \
7070
--page-cache-redis-compress-data=1
7171

72-
sudo -u vagrant "$PROJECT_PATH"/bin/magento setup:config:set \
72+
sudo -u vagrant "$PROJECT_PATH"/bin/magento -n setup:config:set \
7373
--session-save=redis \
7474
--session-save-redis-host=127.0.0.1 \
7575
--session-save-redis-port=6379 \
@@ -89,8 +89,8 @@ else
8989
fi
9090

9191
# Set crypt key
92-
if [ ! -z "$PROJECT_CRYPT_KEY" ] && [ -f /home/vagrant/extra/db-dump.sql ]; then
93-
sudo -u vagrant bin/magento setup:config:set -n --key ${PROJECT_CRYPT_KEY}
92+
if [ -n "$PROJECT_CRYPT_KEY" ] && [ -f /home/vagrant/extra/db-dump.sql ]; then
93+
sudo -u vagrant bin/magento setup:config:set -n --key "${PROJECT_CRYPT_KEY}"
9494
fi
9595

9696
# Extra post-build
@@ -111,7 +111,7 @@ sudo -u vagrant "$PROJECT_PATH"/bin/magento deploy:mode:set "$PROJECT_MODE"
111111
sudo -u vagrant "$PROJECT_PATH"/bin/magento cache:enable
112112

113113
# Restart services
114-
/etc/init.d/php${PROJECT_PHP_VERSION}-fpm restart
114+
/etc/init.d/php"${PROJECT_PHP_VERSION}"-fpm restart
115115
/etc/init.d/nginx restart
116116
/etc/init.d/mysql restart
117117
/etc/init.d/redis-server restart

0 commit comments

Comments
 (0)