diff --git a/.gitignore b/.gitignore index 9c9a1af..95388b6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +.vscode /MANIFEST *.pyc /dist diff --git a/Jenkinsfile b/Jenkinsfile index 72d27cb..6032d33 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -7,9 +7,9 @@ pipeline { steps { script { if (env.JOB_NAME == 'passerelle-imio-extra-fees' && env.GIT_BRANCH == 'origin/master') { - sh 'sudo -H -u eobuilder /usr/local/bin/eobuilder -d stretch passerelle-imio-extra-fees' + sh 'sudo -H -u eobuilder /usr/local/bin/eobuilder passerelle-imio-extra-fees' } else if (env.GIT_BRANCH.startsWith('hotfix/')) { - sh "sudo -H -u eobuilder /usr/local/bin/eobuilder -d stretch --branch ${env.GIT_BRANCH} --hotfix passerelle-imio-extra-fees" + sh "sudo -H -u eobuilder /usr/local/bin/eobuilder --branch ${env.GIT_BRANCH} --hotfix passerelle-imio-extra-fees" } } } @@ -19,7 +19,7 @@ pipeline { always { script { utils = new Utils() - utils.mail_notify(currentBuild, env, 'ci+jenkins-passerelle-imio-extra-fees@entrouvert.org') + utils.mail_notify(currentBuild, env, 'ci+jenkins-passerelle-imio-extra-fees@entrouvert.org, admints+jenkins-eo@imio.be') } } success { diff --git a/debian/control b/debian/control index 56de756..8096e7a 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,7 @@ Source: passerelle-imio-extra-fees Maintainer: Frederic Peters Section: python Priority: optional -Build-Depends: python-setuptools (>= 0.6b3), python-all (>= 2.7), debhelper (>= 9), python-django +Build-Depends: python-setuptools, python3-setuptools, python-all, python3-all, debhelper (>= 9), dh-python, python-django, python3-django Standards-Version: 3.9.1 Package: python-passerelle-imio-extra-fees @@ -10,3 +10,8 @@ Architecture: all Depends: ${misc:Depends}, ${python:Depends} Description: Passerelle connector to compute extra fees +Package: python3-passerelle-imio-extra-fees +Architecture: all +Depends: ${misc:Depends}, ${python3:Depends} +Description: Passerelle connector to compute extra fees (Python 3) + diff --git a/debian/rules b/debian/rules index 4647c9c..1f2e7b1 100755 --- a/debian/rules +++ b/debian/rules @@ -1,4 +1,8 @@ #!/usr/bin/make -f +export PYBUILD_NAME=passerelle-imio-extra-fees + %: - dh $@ --with python2 + dh $@ --with python2,python3 --buildsystem=pybuild + +override_dh_auto_test: diff --git a/setup.py b/setup.py index c5a8915..04ca897 100644 --- a/setup.py +++ b/setup.py @@ -1,9 +1,7 @@ #! /usr/bin/env python # -*- coding: utf-8 -*- -import glob import os -import re import subprocess import sys @@ -13,6 +11,7 @@ from distutils.command.sdist import sdist from distutils.cmd import Command from setuptools import setup, find_packages + class eo_sdist(sdist): def run(self): if os.path.exists('VERSION'): @@ -25,20 +24,31 @@ class eo_sdist(sdist): if os.path.exists('VERSION'): os.remove('VERSION') + def get_version(): + '''Use the VERSION, if absent generates a version with git describe, if not + tag exists, take 0.0- and add the length of the commit log. + ''' if os.path.exists('VERSION'): - version_file = open('VERSION', 'r') - version = version_file.read() - version_file.close() - return version + with open('VERSION', 'r') as v: + return v.read() if os.path.exists('.git'): - p = subprocess.Popen(['git', 'describe', '--dirty', '--match=v*'], stdout=subprocess.PIPE) + p = subprocess.Popen(['git', 'describe', '--dirty=.dirty', '--match=v*'], + stdout=subprocess.PIPE, stderr=subprocess.PIPE) result = p.communicate()[0] if p.returncode == 0: - version = result.split()[0][1:] - version = version.replace('-', '.') + result = result.decode('ascii').strip()[1:] # strip spaces/newlines and initial v + if '-' in result: # not a tagged version + real_number, commit_count, commit_hash = result.split('-', 2) + version = '%s.post%s+%s' % (real_number, commit_count, commit_hash) + else: + version = result return version - return '0' + else: + return '0.0.post%s' % len( + subprocess.check_output( + ['git', 'rev-list', 'HEAD']).splitlines()) + return '0.0' class compile_translations(Command): @@ -90,10 +100,10 @@ setup( 'Intended Audience :: Developers', 'License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)', 'Operating System :: OS Independent', - 'Programming Language :: Python', - 'Programming Language :: Python :: 2', + 'Programming Language :: Python :: 3.5.3', ], - install_requires=['django>=1.8', + install_requires=[ + 'django>=1.11', ], zip_safe=False, cmdclass={