Skip to content

Instantly share code, notes, and snippets.

@mseijas
Created October 18, 2016 19:28
Show Gist options
  • Save mseijas/389fae5f988214bb5eca7401d5cbb7ca to your computer and use it in GitHub Desktop.
Save mseijas/389fae5f988214bb5eca7401d5cbb7ca to your computer and use it in GitHub Desktop.
#!/bin/bash
# fail if any commands fails
set -e
# debug log
# set -x
# Settings
export version_prefix="v"
export version_number=$XPI_VERSION
export pre_release_identifier_prefix="-"
export pre_release_identifier="internal"
export pre_release_number_prefix="."
export pre_release_initial_value=1
# Required parameters
if [ -z "${version_number}" ] ; then
echo " [!] No 'Version Number' (version_number) specified!"
exit 1
fi
if [ -z "${pre_release_identifier}" ] ; then
echo " [!] No 'Pre-release identifier' (pre_release_identifier) specified!"
exit 1
fi
if [ -z "${pre_release_initial_value}" ] ; then
echo " [!] No 'Pre-release initial value' (pre_release_initial_value) specified!"
exit 1
fi
pattern="${version_prefix}${version_number}${pre_release_identifier_prefix}${pre_release_identifier}${pre_release_number_prefix}*"
found_tag="$(git tag -l "${pattern}" | sort -t"${pre_release_number_prefix}" -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tail -1)"
pre_release_info=""
if [ -z "$found_tag" ]; then
pre_release_info="${pre_release_identifier}${pre_release_number_prefix}${pre_release_initial_value}"
envman add --key GIT_TAG_BUILD_NUMBER --value "${pre_release_initial_value}"
else
pre_release_number="${found_tag#$pattern}"
pre_release_number=$((pre_release_number+1))
pre_release_info="${pre_release_identifier}${pre_release_number_prefix}${pre_release_number}"
envman add --key GIT_TAG_BUILD_NUMBER --value "${pre_release_number}"
fi
envman add --key APP_VERSION_PRE_RELEASE_INFO --value "${pre_release_info}"
envman add --key APP_VERSION_WITH_PRE_RELEASE_INFO --value "${version_prefix}${version_number}${pre_release_identifier_prefix}${pre_release_info}"
echo "Pre-release info: ${pre_release_info}"
echo "Version with pre-release info: ${version_prefix}${version_number}${pre_release_identifier_prefix}${pre_release_info}"
echo "---"
echo "Current build number: ${GIT_TAG_BUILD_NUMBER}"
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment