From e9f971ba3487368fad3bfc0bd37e1ae6cd336e71 Mon Sep 17 00:00:00 2001 From: Jordan Morin Date: Tue, 21 Nov 2017 11:02:53 +0100 Subject: [PATCH] feat : ajout du script install magento 2 --- install.sh | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) create mode 100644 install.sh diff --git a/install.sh b/install.sh new file mode 100644 index 0000000..dd15e75 --- /dev/null +++ b/install.sh @@ -0,0 +1,159 @@ +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 "s/urlsite/$urlsite/g" *.conf + sed -i "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 "s/fastcgi_backend/$fastcgiPass/g" ../www/nginx.conf.sample + + cd ../www + chgrp -Rin www-data ./* + chmod -R 770 var + chmod -R 770 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 + + 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 \ No newline at end of file