Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions scripts/release/find_latest_tag.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ const execute = require('../utils/execute');
const [ version ] = process.argv.slice(2);

if (!version) {
console.log('usage example: yarn node find_latest_tag.js v0.21.0');
console.error('usage example: yarn node find_latest_tag.js v0.21.0');
process.exit(1);
}

(async () => {
const tags = (await execute('git tag -l --sort=-v:refname'));
const tags = await execute('git tag -l --sort=-v:refname');

const isPrerelease = semver.prerelease(version) !== null;
const parsedVersion = semver.parse(version);
Expand Down Expand Up @@ -39,7 +39,7 @@ if (!version) {
}

if (!result) {
console.log(`Can't find latest tag for the version ${version}`);
console.error(`Can't find latest tag for the version ${version}`);
process.exit(1);
}

Expand Down
33 changes: 29 additions & 4 deletions scripts/release/release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,29 @@ DIR="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
# get current version
PACKAGE_VERSION=$(cat $DIR/../../package.json|grep version|head -1|awk -F: '{ print $2 }'|sed 's/[", ]//g')

RELEASE_TYPE="$1"
cmd_usage="Usage: yarn release [options]

Options:
-t --type - release or prerelease
-f --from - tag to build changelog from
-h --help - show help
"

for i in "$@"
do
case ${i} in
-h|--help)
echo "$cmd_usage"
exit 0
;;
-t=*|--type=*)
RELEASE_TYPE="${i#*=}"
;;
-f=*|--from=*)
LATEST_TAG="${i#*=}"
;;
esac
done

# if parameter is empty, get release type from current version
if [ -z "$RELEASE_TYPE" ]
Expand All @@ -23,7 +45,7 @@ fi

if [[ $RELEASE_TYPE != "release" ]] && [[ $RELEASE_TYPE != "prerelease" ]]
then
echo "release or prerelease are the only acceptable options"
echo cmd_usage
exit 1
fi

Expand All @@ -44,8 +66,11 @@ yarn node $DIR/bump_version.js "$RELEASE_TYPE"

NEW_PACKAGE_VERSION=$(cat $DIR/../../package.json|grep version|head -1|awk -F: '{ print $2 }'|sed 's/[", ]//g')

# get last tag for changelog
LATEST_TAG=$(yarn node $DIR/find_latest_tag.js $NEW_PACKAGE_VERSION)
if [ -z "$LATEST_TAG" ]
then
# get last tag for changelog
LATEST_TAG=$(yarn node $DIR/find_latest_tag.js $NEW_PACKAGE_VERSION)
fi

# generate changelog
yarn node $DIR/generate_changelog.js $LATEST_TAG
Expand Down