@@ -52,6 +52,12 @@ if [[ -z "$1" ]]; then
5252 exit 1
5353fi
5454
55+ CURRENT_DIR=$( pwd)
56+ SLN_FILE=" ${CURRENT_DIR} /FirebaseAdmin/FirebaseAdmin.sln"
57+ if [[ ! -f " ${SLN_FILE} " ]]; then
58+ echo " [ERROR] Prepare script must be executed from the root of the project."
59+ exit 1
60+ fi
5561
5662# ############################
5763# VALIDATE VERSION NUMBER #
103109# Ensure the checked out branch is master
104110CHECKED_OUT_BRANCH=" $( git branch | grep " *" | awk -F ' ' ' {print $2}' ) "
105111if [[ $CHECKED_OUT_BRANCH != " master" ]]; then
106- read -p " [WARN] You are on the '${CHECKED_OUT_BRANCH} ' branch, not 'master'. Continue? (Y/n) " CONTINUE
107- echo
108-
109- if ! [[ $CONTINUE == " Y" ]]; then
110- echo " [INFO] You chose not to continue."
111- exit 1
112- fi
112+ read -p " [WARN] You are on the '${CHECKED_OUT_BRANCH} ' branch, not 'master'. Continue? (y/N) " CONTINUE
113+ case $CONTINUE in
114+ y|Y) ;;
115+ * ) echo " [INFO] You chose not to continue." ;
116+ exit 1 ;;
117+ esac
113118fi
114119
115120# Ensure the branch does not have local changes
116121if [[ $( git status --porcelain) ]]; then
117- read -p " [WARN] Local changes exist in the repo. Continue? (Y/n) " CONTINUE
118- echo
119-
120- if ! [[ $CONTINUE == " Y" ]]; then
121- echo " [INFO] You chose not to continue."
122- exit 1
123- fi
122+ read -p " [WARN] Local changes exist in the repo. Continue? (y/N) " CONTINUE
123+ case $CONTINUE in
124+ y|Y) ;;
125+ * ) echo " [INFO] You chose not to continue." ;
126+ exit 1 ;;
127+ esac
124128fi
125129
126130
131135HOST=$( uname)
132136echo " [INFO] Updating FirebaseAdmin.csproj and CHANGELOG.md"
133137sed -i -e " s/<Version>$CUR_VERSION <\/Version>/<Version>$VERSION <\/Version>/" " ${PROJECT_FILE} "
134- sed -i -e " 1 s/# Unreleased//" " CHANGELOG.md"
135-
136138
137- echo -e " # Unreleased\n\n-\n\n# v${VERSION} " | cat - CHANGELOG.md > TEMP_CHANGELOG.md
139+ awk '
140+ BEGIN { print "# Unreleased\n\n-\n\n# v' ${VERSION} ' " }
141+ /^# Unreleased$/ { next }
142+ { print }
143+ ' CHANGELOG.md > TEMP_CHANGELOG.md
138144mv TEMP_CHANGELOG.md CHANGELOG.md
139145
140146
0 commit comments