From b76315a09b466166a6eec6f0b22f58d3e432c7b9 Mon Sep 17 00:00:00 2001 From: liamfallon Date: Wed, 12 Jan 2022 13:24:54 +0000 Subject: Add release script, fix sed for MacOS This commit: - Adds a releease phase script that somewhat automates releases - updates the scritps to use GNU sed on MacOS Issue-ID: POLICY-3835 Change-Id: I2b79c6a3cc3476280ac00a2288e3cb8686ee976a Signed-off-by: liamfallon --- integration/src/release_scripts/bumpSnapshots.sh | 27 ++++++++++++++++++------ 1 file changed, 20 insertions(+), 7 deletions(-) (limited to 'integration/src/release_scripts/bumpSnapshots.sh') diff --git a/integration/src/release_scripts/bumpSnapshots.sh b/integration/src/release_scripts/bumpSnapshots.sh index f8317e2a..ced6453c 100755 --- a/integration/src/release_scripts/bumpSnapshots.sh +++ b/integration/src/release_scripts/bumpSnapshots.sh @@ -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 -- cgit 1.2.3-korg