diff --git a/bamboo-specs/src/main/resources/scripts/git-tag.sh b/bamboo-specs/src/main/resources/scripts/git-tag.sh index 6c49c00..b250da1 100755 --- a/bamboo-specs/src/main/resources/scripts/git-tag.sh +++ b/bamboo-specs/src/main/resources/scripts/git-tag.sh @@ -12,32 +12,33 @@ echo "bamboo plan repo 1 branch: $bamboo_planRepository_1_branch" echo "bamboo build number: $bamboo_buildNumber" # update version in poetry to latest version in git if it is lower +# semver regex pattern: (\d+)\.(\d+)\.(\d+)([a-zA-Z\d]*)?-?(dev\d*|post\d*)? check_poetry_version () { projectVersion=$(poetry version -s) tagCount=$(git rev-list --tags --max-count=1 | wc -l) if [[ $tagCount -gt 0 ]] then - gitVersion=$(git rev-list --tags --max-count=1 | git describe --tags) + gitVersion=$(git rev-list --tags --max-count=1 | git describe --tags --abbrev=0) echo "latest version tag in git: ${gitVersion}" echo "current version in project: ${projectVersion}" - if [[ $projectVersion < $gitVersion ]] - then - echo "project version is behind" - echo "setting latest git tag as current version" - poetry version "$gitVersion" - updateVersion=0 # 0 means all is good means true, yes it's weird - elif [[ $projectVersion == $gitVersion ]] - then - echo "project version matches" - echo "keeping the project version" - updateVersion=0 - else - echo "project version is higher (aka. has been manually set in pyproject.toml)" - echo "keeping the project version" - updateVersion=1 - fi + if [[ $projectVersion < $gitVersion ]] + then + echo "project version is behind" + echo "setting latest git tag as current version" + poetry version "$gitVersion" + updateVersion=0 # 0 means all is good means true, yes it's weird + elif [[ $projectVersion == $gitVersion ]] + then + echo "project version matches" + echo "keeping the project version" + updateVersion=0 + else + echo "project version is higher (aka. has been manually set in pyproject.toml)" + echo "keeping the project version" + updateVersion=1 + fi else updateVersion=1 fi