Files
2017-11-21 14:57:00 +01:00

156 lines
6.4 KiB
Bash

read -p "Entrer le nom du site: " nomdusite
echo "l'url sera ${nomdusite}.dev"
url=${nomdusite}.dev
read -p "Entrer le nom de la base [${nomdusite}_data]: " nombase
nombase=${nombase:-${nomdusite}_data}
echo $nombase
read -p "Entrer le prenom de l'admin [admin]: " prenomAdmin
prenomAdmin=${prenomAdmin:-admin}
echo $prenomAdmin
read -p "Entrer le nom de l'admin [admin]: " nomAdmin
nomAdmin=${nomAdmin:-admin}
read -p "Entrer l'email de l'admin: " emailAdmin
read -p "Entrer l'identifiant de l'admin [admin]: " identifiantAdmin
identifiantAdmin=${identifiantAdmin:-admin}
read -p "Entrer le mot de passe de l'admin: " mdpAdmin
read -p "Entrer l'url de l'admin [admin]: " urlAdmin
urlAdmin=${urlAdmin:-admin}
read -p "Entrer l'identifiant de la base de données [root]: " identifiantBDD
identifiantBDD=${identifiantBDD:-root}
read -p "Entrer le mot de passe de la base de données [edcl56]: " mdpBDD
mdpBDD=${mdpBDD:-edcl56}
docker ps &>/dev/null
if [ $? == 0 ]
then
docker ps
fi
read -p "Host de la base de données [localhost] :" hostBDD
hostBDD=${hostBDD:-localhost}
read -p "Entrer l'emplacement du site [.] :" emplacementSite
emplacementSite=${emplacementSite:-.}
cd $emplacementSite
if [ -d "$nomdusite" ];
then
echo "le site existe déjà";
read -p "Continuer ? [Y/n]" continuer
else
mkdir $nomdusite
fi
continuer=${continuer:-Y}
if [ $continuer = "Y" ];
then
if [ $hostBDD = "localhost" ];
then
/Applications/MAMP/Library/bin/mysql -u $identifiantBDD --password=$mdpBDD -e "CREATE DATABASE IF NOT EXISTS $nombase;"
else
docker exec -i $hostBDD bash -c "mysql -u $identifiantBDD --password=$mdpBDD -e 'CREATE DATABASE IF NOT EXISTS $nombase;'"
fi
cd $nomdusite
mkdir conf log
#git clone https://github.com/magento/magento2.git
if [ ! -d "www" ];
then
cp -R ../Magento2git magento2
mv magento2 www
fi
cd www
read -p "Installer Magento avec docker ou en local ? [local]" installMagento
installMagento=${installMagento:-local}
if [ $installMagento = "local" ];
then
composer install
composer update
php bin/magento setup:install --admin-firstname="$prenomAdmin" --admin-lastname="$nomAdmin" --admin-email="$emailAdmin" --admin-user="$identifiantAdmin" --admin-password="$mdpAdmin" --base-url="$url" --backend-frontname="$urlAdmin" --db-name="$nombase" --db-password="$mdpBDD" --language="fr_FR" --currency="FRF" --timezone="Europe/Paris" --db-host="$hostBDD" --db-user="$identifiantBDD"
echo 'est'
composer update
else
docker ps
read -p "Quel container ?" dockerPhp
docker exec -i $dockerPhp bash -c "cd /home/www/$nomdusite/www;composer install;composer update"
docker exec -i $dockerPhp bash -c "cd /home/www/$nomdusite/www; php bin/magento setup:install --admin-firstname='$prenomAdmin' --admin-lastname='$nomAdmin' --admin-email='$emailAdmin' --admin-user='$identifiantAdmin' --admin-password='$mdpAdmin' --base-url='http://$url' --backend-frontname='$urlAdmin' --db-name='$nombase' --db-password='$mdpBDD' --db-user='$identifiantBDD' --language='fr_FR' --currency='FRF' --timezone='Europe/Paris' --db-host='$hostBDD'"
docker exec -i $dockerPhp bash -c "cd /home/www/$nomdusite/www;composer update;"
fi
git clone http://code.e-declic.net:3000/jmorin/magento2-modules.git
mv magento2-modules/app/code/* app/code/.
sudo rm -R magento2-modules
if [ $installMagento = "local" ];
then
php bin/magento setup:upgrade
php bin/magento wowow:configure
else
docker ps
#read -p "Quel container ?" dockerPhp
docker exec -i $dockerPhp bash -c "cd /home/www/$nomdusite/www; php bin/magento setup:upgrade"
docker exec -it $dockerPhp bash -c "cd /home/www/$nomdusite/www; php bin/magento wowow:configure"
fi
cd ../conf
git clone http://code.e-declic.net:3000/jmorin/conf-magento2.git
sudo mv conf-magento2/* .
sed -i -e "s/urlsite/$urlsite/g" *.conf
sed -i -e "s/nomdusite/$nomdusite/g" *.conf
if [ $installMagento = "local" ];
then
read -p "Emplacement du fichier conf ? (avec / à la fin)" emplacementConf
ln -s mamp-nginx.conf local.conf
ln -s local.conf $emplacementConf$nomdusite.conf
fastcgiPass="$(grep -m 1 fastcgi_pass ./mamp-nginx.conf | awk '{print $2}' | sed "s/;//g")"
else
fastcgiPass="$(grep -m 1 fastcgi_pass ./docker-nginx.conf | awk '{print $3}' | sed "s/;//g")"
ln -s docker-nginx.conf local.conf
docker ps &>/dev/null
if [ $? == 0 ]
then
docker ps
read -p "Host nginx ? " hostNginx
read -p "Emplacement du fichier conf ? [/etc/nginx/sites-enabled/] (avec / à la fin)" emplacementConf
emplacementConf=${emplacementConf:-/etc/nginx/sites-enabled/}
docker exec -i edcl.nginx bash -c "ln -s /home/www/$nomdusite/conf/local.conf $emplacementConf$nomdusite.conf"
else
read -p "Emplacement du fichier conf ? (avec / à la fin)" emplacementConf
ln -s local.conf $emplacementConf$nomdusite.conf
fi
fi
sed -i -e "s/fastcgi_backend/$fastcgiPass/g" ../www/nginx.conf.sample
cd ../www
if [ $hostBDD = "localhost" ];
then
sudo -s -- 'chgrp -R www-data ./*;chmod -R 770 var generation;chmod -R 771 pub;rm -rf var/di/* var/generation/*;php bin/magento deploy:mode:set developer;php bin/magento module:disable Quickshiftin_Assetorderer;php bin/magento setup:static-content:deploy -f fr_FR;php bin/magento setup:static-content:deploy -f en_US;chmod -R 775 pub'
else
docker exec -it $dockerPhp bash -c "cd /home/www/$nomdusite/www;chgrp -R www-data ./*;chmod -R 770 var generation;chmod -R 771 pub;rm -rf var/di/* var/generation/*;php bin/magento deploy:mode:set developer;php bin/magento module:disable Quickshiftin_Assetorderer;php bin/magento setup:static-content:deploy -f fr_FR;php bin/magento setup:static-content:deploy -f en_US;chmod -R 775 pub"
fi
if [ $hostBDD = "localhost" ];
then
/Applications/MAMP/Library/bin/mysql -u $identifiantBDD --password=$mdpBDD -e "use $nombase;insert core_config_data (config_id, scope, scope_id, path, value) values (null, 'default', 0, 'dev/static/sign', 0);"
else
docker exec -i $hostBDD bash -c "mysql -u $identifiantBDD --password=$mdpBDD -e 'use $nombase;insert core_config_data (config_id, scope, scope_id, path, value) values (null, \'default\', 0, \'dev/static/sign\', 0);'"
fi
if [ $installMagento = "local" ];
then
sudo -- sh -c -e "echo 'localhost $url' >> /etc/hosts";
else
ip="$(ssh core@core-01 ifconfig eth0 | grep -m 1 inet | awk '{print $2}')"
sudo -- sh -c -e "echo '$ip $url' >> /etc/hosts";
fi
fi