diff --git a/.circleci/adjust-pom-version.sh b/.circleci/adjust-pom-version.sh index 1344b019..e6e6acef 100755 --- a/.circleci/adjust-pom-version.sh +++ b/.circleci/adjust-pom-version.sh @@ -1,23 +1,34 @@ #!/bin/bash -if [ -z "$CIRCLE_BRANCH" ] && [ -z "$CIRCLE_TAG" ]; then - echo "Error: env vars CIRCLE_BRANCH and CIRCLE_TAG were not set." - exit 1; -fi +## todo - some version of: +## - main (or -version tag?) noop? +## - dev ... replace -SNAPSHOT w/ -${timestamp} +## - other tags ... replace -SNAPSHOT w/ -${tag}-${timestamp} -if [ "$CIRCLE_BRANCH" == "dev" ] || [ "$CIRCLE_BRANCH" == "staging" ] || [ "$CIRCLE_BRANCH" == "main" ] || [ \! -z $(echo "$CIRCLE_TAG" | grep "^version-") ]; then - echo "On a primary branch or tag [${CIRCLE_BRANCH}${CIRCLE_TAG}] - will not edit the pom version."; +POM=$(dirname $0)/../pom.xml +echo "On branch: $CIRCLE_BRANCH, tag: $CIRCLE_TAG..." + +REVISION=$(grep '' $POM | sed 's/.*//;s/<.*//'); +echo " in pom.xml is: $REVISION" +if [ \! $(echo "$REVISION" | grep SNAPSHOT) ]; then + echo "Not on a SNAPSHOT revision, so nothing to do here." exit 0; fi -if [ -n "$CIRCLE_BRANCH" ]; then - SLUG=$(echo $CIRCLE_BRANCH | sed 's/[^a-zA-Z0-9]/-/g') -else - SLUG=$(echo $CIRCLE_TAG | sed 's/^snapshot-//g') +SLUG="" +if [ $(echo "$CIRCLE_TAG" | grep ^snapshot-) ]; then + SLUG=$(echo "$CIRCLE_TAG" | sed "s/^snapshot-//")- + echo "Using slug [$SLUG] from tag [$CIRCLE_TAG]" + +elif [ $(echo "$CIRCLE_BRANCH" | grep ^integration/) ]; then + SLUG=$(echo "$CIRCLE_BRANCH" | sed "s,/,-,g")- + echo "Using slug [$SLUG] from branch [$CIRCLE_BRANCH]" fi -POM=$(dirname $0)/../pom.xml +TIMESTAMP=$(date +%Y%m%d-%H%M%S) +REPLACEMENT=${SLUG}${TIMESTAMP} -echo "Updating $POM to: $SLUG-SNAPSHOT" -sed -i "s/.*/$SLUG-SNAPSHOT<\/revision>/" $POM +echo "Updating $POM -SNAPSHOT to: -$REPLACEMENT" +sed -i "s/-SNAPSHOT<\/revision>/-$REPLACEMENT<\/revision>/" $POM git diff $POM + diff --git a/.circleci/config.yml b/.circleci/config.yml index 39d8dc38..b783fc28 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -92,7 +92,7 @@ commands: - run: name: Run Maven Jar Deploy command: | - mvn -s .circleci/mvn-settings.xml -T4 flatten:flatten jar:jar deploy:deploy + mvn -s .circleci/mvn-settings.xml -T4 flatten:flatten jar:jar deploy:deploy -DuniqueVersion=false - save_cache: paths: - ~/.m2