Summary: As per the title Reviewed By: danielbuechele Differential Revision: D10050043 fbshipit-source-id: 7e3744fd9d2224456515cfa7187faebbf1541fa6
94 lines
3.3 KiB
Bash
Executable File
94 lines
3.3 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
darwin=false
|
|
case "$(uname)" in
|
|
Darwin*) darwin=true ;;
|
|
esac
|
|
|
|
if ! jq --version > /dev/null; then
|
|
echo -e "jq is not installed! Should the script install it for you? (y/n) \\c"
|
|
read -r REPLY
|
|
if [ "$REPLY" = "y" ]; then
|
|
brew install jq
|
|
else
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
echo "Checking for any uncommitted changes..."
|
|
CHANGES=$(hg st)
|
|
echo "$CHANGES"
|
|
|
|
if [ ! -z "$CHANGES" ];
|
|
then
|
|
echo "There are uncommitted changes, either commit it or revert them."
|
|
exit 1
|
|
fi
|
|
|
|
echo "✨ Making a new release..."
|
|
|
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
SONAR_DIR="$DIR/../"
|
|
FLIPPERKIT_PODSPEC_PATH="$SONAR_DIR/iOS/FlipperKit.podspec"
|
|
FLIPPER_PODSPEC_PATH="$SONAR_DIR/xplat/Flipper/Flipper.podspec"
|
|
SONAR_GETTING_STARTED_DOC="$SONAR_DIR/docs/getting-started.md"
|
|
SPECS_DIR="$SONAR_DIR/Specs/"
|
|
FLIPPERKIT_VERSION_TAG='flipperkit_version'
|
|
OLD_VERSION_POD_ARG=$(< "$FLIPPER_PODSPEC_PATH" grep "$FLIPPERKIT_VERSION_TAG =" )
|
|
OLD_VERSION="${OLD_VERSION_POD_ARG##* }"
|
|
|
|
echo "Currently released version is $OLD_VERSION, What should the version of the next release be?"
|
|
read -r VERSION
|
|
|
|
echo "Updating version $VERSION in podspecs, podfiles and in getting started docs..."
|
|
|
|
# Update Podspec files and podfiles with correct version
|
|
echo "Updating $FLIPPERKIT_PODSPEC_PATH"
|
|
if $darwin; then
|
|
sed -i '' "s/${FLIPPERKIT_VERSION_TAG} = ${OLD_VERSION}/${FLIPPERKIT_VERSION_TAG} = '${VERSION}'/" "$FLIPPERKIT_PODSPEC_PATH"
|
|
echo "Updating $FLIPPER_PODSPEC_PATH"
|
|
sed -i '' "s/${FLIPPERKIT_VERSION_TAG} = ${OLD_VERSION}/${FLIPPERKIT_VERSION_TAG} = '${VERSION}'/" "$FLIPPER_PODSPEC_PATH"
|
|
echo "Updating $SONAR_GETTING_STARTED_DOC"
|
|
sed -i '' "s/${FLIPPERKIT_VERSION_TAG} = ${OLD_VERSION}/${FLIPPERKIT_VERSION_TAG} = '${VERSION}'/" "$SONAR_GETTING_STARTED_DOC"
|
|
else
|
|
sed -i "s/${FLIPPERKIT_VERSION_TAG} = ${OLD_VERSION}/${FLIPPERKIT_VERSION_TAG} = '${VERSION}'/" "$FLIPPERKIT_PODSPEC_PATH"
|
|
echo "Updating $FLIPPER_PODSPEC_PATH"
|
|
sed -i "s/${FLIPPERKIT_VERSION_TAG} = ${OLD_VERSION}/${FLIPPERKIT_VERSION_TAG} = '${VERSION}'/" "$FLIPPER_PODSPEC_PATH"
|
|
echo "Updating $SONAR_GETTING_STARTED_DOC"
|
|
sed -i "s/${FLIPPERKIT_VERSION_TAG} = ${OLD_VERSION}/${FLIPPERKIT_VERSION_TAG} = '${VERSION}'/" "$SONAR_GETTING_STARTED_DOC"
|
|
fi
|
|
# Copy Podfiles
|
|
|
|
if [ ! -d "$SPECS_DIR/FlipperKit/" ] # for file "if [-f /home/rama/file]"
|
|
then
|
|
mkdir "$SPECS_DIR/FlipperKit/"
|
|
fi
|
|
|
|
if [ ! -d "$SPECS_DIR/Flipper/" ] # for file "if [-f /home/rama/file]"
|
|
then
|
|
mkdir "$SPECS_DIR/Flipper/"
|
|
fi
|
|
|
|
mkdir "$SPECS_DIR/FlipperKit/$VERSION" # New Specs dir for FlipperKit podspec
|
|
mkdir "$SPECS_DIR/Flipper/$VERSION" # New Specs dir for Flipper podspec
|
|
echo "Copying FlipperKit.podspec in Specs folder"
|
|
cp "$FLIPPERKIT_PODSPEC_PATH" "$SPECS_DIR/FlipperKit/$VERSION" # Copied FlipperKit podspec
|
|
echo "Copying Flipper.podspec in Specs folder"
|
|
cp "$FLIPPER_PODSPEC_PATH" "$SPECS_DIR/Flipper/$VERSION" # Copied Flipper podspec
|
|
|
|
echo "Bumping version number for android related files..."
|
|
# Update Android related files
|
|
"$SONAR_DIR"/scripts/bump.sh "$VERSION"
|
|
|
|
#Update Package.json
|
|
echo "Bumping version number in package.json"
|
|
jq '.version = $newVal' --arg newVal "$VERSION" "$SONAR_DIR"/package.json > tmp.$$.json && mv tmp.$$.json "$SONAR_DIR"/package.json
|
|
|
|
echo "Committing the files..."
|
|
hg addremove
|
|
hg commit -m"Flipper Release: v$VERSION"
|
|
|
|
echo "Preparing diff for your review..."
|
|
arc diff --prepare
|