You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ariatosca.apache.org by mx...@apache.org on 2017/11/02 15:13:06 UTC
[4/5] incubator-ariatosca git commit: ARIA-405 Remove support for
Python 2.6
ARIA-405 Remove support for Python 2.6
* setup.py now requires Python 2.7
* Upgrade all 3rd party libraries to recent versions
* API changes to networkx
* Stricter yaml.load call for ruamel.yaml
* Remove iter_modules implementation for Python 2.6
* Remove NullHander implementation for Python 2.6
* Remove "py26" tox test environments
Project: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/commit/b1f03efc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/tree/b1f03efc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/diff/b1f03efc
Branch: refs/heads/ARIA-392-Failing-to-load-ruamel.yaml
Commit: b1f03efcedd814f5fe38f051bfa0106cc715586f
Parents: ae89ddb
Author: Tal Liron <ta...@gmail.com>
Authored: Mon Oct 30 16:56:57 2017 -0500
Committer: Tal Liron <ta...@gmail.com>
Committed: Mon Oct 30 17:08:59 2017 -0500
----------------------------------------------------------------------
.travis.yml | 23 ++-------
Makefile | 8 ++--
README.rst | 7 +--
appveyor.yml | 2 +-
aria/__init__.py | 9 +---
aria/cli/csar.py | 4 +-
aria/cli/inputs.py | 4 +-
aria/logger.py | 10 +---
aria/orchestrator/workflows/api/task_graph.py | 11 +++--
aria/utils/imports.py | 18 -------
.../simple_v1_0/modeling/__init__.py | 2 +-
requirements.in | 42 ++++++++---------
requirements.txt | 28 +++++------
setup.py | 15 +++---
.../test_task_graph_into_execution_graph.py | 2 +-
tests/requirements.txt | 11 ++---
tox.ini | 49 +++++---------------
17 files changed, 80 insertions(+), 165 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index 958be80..b264ab3 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -19,19 +19,7 @@ sudo: true
language: python
-addons:
- apt:
- sources:
- - sourceline: 'ppa:fkrull/deadsnakes'
- packages:
- # Ubuntu 14.04 (trusty) does not come with Python 2.6, so we will install it from Felix
- # Krull's PPA
- - python2.6
- - python2.6-dev
-
python:
- # We handle Python 2.6 testing from within tox (see tox.ini); note that this means that we run
- # tox itself always from Python 2.7
- '2.7'
env:
@@ -39,14 +27,11 @@ env:
# for PyTest's xdist plugin. The reason this is necessary is that conventional Travis environments
# may report a large amount of available CPUs, but they they are greatly restricted. Through trial
# and error we found that more than 1 process may result in failures.
- - PYTEST_PROCESSES=1 TOX_ENV=pylint_code
+ - PYTEST_PROCESSES=1 TOX_ENV=pylint_core
- PYTEST_PROCESSES=1 TOX_ENV=pylint_tests
- - PYTEST_PROCESSES=1 TOX_ENV=py27
- - PYTEST_PROCESSES=1 TOX_ENV=py26
- - PYTEST_PROCESSES=1 TOX_ENV=py27e2e
- - PYTEST_PROCESSES=1 TOX_ENV=py26e2e
- - PYTEST_PROCESSES=1 TOX_ENV=py27ssh
- - PYTEST_PROCESSES=1 TOX_ENV=py26ssh
+ - PYTEST_PROCESSES=1 TOX_ENV=core
+ - PYTEST_PROCESSES=1 TOX_ENV=e2e
+ - PYTEST_PROCESSES=1 TOX_ENV=ssh
- PYTEST_PROCESSES=1 TOX_ENV=docs
before_install:
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/Makefile
----------------------------------------------------------------------
diff --git a/Makefile b/Makefile
index 9fef3ab..e68538e 100644
--- a/Makefile
+++ b/Makefile
@@ -51,11 +51,11 @@ docs:
test:
pip install --upgrade "tox>=2.7.0"
- tox -e pylint_code \
+ tox -e pylint_core \
-e pylint_tests \
- -e py$(PYTHON_VERSION) \
- -e py$(PYTHON_VERSION)e2e \
- -e py$(PYTHON_VERSION)ssh \
+ -e core \
+ -e e2e \
+ -e ssh \
-e docs
./requirements.txt: ./requirements.in
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/README.rst
----------------------------------------------------------------------
diff --git a/README.rst b/README.rst
index 1985f10..c905277 100644
--- a/README.rst
+++ b/README.rst
@@ -28,7 +28,7 @@ Installation
ARIA is `available on PyPI <https://pypi.python.org/pypi/apache-ariatosca>`__.
-ARIA requires Python 2.6/2.7. Python 3 is currently not supported.
+ARIA requires Python 2.7. Python 3 is currently not supported.
To install ARIA directly from PyPI (using a ``wheel``), use::
@@ -78,14 +78,12 @@ and run::
# TODO
-
To install ``pip``, either use your operating system's package management system, or run::
wget http://bootstrap.pypa.io/get-pip.py
python get-pip.py
-
Getting Started
---------------
@@ -168,9 +166,8 @@ ARIA is licensed under the
.. |Closed Pull Requests| image:: https://img.shields.io/github/issues-pr-closed-raw/apache/incubator-ariatosca.svg
:target: https://github.com/apache/incubator-ariatosca/pulls?q=is%3Apr+is%3Aclosed
+
Code of Conduct
---------------
The ARIA TOSCA Project follows `The Apache Code of Conduct <https://www.apache.org/foundation/policies/conduct.html>`__.
-
-
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/appveyor.yml
----------------------------------------------------------------------
diff --git a/appveyor.yml b/appveyor.yml
index 1158706..f7d70e6 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -14,7 +14,7 @@
# limitations under the License.
environment:
- TOX_ENV: pywin
+ TOX_ENV: windows
matrix:
- PYTHON: "C:\\Python27"
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/aria/__init__.py
----------------------------------------------------------------------
diff --git a/aria/__init__.py b/aria/__init__.py
index 76a62ce..9fe8b3d 100644
--- a/aria/__init__.py
+++ b/aria/__init__.py
@@ -19,7 +19,9 @@ The ARIA root package provides entry points for extension and storage initializa
import sys
+from pkgutil import iter_modules
import pkg_resources
+
aria_package_name = 'apache-ariatosca'
__version__ = pkg_resources.get_distribution(aria_package_name).version
@@ -34,13 +36,6 @@ from . import ( # pylint: disable=wrong-import-position
cli
)
-if sys.version_info < (2, 7):
- # pkgutil in python2.6 has a bug where it fails to import from protected modules, which causes
- # the entire process to fail. In order to overcome this issue we use our custom iter_modules
- from .utils.imports import iter_modules
-else:
- from pkgutil import iter_modules
-
__all__ = (
'__version__',
'workflow',
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/aria/cli/csar.py
----------------------------------------------------------------------
diff --git a/aria/cli/csar.py b/aria/cli/csar.py
index 40b1699..32a8eb1 100644
--- a/aria/cli/csar.py
+++ b/aria/cli/csar.py
@@ -127,7 +127,7 @@ class _CSARReader(object):
@property
def entry_definitions_yaml(self):
with open(os.path.join(self.destination, self.entry_definitions)) as f:
- return yaml.load(f)
+ return yaml.load(f, Loader=yaml.SafeLoader)
def _extract(self):
self.logger.debug('Extracting CSAR contents')
@@ -144,7 +144,7 @@ class _CSARReader(object):
self.logger.debug('CSAR metadata file: {0}'.format(csar_metafile))
self.logger.debug('Attempting to parse CSAR metadata YAML')
with open(csar_metafile) as f:
- self.metadata.update(yaml.load(f))
+ self.metadata.update(yaml.load(f, Loader=yaml.SafeLoader))
self.logger.debug('CSAR metadata:{0}{1}'.format(os.linesep, pprint.pformat(self.metadata)))
def _validate(self):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/aria/cli/inputs.py
----------------------------------------------------------------------
diff --git a/aria/cli/inputs.py b/aria/cli/inputs.py
index bea3e1a..495dd5f 100644
--- a/aria/cli/inputs.py
+++ b/aria/cli/inputs.py
@@ -88,10 +88,10 @@ def _parse_yaml_path(resource):
# if resource is a path - parse as a yaml file
if os.path.isfile(resource):
with open(resource) as f:
- content = yaml.load(f.read())
+ content = yaml.load(f.read(), Loader=yaml.SafeLoader)
else:
# parse resource content as yaml
- content = yaml.load(resource)
+ content = yaml.load(resource, Loader=yaml.SafeLoader)
except yaml.error.YAMLError as e:
raise AriaCliError("'{0}' is not a valid YAML. {1}".format(
resource, str(e)))
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/aria/logger.py
----------------------------------------------------------------------
diff --git a/aria/logger.py b/aria/logger.py
index f4f6ec9..d83b6ae 100644
--- a/aria/logger.py
+++ b/aria/logger.py
@@ -19,15 +19,7 @@ formatting.
"""
import logging
-from logging import handlers as logging_handlers
-# NullHandler doesn't exist in < 27. this workaround is from
-# http://docs.python.org/release/2.6/library/logging.html#configuring-logging-for-a-library
-try:
- from logging import NullHandler # pylint: disable=unused-import
-except ImportError:
- class NullHandler(logging.Handler):
- def emit(self, record):
- pass
+from logging import (handlers as logging_handlers, NullHandler)
from datetime import datetime
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/aria/orchestrator/workflows/api/task_graph.py
----------------------------------------------------------------------
diff --git a/aria/orchestrator/workflows/api/task_graph.py b/aria/orchestrator/workflows/api/task_graph.py
index 900a0d1..eb3967b 100644
--- a/aria/orchestrator/workflows/api/task_graph.py
+++ b/aria/orchestrator/workflows/api/task_graph.py
@@ -69,7 +69,7 @@ class TaskGraph(object):
"""
Iterator over tasks in the graph.
"""
- for _, data in self._graph.nodes_iter(data=True):
+ for _, data in self._graph.nodes(data=True):
yield data['task']
def topological_order(self, reverse=False):
@@ -79,7 +79,10 @@ class TaskGraph(object):
:param reverse: whether to reverse the sort
:return: list which represents the topological sort
"""
- for task_id in topological_sort(self._graph, reverse=reverse):
+ task_ids = topological_sort(self._graph)
+ if reverse:
+ task_ids = reversed(tuple(task_ids))
+ for task_id in task_ids:
yield self.get_task(task_id)
def get_dependencies(self, dependent_task):
@@ -92,7 +95,7 @@ class TaskGraph(object):
"""
if not self.has_tasks(dependent_task):
raise TaskNotInGraphError('Task id: {0}'.format(dependent_task.id))
- for _, dependency_id in self._graph.out_edges_iter(dependent_task.id):
+ for _, dependency_id in self._graph.out_edges(dependent_task.id):
yield self.get_task(dependency_id)
def get_dependents(self, dependency_task):
@@ -105,7 +108,7 @@ class TaskGraph(object):
"""
if not self.has_tasks(dependency_task):
raise TaskNotInGraphError('Task id: {0}'.format(dependency_task.id))
- for dependent_id, _ in self._graph.in_edges_iter(dependency_task.id):
+ for dependent_id, _ in self._graph.in_edges(dependency_task.id):
yield self.get_task(dependent_id)
# task methods
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/aria/utils/imports.py
----------------------------------------------------------------------
diff --git a/aria/utils/imports.py b/aria/utils/imports.py
index 14ad09e..bb3e07f 100644
--- a/aria/utils/imports.py
+++ b/aria/utils/imports.py
@@ -17,7 +17,6 @@
Utilities for dynamically loading Python code.
"""
-import pkgutil
import importlib
@@ -77,20 +76,3 @@ def load_attribute(attribute_path):
except AttributeError:
# TODO: handle
raise
-
-
-def iter_modules():
- # apparently pkgutil had some issues in python 2.6. Accessing any root level directories
- # failed. and it got the entire process of importing fail. Since we only need any
- # aria_extension related loading, in the meantime we could try to import only those
- # (and assume they are not located at the root level.
- # [In python 2.7 it does actually ignore any OSError].
- yielded = {}
- for importer in pkgutil.iter_importers():
- try:
- for module_name, ispkg in pkgutil.iter_importer_modules(importer):
- if module_name not in yielded:
- yielded[module_name] = True
- yield importer, module_name, ispkg
- except OSError:
- pass
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/extensions/aria_extension_tosca/simple_v1_0/modeling/__init__.py
----------------------------------------------------------------------
diff --git a/extensions/aria_extension_tosca/simple_v1_0/modeling/__init__.py b/extensions/aria_extension_tosca/simple_v1_0/modeling/__init__.py
index d960e05..0588a8f 100644
--- a/extensions/aria_extension_tosca/simple_v1_0/modeling/__init__.py
+++ b/extensions/aria_extension_tosca/simple_v1_0/modeling/__init__.py
@@ -397,7 +397,7 @@ def create_operation_template_model(context, service_template, operation):
# Parse as YAML
try:
- value = yaml.load(value)
+ value = yaml.load(value, Loader=yaml.SafeLoader)
except yaml.parser.MarkedYAMLError as e:
context.validation.report(
'YAML parser {0} in operation configuration: {1}'
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/requirements.in
----------------------------------------------------------------------
diff --git a/requirements.in b/requirements.in
index 1d83ec8..c5bfc78 100644
--- a/requirements.in
+++ b/requirements.in
@@ -13,27 +13,23 @@
# In order to create the requirements.txt file, execute
# pip-compile --output-file requirements.txt requirements.in (pip-tools package is needed).
-requests>=2.3.0, <2.14.0
-networkx>=1.9, <1.10 # version 1.10 dropped support of python 2.6
-retrying>=1.3.0, <1.4.0
-blinker>1.3, <1.5
-jsonpickle>0.9.0, <=0.9.4
-ruamel.yaml>=0.11.12, <0.12.0 # version 0.12.0 dropped support of python 2.6
-Jinja2>=2.8, <2.9
-shortuuid>=0.5, <0.6
+backports.shutil_get_terminal_size>=1, <2
+blinker>=1.4, <1.5
+bottle>=0.12, <0.13
CacheControl[filecache]>=0.11.0, <0.13
-SQLAlchemy>=1.1.0, <1.2 # version 1.2 dropped support of python 2.6
-wagon==0.6.0
-bottle>=0.12.0, <0.13
-setuptools>=35.0.0, <36.0.0
-click>=6.0, < 7.0
-colorama>=0.3.7, <=0.3.9
-PrettyTable>=0.7,<0.8
-click_didyoumean==0.0.3
-backports.shutil_get_terminal_size==1.0.0
-logutils==0.3.4.1
-psutil>=5.2.2, < 6.0.0
-importlib ; python_version < '2.7'
-ordereddict ; python_version < '2.7'
-total-ordering ; python_version < '2.7' # only one version on pypi
-wheel<=0.29.0 ; python_version < '2.7'
+click>=6, < 7
+click_didyoumean>=0.0.3, <0.1
+colorama>=0.3, <=0.4
+Jinja2>=2.9, <3.0
+jsonpickle>=0.9, <=1.0
+logutils>=0.3, <0.4
+networkx>=2.0, <2.1
+PrettyTable>=0.7, <0.8
+psutil>=5.4, <5.5
+requests>=2.3, <2.14
+retrying>=1.3, <1.4
+ruamel.yaml>=0.15, <0.16
+setuptools>=36, <37
+shortuuid>=0.5, <0.6
+SQLAlchemy>=1.1, <1.2
+wagon>=0.6, <0.7
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/requirements.txt
----------------------------------------------------------------------
diff --git a/requirements.txt b/requirements.txt
index bcc5296..2af8fe3 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,40 +2,34 @@
# This file is autogenerated by pip-compile
# To update, run:
#
-# pip-compile --output-file requirements.txt requirements.in
+# pip-compile --output-file ./requirements.txt ./requirements.in
#
-appdirs==1.4.3 # via setuptools
-backports.shutil_get_terminal_size==1.0.0
+backports.shutil-get-terminal-size==1.0.0
blinker==1.4
bottle==0.12.13
cachecontrol[filecache]==0.12.1
+click-didyoumean==0.0.3
click==6.7
-click_didyoumean==0.0.3
colorama==0.3.9
-decorator==4.0.11 # via networkx
-importlib==1.0.4 ; python_version < "2.7"
-jinja2==2.8.1
+decorator==4.1.2 # via networkx
+jinja2==2.9.6
jsonpickle==0.9.4
lockfile==0.12.2 # via cachecontrol
logutils==0.3.4.1
markupsafe==1.0 # via jinja2
msgpack-python==0.4.8 # via cachecontrol
-networkx==1.9.1
-ordereddict==1.1 ; python_version < "2.7"
-packaging==16.8 # via setuptools
+networkx==2.0
prettytable==0.7.2
-psutil==5.2.2
-pyparsing==2.2.0 # via packaging
+psutil==5.4.0
requests==2.13.0
retrying==1.3.3
ruamel.ordereddict==0.4.9 # via ruamel.yaml
-ruamel.yaml==0.11.15
+ruamel.yaml==0.15.34
shortuuid==0.5.0
-six==1.10.0 # via packaging, retrying, setuptools
+six==1.10.0 # via retrying
sqlalchemy==1.1.6
-total-ordering==0.1.0 ; python_version < "2.7"
wagon==0.6.0
-wheel==0.29.0 ; python_version < "2.7"
+wheel==0.29.0 # via wagon
# The following packages are considered to be unsafe in a requirements file:
-setuptools==35.0.2
+# setuptools
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/setup.py
----------------------------------------------------------------------
diff --git a/setup.py b/setup.py
index 8e95c19..8483c5b 100644
--- a/setup.py
+++ b/setup.py
@@ -23,7 +23,7 @@ from setuptools.command.develop import develop
_PACKAGE_NAME = 'apache-ariatosca'
-_PYTHON_SUPPORTED_VERSIONS = [(2, 6), (2, 7)]
+_PYTHON_SUPPORTED_VERSIONS = [(2, 7)]
_EXTENSION_DIR = 'extensions'
_EXTENSION_NAMES = [
'aria_extension_tosca'
@@ -31,7 +31,7 @@ _EXTENSION_NAMES = [
if (sys.version_info[0], sys.version_info[1]) not in _PYTHON_SUPPORTED_VERSIONS:
raise NotImplementedError(
- '{0} Package support Python version 2.6 & 2.7 Only'.format(
+ '{0} Package supports Python version 2.7 only'.format(
_PACKAGE_NAME))
root_dir = os.path.dirname(__file__)
@@ -46,11 +46,11 @@ with open(os.path.join(root_dir, 'README.rst')) as readme:
install_requires = []
ssh_requires = [
- 'Fabric>=1.13.0, <1.14',
+ 'Fabric>=1.14, <1.15'
]
win_ssh_requires = [
# Fabric depends on the pypiwin32 on Windows, but doesn't install it
- 'pypiwin32==219'
+ 'pypiwin32>=220'
]
extras_require = {
@@ -60,11 +60,11 @@ extras_require = {
with open(os.path.join(root_dir, 'requirements.in')) as requirements:
for requirement in requirements.readlines():
- requirement = requirement.split('#')[0].strip() # get rid of comments or trailing comments
+ requirement = requirement.split('#')[0].strip() # Get rid of comments or trailing comments
if not requirement:
- continue # skip empty and comment lines
+ continue # Skip empty and comment lines
- # dependencies which use environment markers have to go in as conditional dependencies
+ # Dependencies which use environment markers have to go in as conditional dependencies
# under "extra_require" rather than "install_requires", or otherwise the environment
# markers get ignored when installing from wheel. See more here:
# https://wheel.readthedocs.io/en/latest/index.html#defining-conditional-dependencies
@@ -140,7 +140,6 @@ setup(
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
- 'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: System :: Networking',
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
----------------------------------------------------------------------
diff --git a/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py b/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
index e24c901..9f072f6 100644
--- a/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
+++ b/tests/orchestrator/workflows/core/test_task_graph_into_execution_graph.py
@@ -83,7 +83,7 @@ def test_task_graph_into_execution_graph(tmpdir):
compiler = graph_compiler.GraphCompiler(workflow_context, base.StubTaskExecutor)
compiler.compile(test_task_graph)
- execution_tasks = topological_sort(_graph(workflow_context.execution.tasks))
+ execution_tasks = tuple(topological_sort(_graph(workflow_context.execution.tasks)))
assert len(execution_tasks) == 9
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/tests/requirements.txt
----------------------------------------------------------------------
diff --git a/tests/requirements.txt b/tests/requirements.txt
index 56a7bf5..f2c3a45 100644
--- a/tests/requirements.txt
+++ b/tests/requirements.txt
@@ -10,13 +10,12 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-testtools==2.3.0
fasteners==0.14.1
-sh==1.12.14
-psutil==5.2.2
mock==2.0.0
pylint==1.6.5
-pytest==3.2.0
+pytest==3.2.3
pytest-cov==2.5.1
-pytest-mock==1.6.2
-pytest-xdist==1.18.2
+pytest-mock==1.6.3
+pytest-xdist==1.20.1
+sh==1.12.14
+testtools==2.3.0
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b1f03efc/tox.ini
----------------------------------------------------------------------
diff --git a/tox.ini b/tox.ini
index 765435a..b48119d 100644
--- a/tox.ini
+++ b/tox.ini
@@ -11,9 +11,8 @@
# limitations under the License.
[tox]
-envlist=py27,py26,py27e2e,py26e2e,pywin,py27ssh,pylint_code,pylint_tests,docs
+envlist=core,e2e,windows,ssh,pylint_core,pylint_tests,docs
processes={env:PYTEST_PROCESSES:auto}
-py26={env:PY26:python2.6}
[testenv]
whitelist_externals=
@@ -29,18 +28,15 @@ deps=
--requirement
tests/requirements.txt
basepython=
- py26: {[tox]py26}
- py27: python2.7
- py26e2e: {[tox]py26}
- py27e2e: python2.7
- py26ssh: {[tox]py26}
- py27ssh: python2.7
- pywin: {env:PYTHON:}\python.exe
- pylint_code: python2.7
+ core: python2.7
+ e2e: python2.7
+ ssh: python2.7
+ windows: {env:PYTHON:}\python.exe
+ pylint_core: python2.7
pylint_tests: python2.7
docs: python2.7
-[testenv:py27]
+[testenv:core]
commands=
pytest tests \
--numprocesses={[tox]processes} \
@@ -49,30 +45,14 @@ commands=
--cov-report term-missing \
--cov aria
-[testenv:py26]
-commands=
- pytest tests \
- --numprocesses={[tox]processes} \
- --ignore=tests/end2end \
- --ignore=tests/orchestrator/execution_plugin/test_ssh.py \
- --cov-report term-missing \
- --cov aria
-
-[testenv:py27e2e]
+[testenv:e2e]
commands=
pytest tests/end2end \
--numprocesses={[tox]processes} \
--cov-report term-missing \
--cov aria
-[testenv:py26e2e]
-commands=
- pytest tests/end2end \
- --numprocesses={[tox]processes} \
- --cov-report term-missing \
- --cov aria
-
-[testenv:pywin]
+[testenv:windows]
commands=
pytest tests \
--numprocesses={[tox]processes} \
@@ -81,21 +61,14 @@ commands=
--cov-report term-missing \
--cov aria
-[testenv:py27ssh]
+[testenv:ssh]
install_command=
pip install {opts} {packages} .[ssh]
commands=
pytest tests/orchestrator/execution_plugin/test_ssh.py \
--numprocesses={[tox]processes}
-[testenv:py26ssh]
-install_command=
- pip install {opts} {packages} .[ssh]
-commands=
- pytest tests/orchestrator/execution_plugin/test_ssh.py \
- --numprocesses={[tox]processes}
-
-[testenv:pylint_code]
+[testenv:pylint_core]
commands=
pylint aria extensions/aria_extension_tosca/ \
--rcfile=aria/.pylintrc \