From 9458e6a93677b1fe293928e5e119eb27586710a1 Mon Sep 17 00:00:00 2001
From: openeuler-ci-bot <80474298@qq.com>
Date: Wed, 16 Dec 2020 18:58:55 +0800
Subject: [PATCH 1/2] [patch tracking] 20201216185849780153 -
https://github.com/OSInside/kiwi/commit/11b86dec821fe15fbca1cbdf5b3947660be88c19
---
...6dec821fe15fbca1cbdf5b3947660be88c19.patch | 608 ++++++++++++++++++
1 file changed, 608 insertions(+)
create mode 100644 11b86dec821fe15fbca1cbdf5b3947660be88c19.patch
diff --git a/11b86dec821fe15fbca1cbdf5b3947660be88c19.patch b/11b86dec821fe15fbca1cbdf5b3947660be88c19.patch
new file mode 100644
index 0000000..f316783
--- /dev/null
+++ b/11b86dec821fe15fbca1cbdf5b3947660be88c19.patch
@@ -0,0 +1,608 @@
+diff --git a/kiwi/builder/container.py b/kiwi/builder/container.py
+index c16f9ec7c9..6894b6f797 100644
+--- a/kiwi/builder/container.py
++++ b/kiwi/builder/container.py
+@@ -113,7 +113,7 @@ def create(self):
+ log.info(
+ 'Setting up %s container', self.requested_container_type
+ )
+- container_setup = ContainerSetup(
++ container_setup = ContainerSetup.new(
+ self.requested_container_type, self.root_dir,
+ self.container_config
+ )
+@@ -130,7 +130,7 @@ def create(self):
+ log.info(
+ '--> Creating container image'
+ )
+- container_image = ContainerImage(
++ container_image = ContainerImage.new(
+ self.requested_container_type, self.root_dir, self.container_config
+ )
+ self.filename = container_image.create(
+diff --git a/kiwi/container/__init__.py b/kiwi/container/__init__.py
+index eb515790c3..c64031614b 100644
+--- a/kiwi/container/__init__.py
++++ b/kiwi/container/__init__.py
+@@ -15,16 +15,18 @@
+ # You should have received a copy of the GNU General Public License
+ # along with kiwi. If not, see
+ #
+-# project
+-from kiwi.container.oci import ContainerImageOCI
+-from kiwi.container.appx import ContainerImageAppx
++import importlib
++from abc import (
++ ABCMeta,
++ abstractmethod
++)
+
+ from kiwi.exceptions import (
+ KiwiContainerImageSetupError
+ )
+
+
+-class ContainerImage:
++class ContainerImage(metaclass=ABCMeta):
+ """
+ **Container Image factory**
+
+@@ -32,20 +34,29 @@ class ContainerImage:
+ :param string root_dir: root directory path name
+ :param dict custom_args: custom arguments
+ """
+- def __new__(self, name, root_dir, custom_args=None):
+- if name == 'docker':
+- return ContainerImageOCI(
+- root_dir, 'docker-archive', custom_args=custom_args
+- )
+- elif name == 'oci':
+- return ContainerImageOCI(
+- root_dir, 'oci-archive', custom_args=custom_args
+- )
+- elif name == 'appx':
+- return ContainerImageAppx(
+- root_dir, custom_args=custom_args
++ @abstractmethod
++ def __init__(self) -> None:
++ return None # pragma: no cover
++
++ @staticmethod
++ def new(name: str, root_dir: str, custom_args: dict = None):
++ name_map = {
++ 'docker': 'OCI',
++ 'oci': 'OCI',
++ 'appx': 'Appx'
++ }
++ args_map = {
++ 'docker': [root_dir, 'docker-archive', custom_args],
++ 'oci': [root_dir, 'oci-archive', custom_args],
++ 'appx': [root_dir, custom_args]
++ }
++ try:
++ container_image = importlib.import_module(
++ 'kiwi.container.{}'.format('oci' if name == 'docker' else name)
+ )
+- else:
++ module_name = 'ContainerImage{}'.format(name_map[name])
++ return container_image.__dict__[module_name](*args_map[name])
++ except Exception:
+ raise KiwiContainerImageSetupError(
+ 'Support for {0} container not implemented'.format(name)
+ )
+diff --git a/kiwi/container/oci.py b/kiwi/container/oci.py
+index 7ad5f38eb9..403ac9f4e2 100644
+--- a/kiwi/container/oci.py
++++ b/kiwi/container/oci.py
+@@ -118,7 +118,7 @@ def create(self, filename, base_image):
+ exclude_list.append('sys/*')
+ exclude_list.append('proc/*')
+
+- oci = OCI()
++ oci = OCI.new()
+ if base_image:
+ oci.import_container_image(
+ 'oci-archive:{0}:{1}'.format(
+diff --git a/kiwi/container/setup/__init__.py b/kiwi/container/setup/__init__.py
+index 43e7b37b99..f84b4dfaf9 100644
+--- a/kiwi/container/setup/__init__.py
++++ b/kiwi/container/setup/__init__.py
+@@ -15,28 +15,40 @@
+ # You should have received a copy of the GNU General Public License
+ # along with kiwi. If not, see
+ #
+-# project
+-from kiwi.container.setup.docker import ContainerSetupDocker
+-from kiwi.container.setup.oci import ContainerSetupOCI
+-from kiwi.container.setup.appx import ContainerSetupAppx
++import importlib
++from abc import (
++ ABCMeta,
++ abstractmethod
++)
+
++# project
+ from kiwi.exceptions import (
+ KiwiContainerSetupError
+ )
+
+
+-class ContainerSetup:
++class ContainerSetup(metaclass=ABCMeta):
+ """
+ container setup factory
+ """
+- def __new__(self, name, root_dir, custom_args=None):
+- if name == 'docker':
+- return ContainerSetupDocker(root_dir, custom_args)
+- elif name == 'oci':
+- return ContainerSetupOCI(root_dir, custom_args)
+- elif name == 'appx':
+- return ContainerSetupAppx(root_dir, custom_args)
+- else:
++ @abstractmethod
++ def __init__(self) -> None:
++ return None # pragma: no cover
++
++ @staticmethod
++ def new(name: str, root_dir: str, custom_args: dict = None):
++ name_map = {
++ 'docker': 'Docker',
++ 'oci': 'OCI',
++ 'appx': 'Appx'
++ }
++ try:
++ container_setup = importlib.import_module(
++ 'kiwi.container.setup.{}'.format(name)
++ )
++ module_name = 'ContainerSetup{}'.format(name_map[name])
++ return container_setup.__dict__[module_name](root_dir, custom_args)
++ except Exception:
+ raise KiwiContainerSetupError(
+ 'Support for {0} container not implemented'.format(name)
+ )
+diff --git a/kiwi/filesystem/isofs.py b/kiwi/filesystem/isofs.py
+index bd3217b7b8..08a733d902 100644
+--- a/kiwi/filesystem/isofs.py
++++ b/kiwi/filesystem/isofs.py
+@@ -45,7 +45,7 @@ def create_on_file(self, filename, label=None, exclude=None):
+ meta_data = self.custom_args['meta_data']
+ efi_mode = meta_data.get('efi_mode')
+ ofw_mode = meta_data.get('ofw_mode')
+- iso_tool = IsoTools(self.root_dir)
++ iso_tool = IsoTools.new(self.root_dir)
+
+ iso = Iso(self.root_dir)
+ if not efi_mode and not ofw_mode:
+diff --git a/kiwi/iso_tools/__init__.py b/kiwi/iso_tools/__init__.py
+index d98ad1d2ae..8aa90160c7 100644
+--- a/kiwi/iso_tools/__init__.py
++++ b/kiwi/iso_tools/__init__.py
+@@ -15,19 +15,40 @@
+ # You should have received a copy of the GNU General Public License
+ # along with kiwi. If not, see
+ #
++import importlib
++from abc import (
++ ABCMeta,
++ abstractmethod
++)
++
+ # project
+-from kiwi.iso_tools.cdrtools import IsoToolsCdrTools
+-from kiwi.iso_tools.xorriso import IsoToolsXorrIso
++from kiwi.exceptions import KiwiIsoToolError
+ from kiwi.runtime_config import RuntimeConfig
+
+
+-class IsoTools:
++class IsoTools(metaclass=ABCMeta):
+ """
+ **IsoTools factory**
+ """
+- def __new__(self, source_dir):
++ @abstractmethod
++ def __init__(self) -> None:
++ return None # pragma: no cover
++
++ @staticmethod
++ def new(source_dir):
++ name_map = {
++ 'xorriso': 'XorrIso',
++ 'cdrtools': 'CdrTools'
++ }
+ runtime_config = RuntimeConfig()
+- if runtime_config.get_iso_tool_category() == 'cdrtools':
+- return IsoToolsCdrTools(source_dir)
+- else:
+- return IsoToolsXorrIso(source_dir)
++ tool = runtime_config.get_iso_tool_category()
++ try:
++ iso_tool = importlib.import_module(
++ 'kiwi.iso_tools.{}'.format(tool)
++ )
++ module_name = 'IsoTools{}'.format(name_map[tool])
++ return iso_tool.__dict__[module_name](source_dir)
++ except Exception:
++ raise KiwiIsoToolError(
++ 'No support for {} tool available'.format(tool)
++ )
+diff --git a/kiwi/oci_tools/__init__.py b/kiwi/oci_tools/__init__.py
+index a5d0be46ca..8951d96761 100644
+--- a/kiwi/oci_tools/__init__.py
++++ b/kiwi/oci_tools/__init__.py
+@@ -15,28 +15,42 @@
+ # You should have received a copy of the GNU General Public License
+ # along with kiwi. If not, see
+ #
++import importlib
++from abc import (
++ ABCMeta,
++ abstractmethod
++)
++
+ # project
+-from kiwi.oci_tools.umoci import OCIUmoci
+-from kiwi.oci_tools.buildah import OCIBuildah
+ from kiwi.runtime_config import RuntimeConfig
+-
+ from kiwi.exceptions import (
+ KiwiOCIArchiveToolError
+ )
+
+
+-class OCI:
++class OCI(metaclass=ABCMeta):
+ """
+ **OCI Factory**
+ """
+- def __new__(self):
++ @abstractmethod
++ def __init__(self) -> None:
++ return None # pragma: no cover
++
++ @staticmethod
++ def new():
++ name_map = {
++ 'umoci': 'Umoci',
++ 'buildah': 'Buildah'
++ }
+ runtime_config = RuntimeConfig()
+ tool_name = runtime_config.get_oci_archive_tool()
+- if tool_name == 'umoci':
+- return OCIUmoci()
+- elif tool_name == 'buildah':
+- return OCIBuildah()
+- else:
++ try:
++ oci_tool = importlib.import_module(
++ 'kiwi.oci_tools.{}'.format(tool_name)
++ )
++ module_name = 'OCI{}'.format(name_map[tool_name])
++ return oci_tool.__dict__[module_name]()
++ except Exception:
+ raise KiwiOCIArchiveToolError(
+ 'No support for {0} tool available'.format(tool_name)
+ )
+diff --git a/kiwi/system/root_import/oci.py b/kiwi/system/root_import/oci.py
+index 5eb07b306e..6d8a36702c 100644
+--- a/kiwi/system/root_import/oci.py
++++ b/kiwi/system/root_import/oci.py
+@@ -55,7 +55,7 @@ def sync_data(self):
+ log.warning('Bypassing base image URI to OCI tools')
+ image_uri = self.unknown_uri
+
+- oci = OCI()
++ oci = OCI.new()
+ oci.import_container_image(image_uri)
+ oci.unpack()
+ oci.import_rootfs(self.root_dir)
+diff --git a/test/unit/builder/container_test.py b/test/unit/builder/container_test.py
+index 2a139232f1..ace87c860a 100644
+--- a/test/unit/builder/container_test.py
++++ b/test/unit/builder/container_test.py
+@@ -112,22 +112,22 @@ def side_effect(filename):
+ @patch('kiwi.builder.container.ContainerImage')
+ def test_create(self, mock_image, mock_setup):
+ container_setup = mock.Mock()
+- mock_setup.return_value = container_setup
++ mock_setup.new.return_value = container_setup
+ container_image = mock.Mock()
+ container_image.create = mock.Mock(
+ return_value='target_dir/image_name.x86_64-1.2.3.docker.tar.xz'
+ )
+- mock_image.return_value = container_image
++ mock_image.new.return_value = container_image
+ self.setup.export_package_verification.return_value = '.verified'
+ self.setup.export_package_changes.return_value = '.changes'
+ self.setup.export_package_list.return_value = '.packages'
+ self.container.base_image = None
+ self.container.create()
+- mock_setup.assert_called_once_with(
++ mock_setup.new.assert_called_once_with(
+ 'docker', 'root_dir', self.container_config
+ )
+ container_setup.setup.assert_called_once_with()
+- mock_image.assert_called_once_with(
++ mock_image.new.assert_called_once_with(
+ 'docker', 'root_dir', self.container_config
+ )
+ container_image.create.assert_called_once_with(
+@@ -188,7 +188,7 @@ def side_effect(filename):
+ container_image.create = mock.Mock(
+ return_value='target_dir/image_name.x86_64-1.2.3.docker.tar.xz'
+ )
+- mock_image.return_value = container_image
++ mock_image.new.return_value = container_image
+
+ container = ContainerBuilder(
+ self.xml_state, 'target_dir', 'root_dir'
+@@ -212,7 +212,7 @@ def side_effect(filename):
+ 'checksumvalue', 'root_dir/image/imported_root.md5'
+ )
+
+- mock_image.assert_called_once_with(
++ mock_image.new.assert_called_once_with(
+ 'docker', 'root_dir', self.container_config
+ )
+ container_image.create.assert_called_once_with(
+diff --git a/test/unit/container/init_test.py b/test/unit/container/init_test.py
+index 7b9fa31082..04eebbc89d 100644
+--- a/test/unit/container/init_test.py
++++ b/test/unit/container/init_test.py
+@@ -9,25 +9,25 @@
+ class TestContainerImage:
+ def test_container_image_not_implemented(self):
+ with raises(KiwiContainerImageSetupError):
+- ContainerImage('foo', 'root_dir')
++ ContainerImage.new('foo', 'root_dir')
+
+- @patch('kiwi.container.ContainerImageOCI')
++ @patch('kiwi.container.oci.ContainerImageOCI')
+ def test_container_image_docker(self, mock_docker):
+- ContainerImage('docker', 'root_dir')
++ ContainerImage.new('docker', 'root_dir')
+ mock_docker.assert_called_once_with(
+- 'root_dir', 'docker-archive', custom_args=None
++ 'root_dir', 'docker-archive', None
+ )
+
+- @patch('kiwi.container.ContainerImageOCI')
++ @patch('kiwi.container.oci.ContainerImageOCI')
+ def test_container_image_oci(self, mock_oci):
+- ContainerImage('oci', 'root_dir')
++ ContainerImage.new('oci', 'root_dir')
+ mock_oci.assert_called_once_with(
+- 'root_dir', 'oci-archive', custom_args=None
++ 'root_dir', 'oci-archive', None
+ )
+
+- @patch('kiwi.container.ContainerImageAppx')
++ @patch('kiwi.container.appx.ContainerImageAppx')
+ def test_container_image_appx(self, mock_appx):
+- ContainerImage('appx', 'root_dir')
++ ContainerImage.new('appx', 'root_dir')
+ mock_appx.assert_called_once_with(
+- 'root_dir', custom_args=None
++ 'root_dir', None
+ )
+diff --git a/test/unit/container/oci_test.py b/test/unit/container/oci_test.py
+index 01f0d82dff..761f1b558a 100644
+--- a/test/unit/container/oci_test.py
++++ b/test/unit/container/oci_test.py
+@@ -120,7 +120,7 @@ def test_init_in_buildservice_without_disturl(
+ def test_create_oci_archive(self, mock_cache, mock_OCI):
+ mock_cache.return_value = 'var/cache/kiwi'
+ mock_oci = mock.Mock()
+- mock_OCI.return_value = mock_oci
++ mock_OCI.new.return_value = mock_oci
+
+ self.oci.runtime_config.get_container_compression = mock.Mock(
+ return_value=None
+@@ -164,7 +164,7 @@ def test_create_derived_docker_archive(
+ ):
+ mock_cache.return_value = 'var/cache/kiwi'
+ mock_oci = mock.Mock()
+- mock_OCI.return_value = mock_oci
++ mock_OCI.new.return_value = mock_oci
+
+ self.oci.create('result.tar', 'root_dir/image/image_file')
+
+diff --git a/test/unit/container/setup/init_test.py b/test/unit/container/setup/init_test.py
+index 40ce4200f0..a57caca6d1 100644
+--- a/test/unit/container/setup/init_test.py
++++ b/test/unit/container/setup/init_test.py
+@@ -9,19 +9,19 @@
+ class TestContainerSetup:
+ def test_container_not_implemented(self):
+ with raises(KiwiContainerSetupError):
+- ContainerSetup('foo', 'root_dir')
++ ContainerSetup.new('foo', 'root_dir')
+
+- @patch('kiwi.container.setup.ContainerSetupDocker')
++ @patch('kiwi.container.setup.docker.ContainerSetupDocker')
+ def test_container_docker(self, mock_docker):
+- ContainerSetup('docker', 'root_dir')
++ ContainerSetup.new('docker', 'root_dir')
+ mock_docker.assert_called_once_with('root_dir', None)
+
+- @patch('kiwi.container.setup.ContainerSetupOCI')
++ @patch('kiwi.container.setup.oci.ContainerSetupOCI')
+ def test_container_oci(self, mock_oci):
+- ContainerSetup('oci', 'root_dir')
++ ContainerSetup.new('oci', 'root_dir')
+ mock_oci.assert_called_once_with('root_dir', None)
+
+- @patch('kiwi.container.setup.ContainerSetupAppx')
++ @patch('kiwi.container.setup.appx.ContainerSetupAppx')
+ def test_container_appx(self, mock_appx):
+- ContainerSetup('appx', 'root_dir')
++ ContainerSetup.new('appx', 'root_dir')
+ mock_appx.assert_called_once_with('root_dir', None)
+diff --git a/test/unit/filesystem/isofs_test.py b/test/unit/filesystem/isofs_test.py
+index 056523ead1..ea8c8b2fc5 100644
+--- a/test/unit/filesystem/isofs_test.py
++++ b/test/unit/filesystem/isofs_test.py
+@@ -36,7 +36,7 @@ def test_create_on_file(self, mock_iso, mock_cdrtools):
+ )
+ iso = mock.Mock()
+ iso.header_end_name = 'header_end'
+- mock_cdrtools.return_value = iso_tool
++ mock_cdrtools.new.return_value = iso_tool
+ mock_iso.return_value = iso
+ self.isofs.create_on_file('myimage', None)
+
+@@ -75,7 +75,7 @@ def test_create_on_file_EFI_enabled(self, mock_iso, mock_cdrtools):
+ )
+ iso = mock.Mock()
+ iso.header_end_name = 'header_end'
+- mock_cdrtools.return_value = iso_tool
++ mock_cdrtools.new.return_value = iso_tool
+ mock_iso.return_value = iso
+ self.isofs.custom_args['meta_data']['efi_mode'] = 'uefi'
+ with self._caplog.at_level(logging.WARNING):
+diff --git a/test/unit/iso_tools/init_test.py b/test/unit/iso_tools/init_test.py
+index d02d165e60..11dd6a49aa 100644
+--- a/test/unit/iso_tools/init_test.py
++++ b/test/unit/iso_tools/init_test.py
+@@ -1,7 +1,9 @@
++from pytest import raises
+ from mock import patch
+ import mock
+
+ from kiwi.iso_tools import IsoTools
++from kiwi.exceptions import KiwiIsoToolError
+
+
+ class TestIsoTools:
+@@ -9,22 +11,29 @@ def setup(self):
+ self.runtime_config = mock.Mock()
+ self.runtime_config.get_iso_tool_category = mock.Mock()
+
+- @patch('kiwi.iso_tools.IsoToolsCdrTools')
++ @patch('kiwi.iso_tools.cdrtools.IsoToolsCdrTools')
+ @patch('kiwi.iso_tools.RuntimeConfig')
+ def test_iso_tools_cdrtools(
+ self, mock_RuntimeConfig, mock_IsoToolsCdrTools
+ ):
+ self.runtime_config.get_iso_tool_category.return_value = 'cdrtools'
+ mock_RuntimeConfig.return_value = self.runtime_config
+- IsoTools('root-dir')
++ IsoTools.new('root-dir')
+ mock_IsoToolsCdrTools.assert_called_once_with('root-dir')
+
+- @patch('kiwi.iso_tools.IsoToolsXorrIso')
++ @patch('kiwi.iso_tools.xorriso.IsoToolsXorrIso')
+ @patch('kiwi.iso_tools.RuntimeConfig')
+ def test_iso_tools_xorriso(
+ self, mock_RuntimeConfig, mock_IsoToolsXorrIso
+ ):
+ self.runtime_config.get_iso_tool_category.return_value = 'xorriso'
+ mock_RuntimeConfig.return_value = self.runtime_config
+- IsoTools('root-dir')
++ IsoTools.new('root-dir')
+ mock_IsoToolsXorrIso.assert_called_once_with('root-dir')
++
++ @patch('kiwi.iso_tools.RuntimeConfig')
++ def test_iso_tools_unsupported(self, mock_RuntimeConfig):
++ self.runtime_config.get_iso_tool_category.return_value = 'foo'
++ mock_RuntimeConfig.return_value = self.runtime_config
++ with raises(KiwiIsoToolError):
++ IsoTools.new('root_dir')
+diff --git a/test/unit/oci_tools/init_test.py b/test/unit/oci_tools/init_test.py
+index f61f6ea27c..7f303c6b21 100644
+--- a/test/unit/oci_tools/init_test.py
++++ b/test/unit/oci_tools/init_test.py
+@@ -15,24 +15,24 @@ def setup(self):
+ self.runtime_config = Mock()
+ self.runtime_config.get_oci_archive_tool = Mock()
+
+- @patch('kiwi.oci_tools.OCIUmoci')
++ @patch('kiwi.oci_tools.umoci.OCIUmoci')
+ @patch('kiwi.oci_tools.RuntimeConfig')
+ def test_oci_tool_umoci(
+ self, mock_RuntimeConfig, mock_OCIUmoci
+ ):
+ self.runtime_config.get_oci_archive_tool.return_value = 'umoci'
+ mock_RuntimeConfig.return_value = self.runtime_config
+- OCI()
++ OCI.new()
+ mock_OCIUmoci.assert_called_once_with()
+
+- @patch('kiwi.oci_tools.OCIBuildah')
++ @patch('kiwi.oci_tools.buildah.OCIBuildah')
+ @patch('kiwi.oci_tools.RuntimeConfig')
+ def test_oci_tool_buildah(
+ self, mock_RuntimeConfig, mock_OCIBuildah
+ ):
+ self.runtime_config.get_oci_archive_tool.return_value = 'buildah'
+ mock_RuntimeConfig.return_value = self.runtime_config
+- OCI()
++ OCI.new()
+ mock_OCIBuildah.assert_called_once_with()
+
+ @patch('kiwi.oci_tools.RuntimeConfig')
+@@ -40,4 +40,4 @@ def test_oci_tool_not_supported(self, mock_RuntimeConfig):
+ self.runtime_config.get_oci_archive_tool.return_value = 'foo'
+ mock_RuntimeConfig.return_value = self.runtime_config
+ with raises(KiwiOCIArchiveToolError):
+- OCI()
++ OCI.new()
+diff --git a/test/unit/system/root_import/oci_test.py b/test/unit/system/root_import/oci_test.py
+index 71646d816a..0981b2b201 100644
+--- a/test/unit/system/root_import/oci_test.py
++++ b/test/unit/system/root_import/oci_test.py
+@@ -42,7 +42,7 @@ def test_failed_init(self, mock_path):
+ @patch('kiwi.system.root_import.oci.OCI')
+ def test_sync_data(self, mock_OCI, mock_path, mock_md5, mock_compress):
+ oci = Mock()
+- mock_OCI.return_value = oci
++ mock_OCI.new.return_value = oci
+ md5 = Mock()
+ mock_md5.return_value = Mock()
+
+@@ -52,7 +52,7 @@ def test_sync_data(self, mock_OCI, mock_path, mock_md5, mock_compress):
+
+ self.oci_import.sync_data()
+
+- mock_OCI.assert_called_once_with()
++ mock_OCI.new.assert_called_once_with()
+
+ oci.unpack.assert_called_once_with()
+ oci.import_rootfs.assert_called_once_with(
+@@ -70,7 +70,7 @@ def test_sync_data_compressed_image(
+ self, mock_OCI, mock_path, mock_md5, mock_compress
+ ):
+ oci = Mock()
+- mock_OCI.return_value = oci
++ mock_OCI.new.return_value = oci
+ md5 = Mock()
+ mock_md5.return_value = Mock()
+
+@@ -80,7 +80,7 @@ def test_sync_data_compressed_image(
+
+ self.oci_import.sync_data()
+
+- mock_OCI.assert_called_once_with()
++ mock_OCI.new.assert_called_once_with()
+
+ oci.unpack.assert_called_once_with()
+ oci.import_rootfs.assert_called_once_with(
+@@ -100,7 +100,7 @@ def test_sync_data_unknown_uri(
+ ):
+ mock_exists.return_value = True
+ oci = Mock()
+- mock_OCI.return_value = oci
++ mock_OCI.new.return_value = oci
+ md5 = Mock()
+ mock_md5.return_value = Mock()
+ with patch.dict('os.environ', {'HOME': '../data'}):
+@@ -111,7 +111,7 @@ def test_sync_data_unknown_uri(
+
+ with self._caplog.at_level(logging.WARNING):
+ oci_import.sync_data()
+- mock_OCI.assert_called_once_with()
++ mock_OCI.new.assert_called_once_with()
+ oci.import_container_image.assert_called_once_with(
+ 'docker:image:tag'
+ )
--
Gitee
From d48ce3fc0b6757534d7df897e9d32793b6baaf02 Mon Sep 17 00:00:00 2001
From: openeuler-ci-bot <80474298@qq.com>
Date: Wed, 16 Dec 2020 18:58:56 +0800
Subject: [PATCH 2/2] [patch tracking] 20201216185849780153 - update spec file
---
kiwi.spec | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/kiwi.spec b/kiwi.spec
index a5ce47a..94a451a 100644
--- a/kiwi.spec
+++ b/kiwi.spec
@@ -2,7 +2,7 @@
Name: kiwi
Version: 9.21.5
-Release: 2
+Release: 3
License: GPLv3+
Summary: Flexible operating system image builder
@@ -15,6 +15,7 @@ Patch2: Include-box-plugin-images-to-build_status.patch
Patch3: Added-s390-SLE15-integration-tests.patch
Patch4: Cosmetic-update-for-build-status-helper.patch
Patch5: Added-universal-box-to-build-status-helper.patch
+Patch6000: 11b86dec821fe15fbca1cbdf5b3947660be88c19.patch
BuildRequires: bash-completion dracut fdupes gcc make
BuildRequires: python3-devel python3-setuptools shadow-utils
@@ -196,6 +197,9 @@ done
%{_mandir}/man8/%{name}*
%changelog
+* 20201216185849780153 patch-tracking 9.21.5-3
+- append patch file of upstream repository from <11b86dec821fe15fbca1cbdf5b3947660be88c19> to <11b86dec821fe15fbca1cbdf5b3947660be88c19>
+
* Thu Nov 26 2020 wuchaochao - 9.21.5-2
- Type:bugfix
- ID:NA
@@ -221,4 +225,4 @@ done
- Remove python2 dependency
* Sat Sep 21 2019 openEuler Buildteam - 9.16.12-2
-- Package init
+- Package init
\ No newline at end of file
--
Gitee