aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLianhao Lu <lianhao.lu@intel.com>2018-07-27 13:28:48 +0800
committerLianhao Lu <lianhao.lu@intel.com>2018-08-02 10:01:09 +0800
commit89649fc1d5fa2cfa73c04d53d6ff5e0a46cf2e1f (patch)
treeb88a28d15a6cc1a6278887982ce8828c67f95f63
parent979471fd238cba6847c7e16400c3d8fdb4cc9711 (diff)
Make aria dependency optional
Since cloudify has announced the retirement of aria, we need to add opnfv-toscaparser as our default backend. However, since they have conflicting dependencies, we need to make aria dependency optional. Change-Id: I22bb5f7411162828226d4290fd00dfd91d49efa3 Issue-ID: VNFSDK-292 Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
-rw-r--r--requirements.txt7
-rw-r--r--setup.py4
-rw-r--r--tox.ini3
-rw-r--r--vnfsdk_pkgtools/cli/__main__.py3
-rw-r--r--vnfsdk_pkgtools/validator/aria_validator.py5
5 files changed, 14 insertions, 8 deletions
diff --git a/requirements.txt b/requirements.txt
index f27a466..45562d5 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,5 +1,6 @@
-ruamel.yaml<0.12.0,>=0.11.12
-requests<2.14.0,>=2.3.0
-apache-ariatosca==0.1.1
+ruamel.yaml<0.16
+requests>=2.3.0
+#apache-ariatosca==0.1.1
stevedore >= 1.9.0
udatetime<1.0,>=0.0.16
+nfv-toscaparser<2.0,>=1.0.1
diff --git a/setup.py b/setup.py
index c6ba237..7615d29 100644
--- a/setup.py
+++ b/setup.py
@@ -47,6 +47,8 @@ with open(os.path.join(root_dir, 'requirements.txt')) as requirements:
else:
install_requires.append(requirement)
+extras_require['aria'] = 'apache-ariatosca==0.1.1'
+
version = { }
with open(os.path.join(root_dir, 'vnfsdk_pkgtools/version.py')) as fp:
exec(fp.read(), version)
@@ -83,7 +85,7 @@ setup(
'console_scripts': [
'vnfsdk = vnfsdk_pkgtools.cli.__main__:main'],
'vnfsdk.pkgtools.validator': [
- 'aria = vnfsdk_pkgtools.validator.aria_validator:AriaValidator'
+ 'aria = vnfsdk_pkgtools.validator.aria_validator:AriaValidator [aria]'
]
},
diff --git a/tox.ini b/tox.ini
index 17f33c7..efdc361 100644
--- a/tox.ini
+++ b/tox.ini
@@ -33,7 +33,8 @@ basepython =
[testenv:py27]
commands =
- coverage run --module pytest --junitxml xunit-results.xml
+ pip install 'apache-ariatosca==0.1.1'
+ coverage run --module pytest --junitxml xunit-results.xml tests/
coverage xml --omit=".tox/py27/*","tests/*"
coverage report --omit=".tox/py27/*","tests/*"
#pytest tests --cov-report term-missing --cov vnfsdk_pkgtools
diff --git a/vnfsdk_pkgtools/cli/__main__.py b/vnfsdk_pkgtools/cli/__main__.py
index 88776de..7cb4e54 100644
--- a/vnfsdk_pkgtools/cli/__main__.py
+++ b/vnfsdk_pkgtools/cli/__main__.py
@@ -18,7 +18,6 @@ from vnfsdk_pkgtools.packager import csar
import sys
import logging
import argparse
-from aria import install_aria_extensions
import os
import shutil
import tempfile
@@ -53,8 +52,6 @@ def parse_args(args_list):
"""
CLI entry point
"""
- install_aria_extensions()
-
parser = argparse.ArgumentParser(description='VNF SDK CSAR manipulation tool')
subparsers = parser.add_subparsers(help='csar-create')
diff --git a/vnfsdk_pkgtools/validator/aria_validator.py b/vnfsdk_pkgtools/validator/aria_validator.py
index b4b947c..e84d017 100644
--- a/vnfsdk_pkgtools/validator/aria_validator.py
+++ b/vnfsdk_pkgtools/validator/aria_validator.py
@@ -15,6 +15,7 @@
import os
+from aria import install_aria_extensions
from aria.parser.loading import UriLocation
from aria.parser.consumption import (
ConsumptionContext,
@@ -29,6 +30,10 @@ from vnfsdk_pkgtools import validator
class AriaValidator(validator.ValidatorBase):
+ def __init__(self):
+ super(AriaValidator, self).__init__()
+ install_aria_extensions()
+
def validate(self, reader):
context = ConsumptionContext()
service_template_path = os.path.join(reader.destination,