From e54d720fa09f2c59cccd416061f7a7b7d8964e2f Mon Sep 17 00:00:00 2001 From: garciadeblas Date: Thu, 12 Dec 2019 15:59:03 +0100 Subject: [PATCH] Updated Dockerfile for 18.04; added python-magic dependency, minor fixes in build process Change-Id: Id9bfc1745349124e61e59fecb90bdb5b1d61ea3e Signed-off-by: garciadeblas --- Dockerfile | 8 ++++---- debian/py3dist-overrides | 15 +++++++++++++++ devops-stages/stage-build.sh | 2 +- requirements.txt | 23 +++++++++++++++++++++++ setup.py | 2 +- test-requirements.txt | 1 - tox.ini | 24 ++++++++++++++---------- 7 files changed, 58 insertions(+), 17 deletions(-) create mode 100644 debian/py3dist-overrides create mode 100644 requirements.txt diff --git a/Dockerfile b/Dockerfile index e40b8bc..ef0175a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,9 +11,9 @@ # License for the specific language governing permissions and limitations # under the License. # -FROM ubuntu:16.04 +FROM ubuntu:18.04 -RUN apt-get update && apt-get -y install git make python python3 \ - libcurl4-gnutls-dev libgnutls-dev tox python-dev python3-dev \ - debhelper python-setuptools python3-setuptools python-all python3-all \ +RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y install git \ + make python3 python3-pip libcurl4-openssl-dev libssl-dev tox python3-dev \ + debhelper python3-setuptools python3-all python-all python-pip \ apt-utils diff --git a/debian/py3dist-overrides b/debian/py3dist-overrides new file mode 100644 index 0000000..e6059cd --- /dev/null +++ b/debian/py3dist-overrides @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +python-magic diff --git a/devops-stages/stage-build.sh b/devops-stages/stage-build.sh index dd4af61..7b00243 100755 --- a/devops-stages/stage-build.sh +++ b/devops-stages/stage-build.sh @@ -13,5 +13,5 @@ # See the License for the specific language governing permissions and # limitations under the License. -rm -rf deb_dist +rm -rf deb_dist osmclient-*.tar.gz tox -e build,build3 diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..997ff57 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,23 @@ +# Copyright 2019 ETSI OSM +# +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +Click +prettytable +PyYAML +pycurl +python-magic +jinja2 +git+https://osm.etsi.org/gerrit/osm/IM.git#egg=osm-im diff --git a/setup.py b/setup.py index 689e926..313d087 100644 --- a/setup.py +++ b/setup.py @@ -28,7 +28,7 @@ setup( description=_description, license='Apache 2', install_requires=[ - 'Click', 'prettytable', 'pyyaml', 'pycurl', 'python-magic', + 'Click', 'prettytable', 'pyyaml', 'PycURL', 'python-magic', 'jinja2', 'osm-im' ], dependency_links=[ diff --git a/test-requirements.txt b/test-requirements.txt index 301fb43..e944b57 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -16,4 +16,3 @@ nose mock -git+https://osm.etsi.org/gerrit/osm/IM.git#egg=osm-im \ No newline at end of file diff --git a/tox.ini b/tox.ini index 4f7d816..b02cab2 100644 --- a/tox.ini +++ b/tox.ini @@ -15,35 +15,39 @@ # under the License. # [tox] -envlist = py27,py35,flake8,pyflakes +envlist = py36,flakes toxworkdir={toxinidir}/.tox [testenv] -deps = -r{toxinidir}/test-requirements.txt +deps = -r{toxinidir}/requirements.txt + -r{toxinidir}/test-requirements.txt +install_command = python3 -m pip install -U {opts} {packages} commands=nosetests -install_command = python -m pip install -r test-requirements.txt -U {opts} {packages} -[testenv:flake8] +[testenv:flakes] basepython = python3 deps = flake8 + pyflakes + -r{toxinidir}/requirements.txt + -r{toxinidir}/test-requirements.txt +install_command = python3 -m pip install -U {opts} {packages} commands = flake8 setup.py - -[testenv:pyflakes] -basepython = python3 -deps = pyflakes -commands = pyflakes osmclient [testenv:build] basepython = python deps = stdeb setuptools-version-command -commands = python setup.py --command-packages=stdeb.command bdist_deb + -r{toxinidir}/requirements.txt +install_command = python2 -m pip install -U {opts} {packages} +commands = python2 setup.py --command-packages=stdeb.command bdist_deb [testenv:build3] basepython = python3 deps = stdeb setuptools-version-command + -r{toxinidir}/requirements.txt +install_command = python3 -m pip install -U {opts} {packages} commands = python3 setup.py --command-packages=stdeb.command bdist_deb -- 2.17.1