diff --git a/Makefile b/Makefile index cb75c12..3952d98 100644 --- a/Makefile +++ b/Makefile @@ -25,4 +25,11 @@ reset: ## Reset files permissions for all directory @docker-compose run --no-deps --rm shell bash -c "find /app -user daemon -exec chown ${UID}:${GID} {} \;" +version-major: ## Create a major version for a directory, e.g. make version-major mapping-tools + @./bin/version-major.sh "$(filter-out $@,$(MAKECMDGOALS))" +version-minor: ## Create a minor version for a directory, e.g. make version-minor mapping-tools + @./bin/version-minor.sh "$(filter-out $@,$(MAKECMDGOALS))" + +version-patch: ## Create a patch version for a directory, e.g. make version-patch mapping-tools + @./bin/version-patch.sh "$(filter-out $@,$(MAKECMDGOALS))" diff --git a/bin/version-major.sh b/bin/version-major.sh new file mode 100755 index 0000000..98b3652 --- /dev/null +++ b/bin/version-major.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +LAST_VERSION=$(git tag | sort -n | grep "$1" | tail -1) +MAJOR_VERSION=$(echo "$LAST_VERSION" | cut -d@ -f2 | cut -d\. -f1) + +((NEW_MAJOR_VERSION=${MAJOR_VERSION:=0}+1)) +NEW_VERSION="$1@${NEW_MAJOR_VERSION}.0.0" +git tag "${NEW_VERSION}" -m "${NEW_VERSION}" +git push --tags +echo "Nouvelle version créée: ${NEW_VERSION}" +echo "URL à utiliser: https://gitbucket.inist.fr/tdm/web-services/archive/mapping-tools/${NEW_VERSION}.zip" diff --git a/bin/version-minor.sh b/bin/version-minor.sh new file mode 100755 index 0000000..8b07c72 --- /dev/null +++ b/bin/version-minor.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +LAST_VERSION=$(git tag | sort -n | grep "$1" | tail -1) +MAJOR_VERSION=$(echo "$LAST_VERSION" | cut -d@ -f2 | cut -d\. -f1) +MINOR_VERSION=$(echo "$LAST_VERSION" | cut -d\. -f2) + +((NEW_MINOR_VERSION=${MINOR_VERSION:=-1}+1)) +NEW_VERSION="$1@${MAJOR_VERSION:=0}.${NEW_MINOR_VERSION}.0" +git tag "${NEW_VERSION}" -m "${NEW_VERSION}" +git push --tags +echo "Nouvelle version créée: ${NEW_VERSION}" +echo "URL à utiliser: https://gitbucket.inist.fr/tdm/web-services/archive/mapping-tools/${NEW_VERSION}.zip" diff --git a/bin/version-patch.sh b/bin/version-patch.sh new file mode 100755 index 0000000..f1923f1 --- /dev/null +++ b/bin/version-patch.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +LAST_VERSION=$(git tag | sort -n | grep "$1" | tail -1) +MAJOR_VERSION=$(echo "$LAST_VERSION" | cut -d@ -f2 | cut -d\. -f1) +MINOR_VERSION=$(echo "$LAST_VERSION" | cut -d\. -f2) +PATCH_VERSION=$(echo "$LAST_VERSION" | cut -d\. -f3) + +((NEW_PATCH_VERSION=${PATCH_VERSION:=-1}+1)) +NEW_VERSION="$1@${MAJOR_VERSION:=0}.${MINOR_VERSION:=0}.${NEW_PATCH_VERSION:=0}" +git tag "${NEW_VERSION}" -m "${NEW_VERSION}" +git push --tags +echo "Nouvelle version créée: ${NEW_VERSION}" +echo "URL à utiliser: https://gitbucket.inist.fr/tdm/web-services/archive/mapping-tools/${NEW_VERSION}.zip"