summaryrefslogtreecommitdiff
path: root/setup.py
diff options
context:
space:
mode:
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py80
1 files changed, 49 insertions, 31 deletions
diff --git a/setup.py b/setup.py
index 3e89eec..7523222 100644
--- a/setup.py
+++ b/setup.py
@@ -20,14 +20,12 @@ setup file for leap.mx
import os
import re
from setuptools import setup, find_packages
+from setuptools import Command
+
+from pkg.utils.reqs import parse_requirements, is_develop_mode
import versioneer
-versioneer.versionfile_source = 'src/leap/mx/_version.py'
-versioneer.versionfile_build = 'leap/mx/_version.py'
-versioneer.tag_prefix = '' # tags are like 1.2.0
-versioneer.parentdir_prefix = 'leap.mx-'
-from pkg.utils.reqs import parse_requirements
trove_classifiers = [
'Development Status :: 3 - Alpha',
@@ -44,11 +42,11 @@ trove_classifiers = [
'Topic :: Security :: Cryptography',
]
-DOWNLOAD_BASE = ('https://github.com/leapcode/leap_mx/'
+DOWNLOAD_BASE = ('https://github.com/leapcode/bitmask_client/'
'archive/%s.tar.gz')
_versions = versioneer.get_versions()
VERSION = _versions['version']
-VERSION_FULL = _versions['full']
+VERSION_REVISION = _versions['full-revisionid']
DOWNLOAD_URL = ""
# get the short version for the download url
@@ -60,15 +58,29 @@ if len(_version_short) > 0:
cmdclass = versioneer.get_cmdclass()
-from setuptools import Command
-
-
class freeze_debianver(Command):
+
"""
Freezes the version in a debian branch.
To be used after merging the development branch onto the debian one.
"""
user_options = []
+ template = r"""
+# This file was generated by the `freeze_debianver` command in setup.py
+# Using 'versioneer.py' (0.16) from
+# revision-control system data, or from the parent directory name of an
+# unpacked source archive. Distribution tarballs contain a pre-generated copy
+# of this file.
+
+version_version = '{version}'
+full_revisionid = '{full_revisionid}'
+"""
+ templatefun = r"""
+
+def get_versions(default={}, verbose=False):
+ return {'version': version_version,
+ 'full-revisionid': full_revisionid}
+"""
def initialize_options(self):
pass
@@ -82,25 +94,11 @@ class freeze_debianver(Command):
if proceed != "y":
print("He. You scared. Aborting.")
return
- template = r"""
-# This file was generated by the `freeze_debianver` command in setup.py
-# Using 'versioneer.py' (0.7+) from
-# revision-control system data, or from the parent directory name of an
-# unpacked source archive. Distribution tarballs contain a pre-generated copy
-# of this file.
-
-version_version = '{version}'
-version_full = '{version_full}'
-"""
- templatefun = r"""
-
-def get_versions(default={}, verbose=False):
- return {'version': version_version, 'full': version_full}
-"""
- subst_template = template.format(
+ subst_template = self.template.format(
version=VERSION_SHORT,
- version_full=VERSION_FULL) + templatefun
- with open(versioneer.versionfile_source, 'w') as f:
+ full_revisionid=VERSION_REVISION) + self.templatefun
+ versioneer_cfg = versioneer.get_config_from_root('.')
+ with open(versioneer_cfg.versionfile_source, 'w') as f:
f.write(subst_template)
@@ -113,7 +111,25 @@ else:
# be automatically
# placed by distutils, using whatever interpreter is
# available.
- data_files = [("/usr/local/bin/", ["pkg/mx.tac"])]
+ data_files = [("/usr/share/app/", ["pkg/mx.tac"])]
+
+
+requirements = parse_requirements()
+
+if is_develop_mode():
+ print
+ print ("[WARNING] Skipping leap-specific dependencies "
+ "because development mode is detected.")
+ print ("[WARNING] You can install "
+ "the latest published versions with "
+ "'pip install -r pkg/requirements-leap.pip'")
+ print ("[WARNING] Or you can instead do 'python setup.py develop' "
+ "from the parent folder of each one of them.")
+ print
+else:
+ requirements += parse_requirements(
+ reqfiles=["pkg/requirements-leap.pip"])
+
setup(
name='leap.mx',
version=VERSION,
@@ -134,8 +150,10 @@ setup(
namespace_packages=["leap"],
package_dir={'': 'src'},
packages=find_packages('src'),
- #test_suite='leap.mx.tests',
- install_requires=parse_requirements(),
+ test_suite='leap.mx.tests',
+ tests_require=parse_requirements(
+ reqfiles=['pkg/requirements-testing.pip']),
+ install_requires=requirements,
classifiers=trove_classifiers,
data_files=data_files
)