Add release script, fix sed for MacOS
[policy/parent.git] / integration / src / release_scripts / bumpSnapshots.sh
index f8317e2..ced6453 100755 (executable)
@@ -26,6 +26,14 @@ SCRIPT_NAME=`basename $0`
 repo_location="./"
 release_data_file="./pf_release_data.csv"
 
+# Use the bash internal OSTYPE variable to check for MacOS
+if [[ "$OSTYPE" == "darwin"* ]]
+then
+    SED="gsed"
+else
+    SED="sed"
+fi
+
 declare -a pf_repos=(
         "policy/parent"
         "policy/docker"
@@ -146,9 +154,9 @@ do
 
     if [ "$latest_released_tag" = "$next_release_version" ]
     then
-        declare -i major_version=`echo $next_release_version | sed -E 's/^([0-9]*)\.[0-9]*\.[0-9]*$/\1/'`
-        declare -i minor_version=`echo $next_release_version | sed -E 's/^[0-9]*\.([0-9]*)\.[0-9]*$/\1/'`
-        declare -i patch_version=`echo $next_release_version | sed -E 's/^[0-9]*\.[0-9]*\.([0-9]*)$/\1/'`
+        declare -i major_version=`echo $next_release_version | $SED -E 's/^([0-9]*)\.[0-9]*\.[0-9]*$/\1/'`
+        declare -i minor_version=`echo $next_release_version | $SED -E 's/^[0-9]*\.([0-9]*)\.[0-9]*$/\1/'`
+        declare -i patch_version=`echo $next_release_version | $SED -E 's/^[0-9]*\.[0-9]*\.([0-9]*)$/\1/'`
         declare -i new_patch_version=$(($patch_version+1))
 
         new_snapshot_tag="$major_version"."$minor_version"."$new_patch_version"-SNAPSHOT
@@ -161,15 +169,20 @@ do
         temp_file=$(mktemp)
 
         echo updating snapshot version of repo $repo in $repo_location/$repo/version.properties
-        sed -e "s/patch=$patch_version/patch=$new_patch_version/" $repo_location/$repo/version.properties > $temp_file
+        $SED -e "s/patch=$patch_version/patch=$new_patch_version/" $repo_location/$repo/version.properties > $temp_file
         mv $temp_file $repo_location/$repo/version.properties
     fi
 
     updateRefs.sh -pcmos -d $release_data_file -l $repo_location -r $repo
-    git -C $repo_location/$specified_repo status | grep '^[ \t]*modified:[ \t]*pom.xml' > /dev/null 2>&1
-    references_updated=$?
 
-    if [ "$latest_released_tag" != "$next_release_version" ] && [ $references_updated -eq 0 ]
+    if [ "$(git -C $repo_location/$specified_repo status | grep '^[ \t]*modified:[ \t]*pom.xml' > /dev/null 2>&1)" = 0 ]
+    then
+        references_updated=0
+    else
+        references_updated=1
+    fi
+
+    if [ "$latest_released_tag" != "$next_release_version" ] && [ $references_updated -ne 0 ]
     then
         continue
     fi