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