Add version support

This commit is contained in:
Maks Snegov 2021-11-15 00:58:59 +03:00
parent a927f3e2d3
commit 9cf99f78b4
4 changed files with 23 additions and 6 deletions

1
curateipsum/_version.py Normal file
View File

@ -0,0 +1 @@
version = "master"

View File

@ -8,8 +8,9 @@ import sys
import time import time
from curateipsum import backup from curateipsum import backup
from curateipsum._version import version
_lg = logging.getLogger("spqr.curateipsum") _lg = logging.getLogger("curateipsum")
SUPPORTED_PLATFORMS = ("linux", "darwin") SUPPORTED_PLATFORMS = ("linux", "darwin")
@ -21,7 +22,9 @@ def main():
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
prog="cura-te-ipsum", description="cura-te-ipsum, my personal backup software.", prog="cura-te-ipsum", description="cura-te-ipsum, my personal backup software.",
) )
parser.add_argument("-V", "--version", action="version", version="%(prog)s 0.0.1") parser.add_argument("-V", "--version",
action="version",
version=f"%(prog)s {version}")
parser.add_argument("-v", "--verbose", parser.add_argument("-v", "--verbose",
action="store_true", action="store_true",
default=False, default=False,

View File

@ -1,13 +1,27 @@
import setuptools import setuptools
import subprocess
def get_version_from_vcs():
ret_code, git_ver = subprocess.getstatusoutput("git describe")
if ret_code != 0:
from curateipsum._version import version
return version
with open("curateipsum/_version.py", "w") as fd:
fd.write("version = \"%s\"\n" % git_ver)
return git_ver
with open("README.md", "r", encoding="utf-8") as fh: with open("README.md", "r", encoding="utf-8") as fh:
long_description = fh.read() long_description = fh.read()
setuptools.setup( setuptools.setup(
name="cura-te-ipsum", name="cura-te-ipsum",
version="0.0.1.dev7", version=get_version_from_vcs(),
author="Maks Snegov", author="Maks Snegov",
author_email="snegov@spqr.link", author_email="snegov@spqr.link",
url="https://github.com/snegov/cura-te-ipsum",
description="Backup utility", description="Backup utility",
long_description=long_description, long_description=long_description,
long_description_content_type="text/markdown", long_description_content_type="text/markdown",
@ -27,7 +41,7 @@ setuptools.setup(
packages=setuptools.find_packages(include=["curateipsum"]), packages=setuptools.find_packages(include=["curateipsum"]),
entry_points={ entry_points={
"console_scripts": [ "console_scripts": [
"cura-te-ipsum = curateipsum.main:main", "cura-te-ipsum = curateipsum.cli:main",
], ],
}, },
python_requires=">=3.6", python_requires=">=3.6",

View File

@ -5,8 +5,7 @@ import tempfile
from unittest import TestCase, mock from unittest import TestCase, mock
from datetime import datetime from datetime import datetime
import curateipsum.backup as bk from curateipsum import backup as bk, fs
import curateipsum.fs as fs
class TestBackupCleanup(TestCase): class TestBackupCleanup(TestCase):