Hello community, here is the log from the commit of package python3-ipa for openSUSE:Factory checked in at 2019-05-08 15:17:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python3-ipa (Old) and /work/SRC/openSUSE:Factory/.python3-ipa.new.5148 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python3-ipa" Wed May 8 15:17:21 2019 rev:17 rq:701422 version:3.3.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python3-ipa/python3-ipa.changes 2019-03-26 22:35:38.577648804 +0100 +++ /work/SRC/openSUSE:Factory/.python3-ipa.new.5148/python3-ipa.changes 2019-05-08 15:17:23.701112685 +0200 @@ -1,0 +2,8 @@ +Tue May 7 20:28:57 UTC 2019 - Sean Marlow <sean.marlow@suse.com> + +- Update to v3.3.1 (2019-05-07) + + Add stable release repository. + + Check default dirs exist in `ipa list`. + + Add retry on ec2 image download. + +------------------------------------------------------------------- Old: ---- python3-ipa-3.3.0.tar.gz New: ---- python3-ipa-3.3.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python3-ipa.spec ++++++ --- /var/tmp/diff_new_pack.v4NIuu/_old 2019-05-08 15:17:24.349114129 +0200 +++ /var/tmp/diff_new_pack.v4NIuu/_new 2019-05-08 15:17:24.353114137 +0200 @@ -18,7 +18,7 @@ %bcond_without test Name: python3-ipa -Version: 3.3.0 +Version: 3.3.1 Release: 0 Summary: Command line and API for testing custom images License: GPL-3.0-or-later ++++++ python3-ipa-3.3.0.tar.gz -> python3-ipa-3.3.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/CHANGES.md new/python3-ipa-3.3.1/CHANGES.md --- old/python3-ipa-3.3.0/CHANGES.md 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/CHANGES.md 2019-05-07 21:51:00.000000000 +0200 @@ -1,3 +1,13 @@ +v3.3.1 (2019-05-07) +=================== + +- Add stable release repository for ipa. + [\#189](https://github.com/SUSE-Enceladus/ipa/pull/189) +- Check default dirs exist in ipa list. + [\#191](https://github.com/SUSE-Enceladus/ipa/pull/191) +- Add retry on ec2 image download. + [\#192](https://github.com/SUSE-Enceladus/ipa/pull/192) + v3.3.0 (2019-03-26) =================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/PKG-INFO new/python3-ipa-3.3.1/PKG-INFO --- old/python3-ipa-3.3.0/PKG-INFO 2019-03-26 20:35:16.000000000 +0100 +++ new/python3-ipa-3.3.1/PKG-INFO 2019-05-07 21:52:00.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: python3-ipa -Version: 3.3.0 +Version: 3.3.1 Summary: Package for automated testing of cloud images. Home-page: https://github.com/SUSE-Enceladus/ipa Author: SUSE @@ -150,6 +150,6 @@ Classifier: Programming Language :: Python :: 3.7 Requires-Python: >=3.4 Description-Content-Type: text/markdown -Provides-Extra: tox Provides-Extra: test +Provides-Extra: tox Provides-Extra: dev diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/ipa/__init__.py new/python3-ipa-3.3.1/ipa/__init__.py --- old/python3-ipa-3.3.0/ipa/__init__.py 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/ipa/__init__.py 2019-05-07 21:51:00.000000000 +0200 @@ -22,4 +22,4 @@ __author__ = """SUSE""" __email__ = 'public-cloud-dev@susecloud.net' -__version__ = '3.3.0' +__version__ = '3.3.1' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/ipa/ipa_controller.py new/python3-ipa-3.3.1/ipa/ipa_controller.py --- old/python3-ipa-3.3.0/ipa/ipa_controller.py 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/ipa/ipa_controller.py 2019-05-07 21:51:00.000000000 +0200 @@ -21,6 +21,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. import json +import os import pytest import shlex @@ -138,10 +139,17 @@ return data -def collect_tests(test_dirs, verbose=False): +def collect_tests(test_dirs=TEST_PATHS, verbose=False): """Return a list of test files and/or tests cases.""" + if test_dirs: + test_dirs = [ + test_dir for test_dir in test_dirs if os.path.exists(test_dir) + ] + if not test_dirs: - test_dirs = TEST_PATHS + raise IpaControllerException( + 'No test directories found.' + ) if verbose: plugin = CollectItemsPlugin() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/ipa/scripts/cli.py new/python3-ipa-3.3.1/ipa/scripts/cli.py --- old/python3-ipa-3.3.0/ipa/scripts/cli.py 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/ipa/scripts/cli.py 2019-05-07 21:51:00.000000000 +0200 @@ -34,6 +34,7 @@ SUPPORTED_CLOUDS ) from ipa import ipa_utils +from ipa.ipa_constants import TEST_PATHS from ipa.ipa_controller import collect_tests, test_image from ipa.scripts.cli_utils import ( archive_history_item, @@ -605,6 +606,8 @@ tests otherwise the default test directories are used. """ no_color = context.obj['no_color'] + test_dirs = test_dirs or TEST_PATHS + try: results = collect_tests(test_dirs, verbose) except Exception as error: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/package/python3-ipa.spec new/python3-ipa-3.3.1/package/python3-ipa.spec --- old/python3-ipa-3.3.0/package/python3-ipa.spec 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/package/python3-ipa.spec 2019-05-07 21:51:00.000000000 +0200 @@ -18,7 +18,7 @@ %bcond_without test Name: python3-ipa -Version: 3.3.0 +Version: 3.3.1 Release: 0 Summary: Command line and API for testing custom images License: GPL-3.0-or-later diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/python3_ipa.egg-info/PKG-INFO new/python3-ipa-3.3.1/python3_ipa.egg-info/PKG-INFO --- old/python3-ipa-3.3.0/python3_ipa.egg-info/PKG-INFO 2019-03-26 20:35:16.000000000 +0100 +++ new/python3-ipa-3.3.1/python3_ipa.egg-info/PKG-INFO 2019-05-07 21:52:00.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: python3-ipa -Version: 3.3.0 +Version: 3.3.1 Summary: Package for automated testing of cloud images. Home-page: https://github.com/SUSE-Enceladus/ipa Author: SUSE @@ -150,6 +150,6 @@ Classifier: Programming Language :: Python :: 3.7 Requires-Python: >=3.4 Description-Content-Type: text/markdown -Provides-Extra: tox Provides-Extra: test +Provides-Extra: tox Provides-Extra: dev diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/python3_ipa.egg-info/SOURCES.txt new/python3-ipa-3.3.1/python3_ipa.egg-info/SOURCES.txt --- old/python3-ipa-3.3.0/python3_ipa.egg-info/SOURCES.txt 2019-03-26 20:35:16.000000000 +0100 +++ new/python3-ipa-3.3.1/python3_ipa.egg-info/SOURCES.txt 2019-05-07 21:52:00.000000000 +0200 @@ -49,6 +49,7 @@ tests/test_ipa_cli.py tests/test_ipa_cli_utils.py tests/test_ipa_cloud.py +tests/test_ipa_controller.py tests/test_ipa_distro.py tests/test_ipa_ec2.py tests/test_ipa_gce.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/setup.cfg new/python3-ipa-3.3.1/setup.cfg --- old/python3-ipa-3.3.0/setup.cfg 2019-03-26 20:35:16.000000000 +0100 +++ new/python3-ipa-3.3.1/setup.cfg 2019-05-07 21:52:00.000000000 +0200 @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.3.0 +current_version = 3.3.1 commit = True tag = False diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/setup.py new/python3-ipa-3.3.1/setup.py --- old/python3-ipa-3.3.0/setup.py 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/setup.py 2019-05-07 21:51:00.000000000 +0200 @@ -43,7 +43,7 @@ setup( name='python3-ipa', - version='3.3.0', + version='3.3.1', description="Package for automated testing of cloud images.", long_description=readme, long_description_content_type="text/markdown", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/tests/test_ipa_controller.py new/python3-ipa-3.3.1/tests/test_ipa_controller.py --- old/python3-ipa-3.3.0/tests/test_ipa_controller.py 1970-01-01 01:00:00.000000000 +0100 +++ new/python3-ipa-3.3.1/tests/test_ipa_controller.py 2019-05-07 21:51:00.000000000 +0200 @@ -0,0 +1,37 @@ +#!/usr/bin/python3 +# -*- coding: utf-8 -*- + +"""IPA controller unit tests.""" + +# Copyright (c) 2019 SUSE LLC. All rights reserved. +# +# This file is part of ipa. Ipa provides an api and command line +# utilities for testing images in the Public Cloud. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +from pytest import raises +from unittest.mock import patch + +from ipa.ipa_controller import collect_tests +from ipa.ipa_exceptions import IpaControllerException + + +@patch('ipa.ipa_controller.os') +def test_collect_tests_no_dirs(mock_os): + """Test collect tests default directories do not exist.""" + mock_os.path.exists.return_value = False + + with raises(IpaControllerException): + collect_tests(verbose=True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python3-ipa-3.3.0/usr/share/lib/ipa/tests/SLES/EC2/test_sles_ec2_network.py new/python3-ipa-3.3.1/usr/share/lib/ipa/tests/SLES/EC2/test_sles_ec2_network.py --- old/python3-ipa-3.3.0/usr/share/lib/ipa/tests/SLES/EC2/test_sles_ec2_network.py 2019-03-26 20:34:20.000000000 +0100 +++ new/python3-ipa-3.3.1/usr/share/lib/ipa/tests/SLES/EC2/test_sles_ec2_network.py 2019-05-07 21:51:00.000000000 +0200 @@ -1,16 +1,16 @@ import pytest -types = { - 'c5d.large': 15, - 'd2.xlarge': 15, - 'i3.8xlarge': 15, - 'i3.metal': 15, - 'm5.large': 15, - 'm5d.large': 15, - 'r5.24xlarge': 15, - 't3.small': 15 -} +types = ( + 'c5d.large', + 'd2.xlarge', + 'i3.8xlarge', + 'i3.metal', + 'm5.large', + 'm5d.large', + 'r5.24xlarge', + 't3.small' +) special_regions = [ 'ap-northeast-3', @@ -19,6 +19,8 @@ 'us-gov-west-1' ] +dl_time = 15 + def test_sles_ec2_network(determine_region, host): """ @@ -50,14 +52,19 @@ region ) - dl_result = host.run( - 'curl -o /dev/null --max-time {0} --silent ' - '--write-out "%{{size_download}}|%{{http_code}}" {1}'.format( - types[instance_type], url + for i in range(3): + dl_result = host.run( + 'curl -o /dev/null --max-time {0} --silent ' + '--write-out "%{{size_download}}|%{{http_code}}" {1}'.format( + dl_time, + url + ) ) - ) - size, code = dl_result.stdout.strip().split('|') + size, code = dl_result.stdout.strip().split('|') + + if code == '200' and size == '1214599168': + return if code != '200': pytest.fail('Image ISO not found for region: {0}'.format(region))