From 4e7863c6aa0010c22e471a84859217e1ca8227b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sun, 9 Oct 2016 21:50:15 +0200 Subject: Created scripts folder to store update/install/release process --- Makefile | 29 +++-------------------------- scripts/install.sh | 8 ++++++++ scripts/release.sh | 17 +++++++++++++++++ scripts/update.sh | 11 +++++++++++ 4 files changed, 39 insertions(+), 26 deletions(-) create mode 100644 scripts/install.sh create mode 100644 scripts/release.sh create mode 100644 scripts/update.sh diff --git a/Makefile b/Makefile index a4a06e3f..f7f6138d 100755 --- a/Makefile +++ b/Makefile @@ -1,10 +1,6 @@ TMP_FOLDER=/tmp RELEASE_FOLDER=wllbg-release -SSH_USER=framasoft_bag -SSH_HOST=78.46.248.87 -SSH_PATH=/var/www/framabag.org/web - ENV=prod help: ## Display this help menu @@ -14,19 +10,10 @@ clean: ## Clear the application cache @rm -rf var/cache/* install: ## Install wallabag with the latest version - TAG=$(git describe --tags $(git rev-list --tags --max-count=1)) - @git checkout $(TAG) - @SYMFONY_ENV=$(ENV) composer install --no-dev -o --prefer-dist - @php bin/console wallabag:install --env=$(ENV) + @sh scripts/install.sh $(ENV) update: ## Update the wallabag installation to the latest version - @rm -rf var/cache/* - @git fetch origin - @git fetch --tags - TAG=$(git describe --tags $(git rev-list --tags --max-count=1)) - @git checkout $(TAG) - @SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist - @php bin/console cache:clear --env=prod + @sh scripts/update.sh $(ENV) run: ## Run the wallabag server php bin/console server:run --env=$(ENV) @@ -41,17 +28,7 @@ release: ## Create a package. Need a VERSION parameter (eg: `make release VERSIO ifndef VERSION $(error VERSION is not set) endif - version=$(VERSION) - @rm -rf $(TMP_FOLDER)/$(RELEASE_FOLDER) - @mkdir $(TMP_FOLDER)/$(RELEASE_FOLDER) - @git clone git@github.com:wallabag/wallabag.git -b $(VERSION) $(TMP_FOLDER)/$(RELEASE_FOLDER)/$(VERSION) - @cd $(TMP_FOLDER)/$(RELEASE_FOLDER)/$(VERSION) && SYMFONY_ENV=$(ENV) composer up -n --no-dev - @cd $(TMP_FOLDER)/$(RELEASE_FOLDER)/$(VERSION) && php bin/console wallabag:install --env=$(ENV) - @cd $(TMP_FOLDER)/$(RELEASE_FOLDER) && tar czf wallabag-$(VERSION).tar.gz --exclude="var/cache/*" --exclude="var/logs/*" --exclude="var/sessions/*" --exclude=".git" $(VERSION) - @echo "MD5 checksum of the package for wallabag $(VERSION)" - @md5 $(TMP_FOLDER)/$(RELEASE_FOLDER)/wallabag-$(VERSION).tar.gz - @scp $(TMP_FOLDER)/$(RELEASE_FOLDER)/wallabag-$(VERSION).tar.gz $(SSH_USER)@$(SSH_HOST):$(SSH_PATH) - @rm -rf $(TMP_FOLDER)/$(RELEASE_FOLDER) + @sh scripts/release.sh $(VERSION) $(TMP_FOLDER) $(RELEASE_FOLDER) $(ENV) travis: ## Make some stuff for Travis-CI diff --git a/scripts/install.sh b/scripts/install.sh new file mode 100644 index 00000000..755aac1c --- /dev/null +++ b/scripts/install.sh @@ -0,0 +1,8 @@ +#! /usr/bin/env bash + +ENV=$1 +TAG=$(git describe --tags $(git rev-list --tags --max-count=1)) + +git checkout $TAG +SYMFONY_ENV=$ENV composer install --no-dev -o --prefer-dist +php bin/console wallabag:install --env=$ENV diff --git a/scripts/release.sh b/scripts/release.sh new file mode 100644 index 00000000..3d096430 --- /dev/null +++ b/scripts/release.sh @@ -0,0 +1,17 @@ +#! /usr/bin/env bash + +VERSION=$1 +TMP_FOLDER=$2 +RELEASE_FOLDER=$3 +ENV=$4 + +rm -rf $TMP_FOLDER/$RELEASE_FOLDER +mkdir $TMP_FOLDER/$RELEASE_FOLDER +git clone git@github.com:wallabag/wallabag.git -b $VERSION $TMP_FOLDER/$RELEASE_FOLDER/$VERSION +cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && SYMFONY_ENV=$ENV composer up -n --no-dev +cd $TMP_FOLDER/$RELEASE_FOLDER/$VERSION && php bin/console wallabag:install --env=$ENV +cd $TMP_FOLDER/$RELEASE_FOLDER && tar czf wallabag-$VERSION.tar.gz --exclude="var/cache/*" --exclude="var/logs/*" --exclude="var/sessions/*" --exclude=".git" $VERSION +echo "MD5 checksum of the package for wallabag $VERSION" +md5 $TMP_FOLDER/$RELEASE_FOLDER/wallabag-$VERSION.tar.gz +scp $TMP_FOLDER/$RELEASE_FOLDER/wallabag-$VERSION.tar.gz framasoft_bag@78.46.248.87:/var/www/framabag.org/web +rm -rf $TMP_FOLDER/$RELEASE_FOLDER diff --git a/scripts/update.sh b/scripts/update.sh new file mode 100644 index 00000000..167e84e1 --- /dev/null +++ b/scripts/update.sh @@ -0,0 +1,11 @@ +#! /usr/bin/env bash + +ENV=$1 +TAG=$(git describe --tags $(git rev-list --tags --max-count=1)) + +rm -rf var/cache/* +git fetch origin +git fetch --tags +git checkout $TAG +SYMFONY_ENV=$ENV composer install --no-dev -o --prefer-dist +php bin/console cache:clear --env=$ENV -- cgit v1.2.3