Skip to content

Commit c3c2e78

Browse files
authored
Gitpod yml updates (#15)
* Update .gitpod.yml to improve readability and load times * Reverted init command for installing new Magento instance * Removed name section so command runs after composer install steps * removed task name as process didn't run under this * Cleaned up M2 install script * Moved create db call * Added additional 2FA modules
1 parent c625b9f commit c3c2e78

File tree

2 files changed

+62
-39
lines changed

2 files changed

+62
-39
lines changed

.gitpod.yml

Lines changed: 24 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -18,27 +18,32 @@ github:
1818
master: true
1919
branches: true
2020
tasks:
21-
- openMode: tab-after
22-
name: "Services"
23-
init: sudo chown -R gitpod:gitpod /home/gitpod/.config/composer;
24-
cd $GITPOD_REPO_ROOT &&
25-
composer config -g -a http-basic.repo.magento.com ${MAGENTO_COMPOSER_AUTH_USER} ${MAGENTO_COMPOSER_AUTH_PASS} &&
26-
composer create-project --no-interaction --no-progress --repository-url=https://repo.magento.com/ magento/project-community-edition=${MAGENTO_VERSION} magento2 &&
27-
cd magento2 && cp -avr .* $GITPOD_REPO_ROOT;
28-
cd $GITPOD_REPO_ROOT && rm -r -f magento2 && git checkout -- .gitignore;
29-
command: sudo sed -i 's#$GITPOD_REPO_ROOT#'$GITPOD_REPO_ROOT'#g' /etc/nginx/nginx.conf &&
21+
- init: >
22+
sudo composer self-update &&
23+
cd $GITPOD_REPO_ROOT &&
24+
composer config -g -a http-basic.repo.magento.com ${MAGENTO_COMPOSER_AUTH_USER} ${MAGENTO_COMPOSER_AUTH_PASS} &&
25+
composer create-project --no-interaction --no-progress --repository-url=https://repo.magento.com/ magento/project-community-edition=${MAGENTO_VERSION} magento2 &&
26+
cd magento2 && cp -avr .* $GITPOD_REPO_ROOT;
27+
cd $GITPOD_REPO_ROOT && rm -r -f magento2 && git checkout -- .gitignore;
28+
command: gp ports await 3306 &&
29+
cd $GITPOD_REPO_ROOT &&
30+
test ! -f $GITPOD_REPO_ROOT/gitpod/db-installed.flag && $GITPOD_REPO_ROOT/gitpod/m2-install.sh ;
31+
url=$(gp url | awk -F"//" {'print $2'}) && url="https://8002-"$url"/" &&
32+
php bin/magento config:set web/unsecure/base_url $url &&
33+
php bin/magento config:set web/unsecure/base_link_url $url &&
34+
php bin/magento config:set web/secure/base_url $url
35+
- name: "Supervisor Services"
36+
command: cd $GITPOD_REPO_ROOT &&
37+
test ! -f $GITPOD_REPO_ROOT/gitpod/db-installed.flag && sudo mv /var/lib/mysql $GITPOD_REPO_ROOT/ ;
3038
sudo sed -i 's#$GITPOD_REPO_ROOT#'$GITPOD_REPO_ROOT'#g' /etc/supervisor/conf.d/sp-php-fpm.conf &&
3139
sudo sed -i 's#$PHP_VERSION#'$PHP_VERSION'#g' /etc/supervisor/conf.d/sp-php-fpm.conf &&
3240
sudo cp $GITPOD_REPO_ROOT/gitpod/sp-redis.conf /etc/supervisor/conf.d/redis.conf &&
3341
sudo cp $GITPOD_REPO_ROOT/gitpod/sp-elasticsearch.conf /etc/supervisor/conf.d/elasticsearch.conf &&
3442
sudo sed -i 's/^\(\[supervisord\]\)$/\1\nnodaemon=true/' /etc/supervisor/supervisord.conf &&
35-
service nginx start &
36-
sudo mv /var/lib/mysql $GITPOD_REPO_ROOT/;
37-
sed -i 's#/var/lib/mysql#'$GITPOD_REPO_ROOT'/mysql#g' /etc/mysql/conf.d/mysqld.cnf;
38-
sudo sed -i 's#/var/lib/mysql#'$GITPOD_REPO_ROOT'/mysql#g' /etc/supervisor/conf.d/mysql.conf;
39-
sudo /etc/init.d/supervisor start & \ ;
40-
test ! -f $GITPOD_REPO_ROOT/gitpod/db-installed.flag && $GITPOD_REPO_ROOT/gitpod/m2-install.sh;
41-
url=$(gp url | awk -F"//" {'print $2'}) && url="https://8002-"$url"/";
42-
php bin/magento config:set web/unsecure/base_url $url;
43-
php bin/magento config:set web/unsecure/base_link_url $url;
44-
php bin/magento config:set web/secure/base_url $url;
43+
sed -i 's#/var/lib/mysql#'$GITPOD_REPO_ROOT'/mysql#g' /etc/mysql/conf.d/mysqld.cnf &&
44+
sudo sed -i 's#/var/lib/mysql#'$GITPOD_REPO_ROOT'/mysql#g' /etc/supervisor/conf.d/mysql.conf &&
45+
sudo /etc/init.d/supervisor start
46+
- name: "Nginx"
47+
command: gp ports await 3306 &&
48+
sudo sed -i 's#$GITPOD_REPO_ROOT#'$GITPOD_REPO_ROOT'#g' /etc/nginx/nginx.conf &&
49+
service nginx start

gitpod/m2-install.sh

Lines changed: 38 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,48 @@
11
#!/bin/bash
2-
sleep 12;
3-
mysql -u root -pnem4540 -e 'CREATE DATABASE IF NOT EXISTS magento2;' &&
2+
GITPOD_DIR=$GITPOD_REPO_ROOT/gitpod/;
3+
REPO_ROOT=$GITPOD_REPO_ROOT/;
4+
5+
echo "============ 1. Install Magento if required =========="
6+
mysql -uroot -p$MYSQL_ROOT_PASSWORD -e 'CREATE DATABASE IF NOT EXISTS magento2;'
47
url=$(gp url | awk -F"//" {'print $2'}) && url+="/" &&
58
url="https://8002-"$url &&
6-
if [ "${INSTALL_MAGENTO}" = "YES" ]; then php bin/magento setup:install --db-name='magento2' --db-user='root' --db-password='nem4540' --base-url=$url --backend-frontname='admin' --admin-user=$MAGENTO_ADMIN_USERNAME --admin-password=$MAGENTO_ADMIN_PASSWORD --admin-email=$GITPOD_GIT_USER_EMAIL --admin-firstname='Admin' --admin-lastname='User' --use-rewrites='1' --use-secure='1' --base-url-secure=$url --use-secure-admin='1' --language='en_GB' --db-host='127.0.0.1' --cleanup-database --timezone='Europe/London' --currency='GBP' --session-save='redis'; fi &&
9+
if [ "${INSTALL_MAGENTO}" = "YES" ]; then php bin/magento setup:install --db-name='magento2' --db-user='root' --db-password=$MYSQL_ROOT_PASSWORD --base-url=$url --backend-frontname='admin' --admin-user=$MAGENTO_ADMIN_USERNAME --admin-password=$MAGENTO_ADMIN_PASSWORD --admin-email=$GITPOD_GIT_USER_EMAIL --admin-firstname='Admin' --admin-lastname='User' --use-rewrites='1' --use-secure='1' --base-url-secure=$url --use-secure-admin='1' --language='en_GB' --db-host='127.0.0.1' --cleanup-database --timezone='Europe/London' --currency='GBP' --session-save='redis'; fi &&
10+
echo "----------------------------------------------"
711

8-
n98-magerun2 module:disable Magento_Csp &&
9-
n98-magerun2 module:disable Magento_AdminAdobeImsTwoFactorAuth Magento_TwoFactorAuth &&
10-
n98-magerun2 setup:upgrade &&
12+
echo "================ 2. INSTALL DB ==============="
13+
### UNCOMMENT if using an existing Magento staging DB instead of using the default blank M2 ** ###
14+
#cd $GITPOD_REPO_ROOT/gitpod && unzip magento-db.sql.zip &&
15+
#sed -i 's#staging-domain.com#'$url'#g' magento-db.sql &&
16+
#mysql -uroot -pnem4540 magento2 < magento-db.sql &&
17+
echo "----------------------------------------------"
1118

12-
yes | php bin/magento setup:config:set --session-save=redis --session-save-redis-host=127.0.0.1 --session-save-redis-log-level=3 --session-save-redis-db=0 --session-save-redis-port=6379;
13-
yes | php bin/magento setup:config:set --cache-backend=redis --cache-backend-redis-server=127.0.0.1 --cache-backend-redis-db=1;
14-
yes | php bin/magento setup:config:set --page-cache=redis --page-cache-redis-server=127.0.0.1 --page-cache-redis-db=2;
19+
echo "======= 3. INSTALL MAGENTO ENV & CONFIG ======"
20+
### UNCOMMENT if using an existing Magento code base ###
21+
#cd $GITPOD_DIR &&
22+
#cp "./.magento.env.php" "$GITPOD_REPO_ROOT/app/etc/env.php" &&
23+
#sed -i 's#{{GITPOD_ROOT_DOMAIN}}#'$MAGENTO_URL_FULL'#g' "$GITPOD_REPO_ROOT/app/etc/env.php" &&
24+
#cd $GITPOD_REPO_ROOT &&
25+
#php bin/magento cache:flush &&
26+
#php bin/magento setup:upgrade &&
27+
echo "-----------------------------------------------"
1528

29+
echo "==== 4. CONFIGURATION (config:set) CHANGES ===="
30+
php bin/magento config:set system/security/max_session_size_admin 1024000 &&
1631
php bin/magento config:set web/cookie/cookie_path "/" &&
1732
php bin/magento config:set web/cookie/cookie_domain ".gitpod.io" &&
33+
php bin/magento config:set system/full_page_cache/caching_application 1 &&
34+
php bin/magento deploy:mode:set developer &&
35+
php bin/magento module:disable Magento_AdminAdobeImsTwoFactorAuth Magento_TwoFactorAuth &&
36+
php bin/magento module:disable Magento_Csp &&
37+
php bin/magento module:disable Magento_TwoFactorAuth &&
38+
#php bin/magento config:set algoliasearch_credentials/credentials/enable_backend 0 &&
39+
echo "----------------------------------------------"
1840

19-
n98-magerun2 cache:flush &&
20-
redis-cli flushall &&
21-
22-
#Use this section to import a staging DB instead of using the default blank M2
23-
#cd $GITPOD_REPO_ROOT/gitpod && unzip magento-db.sql.zip &&
24-
#url=$(gp url | awk -F"//" {'print $2'}) && url="8002-"$url && sed -i 's#staging-domain.com#'$url'#g' magento-db.sql &&
25-
#mysql -uroot -pnem4540 magento2 < magento-db.sql &&
26-
#cd $GITPOD_REPO_ROOT && ./bin/magento setup:upgrade &&
27-
#mysql -u root -pnem4540 -e 'use magento2; update core_config_data set value = 8 where path = "design/theme/theme_id";' &&
28-
#n98-magerun2 cache:flush &&
41+
echo "============ 5. CLEAR CACHES ETC ============"
42+
php bin/magento cache:clean config && redis-cli flushall;
43+
php bin/magento indexer:reindex;
44+
echo "----------------------------------------------"
2945

30-
touch $GITPOD_REPO_ROOT/gitpod/db-installed.flag
46+
echo "========== 6. INSTALL FLAG COMPLETE =========="
47+
touch $GITPOD_REPO_ROOT/gitpod/db-installed.flag;
48+
echo "----------------------------------------------"

0 commit comments

Comments
 (0)