From 676828fd4f7105d368aa00dee69425db95251843 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Thu, 31 Aug 2017 09:00:47 +0200 Subject: [PATCH] Change deploy script to better handle tags that already exist and move to a separate folder to avoid deploying files that make no sense. --- deploy.sh | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/deploy.sh b/deploy.sh index 296902d..8529a85 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,10 +1,33 @@ #!/usr/bin/env bash +# The script creates a separate folder in build/ and creates tags there, pushes +# them and then uploads the package to PyPI. set -eu -o pipefail +cd CORRECT_FOLDER + +PROJECT_NAME=parso +PROJECT=git-clone +BRANCH=master +FOLDER=build/$PROJECT + +cd $FOLDER +git checkout $BRANCH + # Create tag -git tag v$(python -c 'import parso; print(parso.__version__)') -git push --tags +tag=v$(python -c "import $PROJECT_NAME; print($PROJECT_NAME.__version__)") + +master_ref=$(git show-ref -s $BRANCH) +tag_ref=$(git show-ref -s $tag | true) +if [ $tag_ref ]; then + if [ $tag_ref != $master_ref ]; then + echo 'Cannot tag something that has already been tagged with another commit.' + exit 1 + fi +else + git tag $BRANCH + git push --tags +fi # Package and upload to PyPI rm -rf dist/