From cea5033f857ed1f673b2ee8aef66d97fc71a83c1 Mon Sep 17 00:00:00 2001 From: Paul Cuzner Date: Mon, 11 Feb 2019 16:17:26 +1300 Subject: [PATCH] Dynamically determine version from __init__.py Improved way of automatically building the python package based on the __version__ maintained in __init__.py Signed-off-by: Paul Cuzner --- setup.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index b3edd55..7b72c4d 100644 --- a/setup.py +++ b/setup.py @@ -1,8 +1,13 @@ #!/usr/bin/python from setuptools import setup + import distutils.command.install_scripts import shutil +import re + +module_file = open("runner_service/__init__.py").read() +metadata = dict(re.findall(r"__([a-z]+)__\s*=\s*'([^']+)'", module_file)) # idea from http://stackoverflow.com/a/11400431/2139420 @@ -20,7 +25,7 @@ def run(self): setup( name="ansible-runner-service", - version=0.9, + version=metadata['version'], description="Ansible runner based REST API", long_description="Ansible runner based light weight RESTful web service", author="Paul Cuzner",