diff --git a/481b51362e550a3de828fba8d8a74b9ff1ed57a2.patch b/481b51362e550a3de828fba8d8a74b9ff1ed57a2.patch new file mode 100644 index 0000000000000000000000000000000000000000..eeeda17f494cf7847aa08a6eac1b94c41cc2d002 --- /dev/null +++ b/481b51362e550a3de828fba8d8a74b9ff1ed57a2.patch @@ -0,0 +1,296 @@ +diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml +index fa163f4724..8a3aa8d49e 100644 +--- a/.gitlab-ci.yml ++++ b/.gitlab-ci.yml +@@ -36,12 +36,12 @@ unit_py37: + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$FEDORA_BUILD + stage: test + script: +- - export PYTHON=python3.7 +- - tox -e unit_py3_7 "-n $(nproc)" ++ - export PYTHON=python3.8 ++ - tox -e unit_py3_8 "-n $(nproc)" + cache: + key: "$CI_JOB_NAME" + paths: +- - .tox/3.7 ++ - .tox/3.8 + + build_doc: + image: $CI_REGISTRY/$BUILD_IMAGES_PROJECT:$TUMBLEWEED_BUILD +diff --git a/.travis.yml b/.travis.yml +index 3a52d9b009..2171c26c6a 100644 +--- a/.travis.yml ++++ b/.travis.yml +@@ -13,12 +13,12 @@ jobs: + include: + - python: 3.6 + env: TOXENV=check,unit_py3_6 +- - python: 3.7 ++ - python: 3.8 + dist: xenial + sudo: true +- env: TOXENV=check,unit_py3_7 ++ env: TOXENV=check,unit_py3_8 + - stage: deploy +- python: 3.6 ++ python: 3.8 + env: TOXENV=doc_travis + deploy: + - provider: pages +diff --git a/.virtualenv.dev-requirements.txt b/.virtualenv.dev-requirements.txt +index d11675d2e8..3f5206ad20 100644 +--- a/.virtualenv.dev-requirements.txt ++++ b/.virtualenv.dev-requirements.txt +@@ -1,12 +1,6 @@ + # + # Requirement files for Python Virtual Environments + # +-# Create a Python virt env with: +-# * For Python2: virtualenv-2.7 .env2 +-# * For Python3: virtualenv-3.4 .env3 +-# +-# After activation of the env, install it with: +-# $ pip install -r dev-requirements.txt + + -r .virtualenv.requirements.txt + +diff --git a/.virtualenv.requirements.txt b/.virtualenv.requirements.txt +index c119cd174e..2b65daaed7 100644 +--- a/.virtualenv.requirements.txt ++++ b/.virtualenv.requirements.txt +@@ -1,12 +1,6 @@ + # + # Requirement files for Python Virtual Environments + # +-# Create a Python virt env with: +-# * For Python2: virtualenv-2.7 .env2 +-# * For Python3: virtualenv-3.4 .env3 +-# +-# After activation of the env, install it with: +-# $ pip install -r requirements.txt + + # Shell interface for docopt, the command-line interface description language + docopt +diff --git a/kiwi/bootloader/config/grub2.py b/kiwi/bootloader/config/grub2.py +index c826c9099f..8655115778 100644 +--- a/kiwi/bootloader/config/grub2.py ++++ b/kiwi/bootloader/config/grub2.py +@@ -579,7 +579,7 @@ def _setup_zipl2grub_conf(self): + log.debug(zipl_config) + zipl_config_file.write(zipl_config) + +- def _setup_default_grub(self): # noqa: C901 ++ def _setup_default_grub(self): + """ + Create or update etc/default/grub by parameters required + according to the root filesystem setup +diff --git a/kiwi/builder/disk.py b/kiwi/builder/disk.py +index b8e4c94f6f..c274679fb5 100644 +--- a/kiwi/builder/disk.py ++++ b/kiwi/builder/disk.py +@@ -203,7 +203,7 @@ def create(self): + + return result + +- def create_disk(self): # noqa: C901 ++ def create_disk(self): + """ + Build a bootable raw disk image + +@@ -725,7 +725,7 @@ def _build_boot_filesystems(self, device_map): + ) + self.system_boot = filesystem + +- def _build_and_map_disk_partitions(self, disksize_mbytes): # noqa: C901 ++ def _build_and_map_disk_partitions(self, disksize_mbytes): + self.disk.wipe() + disksize_used_mbytes = 0 + if self.firmware.legacy_bios_mode(): +diff --git a/kiwi/oci_tools/buildah.py b/kiwi/oci_tools/buildah.py +index 0b0fbcaee1..8c3a75dd18 100644 +--- a/kiwi/oci_tools/buildah.py ++++ b/kiwi/oci_tools/buildah.py +@@ -224,7 +224,7 @@ def post_process(self): + self.working_image = output.output.rstrip() + self.working_container = None + +- @classmethod # noqa:C901 ++ @classmethod + def _process_oci_config_to_arguments(self, oci_config): + """ + Process the oci configuration dictionary into a list of arguments +diff --git a/kiwi/oci_tools/umoci.py b/kiwi/oci_tools/umoci.py +index eb0cd4251b..5e75affb08 100644 +--- a/kiwi/oci_tools/umoci.py ++++ b/kiwi/oci_tools/umoci.py +@@ -170,7 +170,7 @@ def set_config(self, oci_config): + self.container_dir, oci_config['container_tag'] + ) + +- @staticmethod # noqa:C901 ++ @staticmethod + def _process_oci_config_to_arguments(oci_config): + """ + Process the oci configuration dictionary into a list of arguments +diff --git a/kiwi/partitioner/__init__.py b/kiwi/partitioner/__init__.py +index 4bd3fd3427..0e536c500c 100644 +--- a/kiwi/partitioner/__init__.py ++++ b/kiwi/partitioner/__init__.py +@@ -38,7 +38,7 @@ class Partitioner: + :param object storage_provider: Instance of class based on DeviceProvider + :param int start_sector: sector number + """ +- def __new__(self, table_type, storage_provider, start_sector=None): # noqa: C901 ++ def __new__(self, table_type, storage_provider, start_sector=None): + host_architecture = Defaults.get_platform_name() + if host_architecture == 'x86_64': + if table_type == 'gpt': +diff --git a/kiwi/storage/setup.py b/kiwi/storage/setup.py +index b93a3b2591..369d950578 100644 +--- a/kiwi/storage/setup.py ++++ b/kiwi/storage/setup.py +@@ -63,7 +63,7 @@ def __init__(self, xml_state, root_dir): + self.root_dir = root_dir + self.xml_state = xml_state + +- def get_disksize_mbytes(self): # noqa C901 ++ def get_disksize_mbytes(self): + """ + Precalculate disk size requirements in mbytes + +diff --git a/kiwi/storage/subformat/__init__.py b/kiwi/storage/subformat/__init__.py +index 98e5dea357..170f371ee5 100644 +--- a/kiwi/storage/subformat/__init__.py ++++ b/kiwi/storage/subformat/__init__.py +@@ -41,7 +41,7 @@ def __init__(self) -> None: + @abstractmethod + def new( + name: str, xml_state: object, root_dir: str, target_dir: str +- ): # noqa: C901, E252 ++ ): # noqa: E252 + name_map = { + 'qcow2': 'Qcow2', + 'vdi': 'Vdi', +diff --git a/kiwi/storage/subformat/vmdk.py b/kiwi/storage/subformat/vmdk.py +index c64d4a8a1a..496a821121 100644 +--- a/kiwi/storage/subformat/vmdk.py ++++ b/kiwi/storage/subformat/vmdk.py +@@ -91,7 +91,7 @@ def store_to_result(self, result): + shasum=False + ) + +- def _create_vmware_settings_file(self): # noqa: C901 ++ def _create_vmware_settings_file(self): + """ + In order to run a vmdk image in VMware products a settings file is + needed or the possibility to convert machine settings into an ovf +diff --git a/kiwi/tasks/system_build.py b/kiwi/tasks/system_build.py +index e1f90af902..ddcecd70c3 100644 +--- a/kiwi/tasks/system_build.py ++++ b/kiwi/tasks/system_build.py +@@ -113,7 +113,7 @@ class SystemBuildTask(CliTask): + * :attr:`manual` + Instance of Help + """ +- def process(self): # noqa: C901 ++ def process(self): + """ + Build a system image from the specified description. The + build command combines the prepare and create commands +diff --git a/kiwi/tasks/system_prepare.py b/kiwi/tasks/system_prepare.py +index 3fd3360198..bd0196b531 100644 +--- a/kiwi/tasks/system_prepare.py ++++ b/kiwi/tasks/system_prepare.py +@@ -109,7 +109,7 @@ class SystemPrepareTask(CliTask): + * :attr:`manual` + Instance of Help + """ +- def process(self): # noqa: C901 ++ def process(self): + """ + Prepare and install a new system for chroot access + """ +diff --git a/kiwi/xml_description.py b/kiwi/xml_description.py +index 84f26c8ab4..55b3e3601f 100644 +--- a/kiwi/xml_description.py ++++ b/kiwi/xml_description.py +@@ -72,7 +72,7 @@ def __init__(self, description=None, derived_from=None, xml_content=None): + self.description_origin = description + self.extension_data = {} + +- def load(self): # noqa C901 ++ def load(self): + """ + Read XML description, validate it against the schema + and the schematron rules and pass it to the +diff --git a/kiwi/xml_state.py b/kiwi/xml_state.py +index a6e6e5bb48..4c3946bef7 100644 +--- a/kiwi/xml_state.py ++++ b/kiwi/xml_state.py +@@ -1198,7 +1198,7 @@ def add_container_config_label(self, label_name, value): + + container_config_section.set_labels(labels) + +- def get_volumes(self): # noqa C901 ++ def get_volumes(self): + """ + List of configured systemdisk volumes. + +diff --git a/setup.cfg b/setup.cfg +index 6661f872dd..88f68277e6 100644 +--- a/setup.cfg ++++ b/setup.cfg +@@ -17,7 +17,7 @@ exclude=xml_parse.py + # we ignore warnings about quoting of escape sequences (W605) + ignore = E501, W605 + # we allow a custom complexity level +-max-complexity = 12 ++max-complexity = 18 + + [doc8] + max-line-length = 90 +diff --git a/tox.ini b/tox.ini +index c1bd623ee3..93e2fe20c8 100644 +--- a/tox.ini ++++ b/tox.ini +@@ -16,7 +16,7 @@ skip_missing_interpreters = True + skipsdist = True + envlist = + check, +- unit_py3_7, ++ unit_py3_8, + unit_py3_6, + packagedoc, + devel +@@ -24,16 +24,16 @@ envlist = + + [testenv] + description = +- {unit_py3_6,unit_py3_7}: Unit Test run with basepython set to {basepython} ++ {unit_py3_6,unit_py3_8}: Unit Test run with basepython set to {basepython} + devel: Test KIWI + whitelist_externals = * + basepython = + {check,devel,packagedoc,doc,doc_travis,doc_suse}: python3 +- unit_py3_7: python3.7 ++ unit_py3_8: python3.8 + unit_py3_6: python3.6 + envdir = + {check,devel,packagedoc,doc,doc_travis,doc_suse}: {toxworkdir}/3 +- unit_py3_7: {toxworkdir}/3.7 ++ unit_py3_8: {toxworkdir}/3.8 + unit_py3_6: {toxworkdir}/3.6 + passenv = + * +@@ -61,8 +61,8 @@ commands = + --cov-fail-under=100 --cov-config .coveragerc {posargs} + + +-# Unit Test run with basepython set to 3.7 +-[testenv:unit_py3_7] ++# Unit Test run with basepython set to 3.8 ++[testenv:unit_py3_8] + skip_install = True + usedevelop = True + setenv = diff --git a/95216f39a0326affd3b50fce004b62cac9c4f700.patch b/95216f39a0326affd3b50fce004b62cac9c4f700.patch new file mode 100644 index 0000000000000000000000000000000000000000..7310378b2e0017c272e38bac37afd7db2d8a3fa6 --- /dev/null +++ b/95216f39a0326affd3b50fce004b62cac9c4f700.patch @@ -0,0 +1,62 @@ +diff --git a/build-tests/x86/archlinux/test-image-live-disk-kis/appliance.kiwi b/build-tests/x86/archlinux/test-image-live-disk-kis/appliance.kiwi +index 0dff3800f7..863977ee29 100644 +--- a/build-tests/x86/archlinux/test-image-live-disk-kis/appliance.kiwi ++++ b/build-tests/x86/archlinux/test-image-live-disk-kis/appliance.kiwi +@@ -31,12 +31,12 @@ + false + + +- ++ + + + + +- ++ + + false + +@@ -44,7 +44,13 @@ + + + +- ++ ++ + + + +diff --git a/build-tests/x86/archlinux/test-image-live-disk-kis/editbootinstall_arch.sh b/build-tests/x86/archlinux/test-image-live-disk-kis/editbootinstall_arch.sh +new file mode 100644 +index 0000000000..725d2822cc +--- /dev/null ++++ b/build-tests/x86/archlinux/test-image-live-disk-kis/editbootinstall_arch.sh +@@ -0,0 +1,22 @@ ++#!/bin/bash -x ++ ++# Arch Linux does not support linuxefi grub module or command, ++# however KIWI relies on it to create a grub.cfg that can be ++# used for EFI and non EFI environments. ++# In Arch linux command is already capable to EFI boot ++set -e ++ ++disk_img=$1 ++mapped_dev=$2 ++tmp_mount=$(mktemp -d disk_XXXXX) ++ ++mount "${mapped_dev}" "${tmp_mount}" ++ ++grub_config="${tmp_mount}/boot/grub/grub.cfg" ++ ++if [ -f "${grub_config}" ]; then ++ echo "Patching grub configuration file: ${grub_config}" ++ sed -i "s|linuxefi|linux|g" "${grub_config}" ++ sed -i "s|initrdefi|initrd|g" "${grub_config}" ++fi ++umount "${tmp_mount}" && rm -r ${tmp_mount} diff --git a/kiwi.spec b/kiwi.spec index e59772ea8362d71e3616a30ce27bb204a27f4290..4b053fc6b25ec746545fd9e5218b74b0a68d7ba7 100644 --- a/kiwi.spec +++ b/kiwi.spec @@ -2,12 +2,14 @@ Name: kiwi Version: 9.21.5 -Release: 1 +Release: 2 License: GPLv3+ Summary: Flexible operating system image builder URL: http://osinside.github.io/kiwi/ Source0: https://files.pythonhosted.org/packages/source/k/%{name}/%{name}-%{version}.tar.gz +Patch6000: 481b51362e550a3de828fba8d8a74b9ff1ed57a2.patch +Patch6001: 95216f39a0326affd3b50fce004b62cac9c4f700.patch BuildRequires: bash-completion dracut fdupes gcc make BuildRequires: python3-devel python3-setuptools shadow-utils @@ -189,6 +191,9 @@ done %{_mandir}/man8/%{name}* %changelog +* 20201109233007661886 patch-tracking 9.21.5-2 +- append patch file of upstream repository from <481b51362e550a3de828fba8d8a74b9ff1ed57a2> to <95216f39a0326affd3b50fce004b62cac9c4f700> + * Tue Jul 28 2020 xinghe - 9.21.5-1 - update version to 9.21.5 @@ -208,4 +213,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