1#!/bin/bash -x 2 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15if [[ $TRAVIS == "true" ]]; then 16 if [[ $TRAVIS_PULL_REQUEST != "false" || $TRAVIS_BRANCH != "main" ]]; then 17 echo "Either a PR or not \"main\" branch, exiting" 18 exit 0 19 fi 20fi 21 22IMGTOOL_VER_PREFIX="\+imgtool_version = " 23IMGTOOL_VER_FILE="imgtool/__init__.py" 24DIST_DIR="dist" 25 26if [[ -z "$TWINE_TOKEN" ]]; then 27 echo "\$TWINE_TOKEN must be set in Travis or GH settings" 28 exit 0 29fi 30 31cd scripts/ 32 33last_release=$(pip show imgtool | grep "Version: " | cut -d" " -f2) 34repo_version=$(grep "imgtool_version = " imgtool/__init__.py | sed 's/^.* = "\(.*\)"/\1/g') 35 36python ../ci/compare_versions.py --old $last_release --new $repo_version 37rc=$? 38 39if [[ $rc -eq 0 ]]; then 40 echo "Imgtool version not changed; will not publish" 41 exit 0 42elif [[ $rc -eq 1 ]]; then 43 echo "Error parsing versions" 44 exit 1 45elif [[ $rc -eq 3 ]]; then 46 echo "Imgtool downgrade detected!" 47 exit 1 48fi 49 50rm -rf $DIST_DIR 51python setup.py sdist bdist_wheel 52 53twine upload --username __token__ --password "${TWINE_TOKEN}" "${DIST_DIR}/*" 54