1
0
mirror of https://github.com/github/octodns.git synced 2024-05-11 05:55:00 +00:00

Merge pull request #892 from octodns/pep440-style-versions

Implement pep440 style public and local version numbers
This commit is contained in:
Ross McFarland
2022-03-27 11:56:26 -07:00
committed by GitHub
2 changed files with 20 additions and 5 deletions

View File

@@ -16,6 +16,9 @@ if [ ! -f "$ACTIVATE" ]; then
fi
. "$ACTIVATE"
# Set so that setup.py will create a public release style version number
export OCTODNS_RELEASE=1
VERSION="$(grep __VERSION__ "$ROOT/octodns/__init__.py" | sed -e "s/.* = '//" -e "s/'$//")"
git tag -s "v$VERSION" -m "Release $VERSION"

View File

@@ -1,10 +1,9 @@
#!/usr/bin/env python
try:
from StringIO import StringIO
except ImportError:
from io import StringIO
from os import environ
from os.path import dirname, join
from subprocess import CalledProcessError, check_output
import octodns
try:
@@ -55,6 +54,19 @@ def long_description():
return buf.getvalue()
def version():
# pep440 style public & local version numbers
if environ.get('OCTODNS_RELEASE', False):
# public
return octodns.__VERSION__
try:
sha = check_output(['git', 'rev-parse', 'HEAD']).decode('utf-8')[:8]
except (CalledProcessError, FileNotFoundError):
sha = 'unknown'
# local
return f'{octodns.__VERSION__}+{sha}'
tests_require = (
'pytest>=6.2.5',
'pytest-cov>=3.0.0',
@@ -94,5 +106,5 @@ setup(
python_requires='>=3.6',
tests_require=tests_require,
url='https://github.com/octodns/octodns',
version=octodns.__VERSION__,
version=version(),
)