blob: ec0dc2107b2bcff8371f946f36c185142f219f45 [file] [log] [blame]
#!/bin/bash
#
# Copyright (c) 2017, 2021 Oracle and/or its affiliates. All rights reserved.
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Distribution License v. 1.0, which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: BSD-3-Clause
#
if [ "$#" -eq 2 ]; then
DEVELOPER_VERSION=$1
RELEASE_VERSION=$2
fi
if [ "$#" -eq 1 ]; then
CURRENT_VERSION=$1
echo "No version specified, reading release version from pom file"
CURRENT_VERSION=`cat pom.xml | grep '<version' -m 1 | cut -d ">" -f 2 | cut -d "<" -f 1 | cut -d "-" -f 1`
echo "Major release version found: $CURRENT_VERSION"
DATESTAMP=`date +%y%m%d.%H%M`
BUILD_NUMBER=b${DATESTAMP}
DEVELOPER_VERSION=${CURRENT_VERSION}-SNAPSHOT
RELEASE_QUALIFIER=${BUILD_NUMBER}
RELEASE_VERSION=${CURRENT_VERSION}-${RELEASE_QUALIFIER}
fi
SCRIPT_DIR=$(cd $(dirname $0); pwd -P)
cd $SCRIPT_DIR/../.. || {
echo >&2 "Cannot change to top working directory"
exit 1
}
command -v git > /dev/null 2>&1 || {
echo >&2 "Cannot locate git executable"
exit 1
}
GIT=$(command -v git 2>&1)
cleanup()
{
${GIT} clean -d -f -x
exit 1
}
edit_poms()
{
TMPFILE=`mktemp $TMPDIR/${RELEASE_VERSION}.XXXXXXXX`
find \
$SCRIPT_DIR/../ \
-name pom.xml \
>> $TMPFILE
echo "Updating pom files to have release versions ..."
while read line
do
echo -n "Editing $line..."
perl -i -pe "s|${DEVELOPER_VERSION}|${RELEASE_VERSION}|g" $line
if [ $? -ne 0 ]; then
echo "FAILED."
echo "Replace versions failed for $line: $!"
cleanup
fi
echo "DONE."
done < "$TMPFILE"
echo "DONE."
}
#############
echo "Updating JAXB POM Files"
echo "DEVELOPER_VERSION = ${DEVELOPER_VERSION}"
echo "RELEASE_VERSION = ${RELEASE_VERSION}"
edit_poms
exit 0