#!/bin/bash # Docker commands to build iflrandevu # First setup docker and install alpine image # Approximately 10min (tested with 4vcpu / 8GB RAM / 30Mbps network speed) IFLRANDEVU_VER="1.4.3-ifl.2" # UPDATE MANUALLY ! _RED='\033[0;31m' _NC='\033[0m \e[0m' # No Color, No Effect if [[ $1 != "docker" ]]; then if [[ $(pwd) != *iflrandevu/docker/build ]]; then echo "PLEASE CHANGE DIRECTORY TO \`iflrandevu/docker/build\` BEFORE STARTING SCRIPT" exit fi docker rm IFLRANDEVU_BUILDER docker run -it -d --name IFLRANDEVU_BUILDER --mount type=bind,source=".",target=/link/ alpine:latest "/bin/sh" echo -e "RUN COMMANDS IN ALPINE DOCKER" echo -e "RUN SCRIPT: \`${_RED}apk add bash && bash /link/docker.sh docker${_NC}\`" docker attach IFLRANDEVU_BUILDER --detach-keys="ctrl-k" exit elif [[ $1 == "docker" ]]; then set -ex # Inside Alpine Docker apk update && apk upgrade apk add git npm composer apk add php-gd php-dom php-xml php-xmlwriter phpunit mkdir /docker_build/ cd /docker_build/ git clone https://git.aliberksandikci.com.tr/ifl/iflrandevu cd iflrandevu composer update composer upgrade npm audit fix # maybe no need ? npm install && composer install npm run build apk add zip echo "DELETING OLD BUILD FILE!!! (after waiting 30 sec)" sleep 30 mkdir -p /link/output/ if [[ -f "/link/iflrandevu-$IFLRANDEVU_VER.zip" ]]; then echo "THIS VERSION ALREADY EXIST" sleep 1 echo "DELETING OLD ARCHIVE" sleep 5 rm "/link/iflrandevu-$IFLRANDEVU_VER.zip" fi cd /docker_build/iflrandevu/build/ zip -r "/link/iflrandevu-$IFLRANDEVU_VER.zip" ./* sleep 5 echo "BYE!" exit fi echo "EXIT" # TODO convert to dockerfile