File: release.sh

package info (click to toggle)
python-littleutils 0.2.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 108 kB
  • sloc: python: 320; sh: 22; makefile: 2
file content (28 lines) | stat: -rwxr-xr-x 586 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/env bash

set -eux -o pipefail

if [ ! -z "$(git status --porcelain)" ]; then
    set +x
    echo You have uncommitted changes which would mess up the git tag
    exit 1
fi

if [ -z "${1+x}" ]; then
    set +x
    echo Provide a version argument
    echo "${0} <major>.<minor>.<patch>"
    exit 1
fi

if [[ ! ${1} =~ ^([0-9]+)(\.[0-9]+)?(\.[0-9]+)?$ ]]; then
    echo "Not a valid release tag."
    exit 1
fi

export TAG="v${1}"
git tag -f "${TAG}"
git push origin HEAD "${TAG}"
rm -rf ./build ./dist
python -m build --sdist --wheel .
twine upload ./dist/*.whl dist/*.tar.gz