Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

kiwi-systemdeps-core-9.24.41-1.1 RPM for ppc64

From OpenSuSE Ports Tumbleweed for ppc64

Name: kiwi-systemdeps-core Distribution: openSUSE Tumbleweed
Version: 9.24.41 Vendor: openSUSE
Release: 1.1 Build date: Sat Jun 18 22:08:21 2022
Group: System/Management Build host: obs-power9-07
Size: 0 Source RPM: python-kiwi-9.24.41-1.1.src.rpm
Packager: http://bugs.opensuse.org
Url: https://github.com/OSInside/kiwi
Summary: KIWI - Core host system dependencies
This metapackage installs the necessary system dependencies
to run KIWI.

Provides

Requires

License

GPL-3.0-or-later

Changelog

* Thu Jun 09 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.40 → 9.24.41
* Wed Jun 08 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix helper method to detect dracut outfile format
    The method _get_boot_image_output_file_format_from_dracut_code
    is used in kiwi to match parts of the dracut code for the used
    output file format. Beginning with dracut-056 the code part
    checked has changed syntactically such that the match did
    no longer work. This commit increases the scope of the match
    and replace pattern and Fixes #2149
* Wed Jun 08 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed handling of signing_keys in cmdline options
    When passing signing_keys with the --add-repo|--set-repo
    commandline options the delimiter to separate the single
    key information is a colon(:). However, this is stupid when
    kiwi expects the signing key to be references as an URI
    format like file://... Therefore this patch changes the
    delimiter from colon(:) to semicolon(;)
* Wed Jun 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.39 → 9.24.40
* Wed Jun 01 2022 Carlos Bederián <zzzoom@gmail.com>
  - Setup SELinux on every system prepare / build (#2148)
    Setup SELinux on every system prepare / build such that all image types benefit from it not only the disk (oem) type
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Install all of QEMU to Ubuntu arm integration test
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - rename user to ubuntu for Ubuntu integration test
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.38 → 9.24.39
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move to sphinx>=5.0.0
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.37 → 9.24.38
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed sphinx extlinks rendering
    In Sphinx v5 warning will be treated as errors. This results in the following
    warning to be an error: extlinks: Sphinx-6.0 will require a caption string to
    contain exactly one '%s' and all other '%' need to be escaped as '%%'.
    This commit applies the required quoting
* Sun May 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.36 → 9.24.37
* Sat May 28 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added example aarch64 integration test for Ubuntu
    Created a RaspberryPI image description for Ubuntu(jammy)
    as integration test for building aarch64 images and added
    it to the integration test matrix
* Mon May 23 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added --target-arch for image info
    Allow cross arch dependency solving
* Fri May 20 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - update docs
* Fri May 20 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for group id in users setting
    Allow to specify the group id in the groups list a user
    should belong to. The group id can be placed as part of
    the group name separated by a colon like in the following
    example:
    <users>
    <user groups="kiwi,admin:42,users" password="..." name="kiwi"/>
    </users>
    Please note kiwi checks if the provided group already
    exists and only creates a group if it is not already present in
    the system. As default groups are usually provided by the OS
    itself including its preferred group id, you will intentionally
    not be able to overwrite group id for existing groups.
    This Fixes #2064
* Thu May 19 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.35 → 9.24.36
* Tue May 17 2022 Robert Schweikert <rjschwei@suse.com>
  - Subformats should also not be compressed when encryption is enabled (#2138)
    Subformats should also not be compressed when encryption is enabled
    This is a follow on change to bdba953. When the filesystem is encrypted the
    resulting image should not be compressed. Also explain why we ignore the
    compression seeting in the user configuration for encrypted images.
* Mon May 16 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for prebuilt bootstrap package for apt
    When using the apt packagemanager kiwi required the use of
    debootstrap to create the initial rootfs. This works as long
    as there is always a main distribution repository available
    which follows the structure of the official debian mirrors.
    However if such a main distribution is not present or an
    alternative layout like e.g OBS repos is used, debootstrap
    will refuse to work. To allow for an alternative and without
    the dependency to debootstrap kiwi supports using a prebuilt
    bootstrap package providing the mini rootfs to serve as
    the bootstrap result. As all other package managers properly
    supports installation into an empty new root, this feature
    was only added when using the apt packagemanager
* Sun May 08 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.34 → 9.24.35
* Sat May 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow more repo params to be set on the cmdline
    The repository parameters for signing keys, the component
    list the main distribution name for debian repositories and
    also the repository_gpgcheck could not be set via the
    commandline options --add-repo and/or --set-repo. This
    commit adds support for them and also updates the manual
    page accordingly
* Sat May 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update ubuntu integration tests
    Build them against latest release (jammy).
    This Fixes #2128
* Sat May 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.33 → 9.24.34
* Thu May 05 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Follow up fix for isolinux-config
    isolinux-config is called to update the search path inside
    of the isolinux binary. isolinux/syslinux is exclusive to
    the ix86 architecture and to BIOS firmware. Therefore the
    condition to actually call it should reflect this.
* Thu May 05 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.32 → 9.24.33
* Thu May 05 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed runtime check
    Fixed check_dracut_module_for_disk_overlay_in_package_list. The
    check complains if the dracut-kiwi-overlay module is not installed
    but overlay support was requested. This is correct but should only
    be done if the selected initrd system is dracut.
* Wed May 04 2022 ozboss <32305849+ozboss@users.noreply.github.com>
  - Add option to set LUKS type to luks1 (#2126)
    Add option to set LUKS type to luks1
    So far the LUKS type could be set to luks and luks2. However, what luks
    version the value 'luks' evaluates to depends on how the distributor has
    packaged luks. Thus it's possible that 'luks' is either luks1 or luks2. To
    also have the opportunity to explicitly specify luks1 this commit adds
    the opportunity in the schema.
* Wed May 04 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update devel packages helper
    Added trang as needed when working on the schema
* Fri Apr 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for dm integrity with secret key
    Allow to protect the opening of the integrity data map and
    journal through a keyfile. For setting the key file two new
    optional type attributes were added:
    * integrity_keyfile
    * integrity_metadata_key_description
    The key file format must be correct according to the selected
    integrity algorithm. As of now the kiwi default hmac-sha256
    algorithm is used with the selected keyfile
    The optional integrity_metadata_key_description attribute
    allows to specify a custom description of an integrity key
    as it is expected to be present in the kernel keyring. The
    information is placed in the integrity metadata block. If
    not specified kiwi creates a key argument string instead
    which is based on the given integrity_keyfile filename.
    The format of this key argument is:
    :BASENAME_OF_integrity_keyfile_WITHOUT_FILE_EXTENSION
* Thu Apr 28 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update get_disksize_mbytes to support clones
    When using partition clones the pre-calculation of the
    disk size needs to take this into account.
* Wed Apr 27 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed UUID setup for XFS
    Make sure the log got replayed prior generating a new UUID
* Tue Apr 26 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed scope of setup_isolinux_boot_path
    There is a method called setup_isolinux_boot_path which is
    encoded in the Iso class. The method allows to change the
    boot path in the isolinux binary and makes sense when the
    bootloader is selected to be isolinux. However, the method
    was called in the scope of the FileSystemIsoFs class which
    responsibility is to create an ISO filesystem. The creation
    of an ISO filesystem has no direct connection to a bootloader.
    Thus calling this method in the scope of the FileSystemIsoFs
    implementation is wrong and can lead to unexpected side
    effects. This commit moves the call of the method to the
    places where isolinux as a bootloader can still be used.
    This Fixes #2117
* Tue Apr 26 2022 Dan Čermák <dcermak@suse.com>
  - Correct the URL to the dracut home page
    This fixes https://github.com/OSInside/kiwi/issues/2097
* Tue Apr 26 2022 Dan Čermák <dcermak@suse.com>
  - Change the custom vagrant config file to 00-vagrant.conf
    If it is called 99-vagrant.conf, then anything "before" that, like
    50-redhat.conf takes precedence and overrides our custom settings.
* Tue Apr 26 2022 Dan Čermák <dcermak@suse.com>
  - Add Leap 15.4, SLE 15 SP4 & CentOS Stream 9 to the scripts tests
* Mon Apr 25 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.31 → 9.24.32
* Mon Apr 11 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for standalone dm integrity
    There is support in kiwi to use dm_integrity in combination
    with the LUKS header and dm_crypt. However there is also the
    use case to setup dm_integrity in standalone mode. This commit
    allows to create the dm_integrity layer outside of LUKS using
    /etc/integritytab to activate the map through a systemd
    generator if systemd is used.
    Regarding systemd it's required to use a version of system which
    provides: system-generators/systemd-integritysetup-generator.
    If this generator does not exist in the distribution it will
    also be missing in the dracut generated initrd and the boot
    will not be able to succeed. It's mentioned here because even
    newer distributions might be missing the generator
    Along with the implementation there are two new optional
    attributes in the <type> section:
    standalone_integrity="true|false"
    embed_integrity_metadata="true|false"
    standalone_integrity activates/deactivates the dm_integrity map
    on top of the root filesystem. Similar to the veritysetup support
    there is the opportunity to create an embedded magic metadata
    block at the end of the device containing the root
    filesystem via embed_integrity_metadata
* Sun Apr 10 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update per codacy smell
* Sun Apr 10 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for part clones to the Disk interface
    The Disk class provides methods to create partition(s)
    and map names according to its scope and independent of
    the actual partition tools. For example: create_root_partition().
    This commit adds an additional optional clone parameter to
    all methods for which we want to allow partition clones
* Sun Apr 10 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Be less strict in boot link to itself
    As part of the grub setup a link named 'boot' inside of
    /boot is created pointing to itself 'boot -> .'. The reason
    is to allow the bootloader config to find its files referenced as
    /boot/something independently if /boot is placed into an extra
    partition. However if an extra boot partition is used and a
    filesystem which does not support symlinks, e.g fat, that
    symlink creation should not lead to an error in the image build
    process as it is considered an optional safe link and not a
    mandatory pre-requisite
* Thu Apr 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed TW arm rpi integration test
    Explicitly add ruby to the package list
* Wed Apr 06 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.30 → 9.24.31
* Wed Apr 06 2022 Robert Schweikert <rjschwei@suse.com>
  - Fix LABEL detection (#2112)
    When only "root=" is specified on the kernel command line the match is
    located in the first group. Loop through the groups upon mtach to find
    what we are looking for.
* Tue Apr 05 2022 Robert Schweikert <rjschwei@suse.com>
  - Preserve LABEL setting (#2108)
    Preserve the LABEL= setting when the grub config file is re-generated.
    the GRUB_ENABLE_LINUX_LABEL setting does not exists upstream and
    not in any SUSE distribution. Set the grub setting such that LABEL
    is preserved on SUSE distros. (bsc#1197616)
* Tue Apr 05 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix test_setup_default_grub_empty_kernelcmdline
    The unit test exists to check that GRUB_CMDLINE_LINUX_DEFAULT
    is not set depending on the provided cmdline. The test exists
    for reasons explained in Issue #1650
* Fri Apr 01 2022 Fabian Vogt <fvogt@suse.de>
  - Don't compress .appx containers (#2106)
    The container is actually inside and already compressed.
* Fri Apr 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added new CloneDevice class
    Added CloneDevice class to the storage interface.
    The class allows to create clone(s) from a given source
    block device into a list of target block devices.
    The target block devices are clones of the source but
    prevents device naming conflicts for unique identifiers
    like the UUID. This is requires to still allow to boot
    from images containing device clones and needs to be
    handled by tools that might work on top of the cloned
    devices.
* Thu Mar 31 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Improve readability of shell commands
    The way the lsblk pipeline is constructed is improved
    to become easier to read by this commit
* Thu Mar 31 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added set_uuid() method to FileSystem API
    Allow to set a custom UUID not only at creation time of
    a filesystem but also at a later point in time in an
    already existing filesystem
* Tue Mar 29 2022 David Cassany <dcassany@suse.com>
  - Ensure BootloaderConfig resources are cleaned first
    This commit wraps the manual BootloaderConfig instance cleanup in
    disk builder into a try/finally scope. This way if KIWI is aborted
    or fails within this scope the BootloaderConfig is cleaned up first.
    Signed-off-by: David Cassany <dcassany@suse.com>
* Tue Mar 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed overlay root dracut module
    make sure there is always only one selection for the
    readonly root partition
* Tue Mar 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update LUKS integration test for TW
    Use cipher options to make cryptomount work again
* Tue Mar 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set LUKS(v1) for TW encryption integration test
    In Tumbleweed LUKS2 became the default but the grub cryptomount
    tool is not able to work with the v2 LUKS header. Thus the test
    explicitly builds against the former luks version for now
* Tue Mar 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set LUKS2 for TW luks encryption integration test
    In Tumbleweed LUKS2 became the default also for grub
    and cryptomount, which requires to create a LUKS2 header
    in the dm_crypt layer
* Tue Mar 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.29 → 9.24.30
* Mon Mar 28 2022 Tim Serong <tserong@suse.com>
  - Add ensure_empty_tmpdirs option for OCI containers (bsc#1197783)
    Since #1759 was merged, the contents of /run/ and /tmp/ are excluded from
    built images.  This causes problems for some containers, notably Ceph when
    deployed in a Rook/k8s environment, which needs to have certain directories
    present inside /run/.  This commit adds the ability to return to the previous
    behaviour and *not* empty those temporary directories, if you specify
    <image><preferences><type [...] ensure_empty_tmpdirs="false">.
    Fixes: https://github.com/OSInside/kiwi/issues/2093
    Signed-off-by: Tim Serong <tserong@suse.com>
* Fri Mar 25 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed parsing of veritysetup output
    veritysetup uses tabs to align values. The way kiwi parsed
    the values did not strip out the tabs and later on keeps
    them in the verification metadata block. The unit test
    did not catch this because the mock output used for
    veritysetup did not contain tabs. This commit fixes the
    test to catch this condition and also fixes the code to
    handle all space characters (tabs, space, newlines) in
    a safe way
* Thu Mar 24 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update contents of store_credentials result file
    The method added information about the PARTUUID as useful
    information. However, PARTUUID's are not supported by all
    partition tables. The Linux generated artificial values
    from the disk identifier are not wanted in this scope.
    As the information is not mandatory it's better to not
    provide it at all and avoid confusion to users.
* Thu Mar 24 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make blkid call more robust
    Do not raise of blkid is not able to read the requested ID.
    It is expected that the methods of the BlockID class either
    returns a value or none but do not raise and cause the
    complete process to terminate
* Thu Mar 24 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added embed_verity_metadata attribute
    Specifies to write a binary block at the end of the
    partition serving the root filesystem, containing information
    for dm_verity verification and to construct the device map
* Thu Mar 24 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added create_verification_metadata method
    Along with creating a filesystem including device mapper features
    like dm_verity (see verity_blocks) or dm_crypt/dm_integrity (see luks)
    there is always the question where to store the metadata information
    required to setup the device map. This can include information about
    blocksizes, offset addresses and more. The create_verification_metadata()
    method allows to write a signed custom data block of a documented
    format at the end of the given block special which stores this type
    of information such that tools at boot time gets the opportunity to
    read this information. In this commit only information connected
    to the dm_verity feature activated via the verity_blocks attribute
    will be part of the verification block. With future changes other
    data might be added
* Wed Mar 23 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added runtime check for by-partuuid use
    Added check_partuuid_persistency_type_used_with_mbr(). Not
    every partition table type supports UUIDs. We don't want to
    make use of the artifical values created by Linux if the
    partition table doesn't support it natively
* Wed Mar 23 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support partuuid and label mounts in dracut module
    The 90kiwi-overlay dracut module was not able to parse the
    device link if done with PARTUUID or LABEL
* Wed Mar 23 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added integration test for by-partuuid
    The test hooks into the existing test-image-embedded integration
    test for leap. As I plan to extend the tests specific to features
    actually only useful for special embedded images, I thought this
    would be the right place to start
* Mon Mar 21 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - validate luksformat options
    validate options against the cryptsetup help info
    in a runtime check
* Mon Mar 21 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Handle LUKS type in its own attribute
* Sun Mar 20 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed attribute description
    The overlayroot_verity_blocks attribute description
    contained outdated information
* Sat Mar 19 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for verity setup on standard rootfs
    So far the verity support was only available with the
    overlayroot layout and the read-only squashfs root. This
    commit adds a new attribute: verity_blocks="number|all"
    which allows to create the verity setup also on the
    standard root partition
    In addition to the change it was needed to extend the
    Filesystem API with an additional optional paramter to
    allow setup of the filesystem UUID. Having the opportunity
    to set the UUID at filesystem creation is generally useful
    and with regards to this particular change it became also
    required
* Fri Mar 18 2022 Neal Gompa <ngompa13@gmail.com>
  - Allow Btrfs and XFS as options for the boot partition filesystem
    We already do this implicitly when we do not define this attribute
    and request a boot partition, so let us explicitly offer these as
    options too.
* Fri Mar 18 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix grub defaults for PARTUUID use
    Make sure to set GRUB_DISABLE_LINUX_PARTUUID to false
    when using by-partuuid
* Thu Mar 17 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow luks format options
    Added new luksformat element which allows to pass
    along options to the luksFormat call. This allows users to
    switch between LUKS and LUKS2 via e.g
    <luksformat>
    <option name="--type" value="luks2"/>
    </luksformat>
    It also allows to pass along a set of options only available
    to LUKS2, e.g
    <luksformat>
    <option name="--type" value="luks2"/>
    <option name="--cipher" value="aes-gcm-random"/>
    <option name="--integrity" value="aead"/>
    </luksformat>
    In addition to the new attribute the existing luks attribute
    can also be specified to read credentials from a keyfile by
    using the file:// source locator, e.g
    <type ... luks="file:///path/to/a/keyfile"/>
    This Fixes #1898
* Sat Mar 12 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed funny build_status.sh bug
    If the name of the repository starts with an 'F' like
    in Fedora, the 'F' is turned into a red escape sequence
    because it is assumed to be a failed status indicator :)
    The path here is probably also dumb as it just assumes
    there is a space after the status indicator. Well the
    complete script is not really a good one, but still
    helpful
* Sat Mar 12 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Fedora arm integration test
    Move test to Fedora 34
* Sat Mar 12 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added container build test for Fedora
    Fedora systems uses buildah to create containers. There is
    no integration test for kiwi which tests building containers
    with buildah. This commit adds a build test to cover this
    path. Related to Issue #2020
* Fri Mar 11 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-docker-derived for leap
    The test still used the additionaltags attribute with the
    latest schema (v7.5) which fails to validate because the
    attribute was moved to additionalnames
* Fri Mar 11 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.28 → 9.24.29
* Thu Mar 10 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Don't bind mount /run during build time
    In commit #9512318 a new bind mount of /run into the root tree
    during build time was introduced. The bind mount was done because
    in my tests running podman from config.sh it did not work without
    /run bind mounted. However, it turned out that I was wrong because
    along with the provided methods to prepare cgroups and a custom
    runtime configuration method; setupContainerRuntime() it is not
    needed to have /run bind mounted. Thus this commit deletes the
    bind mount of /run and therefore Fixes #2067
* Thu Mar 10 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix github action running obs service refresh
    The curl command to send the POST request for running the
    obs remote service uses the --fail-with-body option.
    Unfortunately the ubuntu-latest container used to run the
    action comes with a curl version that does not support the
    option. Thus this commit removes the use of the option
* Wed Mar 09 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move scope of veritysetup
    veritysetup was called as part of the disk builder. However,
    the veritysetup should be a responsibility of the classes which
    implements the sync_data method. This allows to use the creation
    of a verity hash format right after sync as a feature to these
    classes and in a broader scope. In addition to that change the
    VeritySetup::format method now returns the metadata from the
    format call and stores it as debug information to the log file.
    A concept to persistently store the verification metadata as part
    of the partition(s) will be a next step.
* Wed Mar 09 2022 Dan Čermák <45594031+dcermak@users.noreply.github.com>
  - Style changes in container docs
    Reformulate the container building guide a bit
* Wed Mar 09 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for custom size in filesystem classes
    Allow to create filesystems with an optional size parameter.
    If no size is provided the filesystem gets as big as the device
    which is the default and unchanged behavior. In addition a
    size counting from the beginning (>0) as well as a size
    counting from the end (<=0) can be provided.
* Wed Mar 09 2022 David Cassany <dcassany@suse.com>
  - Update schema docs
    Signed-off-by: David Cassany <dcassany@suse.com>
* Tue Mar 08 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Provide schema version v7.5 in spec
* Tue Mar 08 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update descriptions to schema v7.5
* Sun Mar 06 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support mount by PARTUUID
    In addition to by-label and by-uuid also support mounting
    by PARTUUID. Please note kiwi also makes sure that the grub
    generated config file uses the root=PARTUUID= notation and it's
    not clear if grub-mkconfig will persist making use of it.
    Nevertheless there are also systems which uses different
    methods to boot and it makes sense to support partuuid
    mappings as well
* Sun Mar 06 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for partition cloning
    Support creating block level clones of certain partitions
    used in the image. Clones can be created from the root, boot
    and any partition listed in the <partitions> element.
* Sun Mar 06 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update cron for security scorecard
    Run weekly on Saturdays
* Fri Mar 04 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for extended layout to msdos table
    This commit adds the following new type attribute
    <type ... dosparttable_extended_layout="true|false"/>
    If set it specifies to make use of logical partitions inside
    of an extended one. Effective only on type configurations which
    uses the msdos table type, it will cause the fourth partition
    to be an extended partition and all following partitions will be
    placed as logical partitions inside of that extended partition.
    This setting is useful if more than 4 partitions needs to be
    created in an msdos table.
    In addition to the support for extended/logical partitions the
    the attributes 'mountpoint' and 'filesystem' in the <partitions>
    section becomes optional. This also allows to place partitions
    as placeholders not mounted into the system
* Fri Mar 04 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added type hints for partitioner interface
* Fri Mar 04 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.27 → 9.24.28
* Thu Mar 03 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed unconditional grub2 package requirement
    The grub2 package does not exist on all distributions
    as a name provider independent of the architecture.
    On for example Debian and Ubuntu the packages are
    handled differently and grub2 is only provided on
    supported architectures. Thus the spec file should
    set the grub2 requirement only if the distribution
    provides it in any case
* Wed Mar 02 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.26 → 9.24.27
* Tue Mar 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added overlayroot_verity_blocks attribute
    Setting this attribute to a number or 'all' in an overlayroot
    configuration will create a dm verity hash from the number of
    given blocks (or all) placed at the end of the squashfs compressed
    read-only root filesystem. For later verification of the device,
    and without further image description settings, the credentials
    information produced by veritysetup from the cryptsetup tools, is
    created as a file in /boot/overlayroot.verity and is stored as
    such into the image by default.
* Tue Mar 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed disk.sh caller environment
    The documentation explains the disk.sh script to be called
    from inside of the image root as it exists on the block layer.
    The disk.sh script is therefore also called after the sync
    of the unpacked image root tree to the block layer. The
    implementation however, was only partially calling disk.sh
    from such an environment. In fact the environment was only
    the mountpoint of the root partition but this is not the
    complete system regarding layouts that uses extra partitions
    and/or volumes. This commit introduces the use of the new
    class ImageSystem and calls disk.sh in the way it was
    designed and documented.
* Tue Mar 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added ImageSystem class
    The class responsibility is to provide access to the
    image root system from the block layer of the image
    scope
* Tue Mar 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Prevent superfluous filesystem creation
    In case of an overlayroot setup and the request for
    no extra write partition, it is not needed to create
    a filesystem for the write space which never gets
    synced to the image
* Sat Feb 26 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.25 → 9.24.26
* Sat Feb 26 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed destructor test on oci_tools/buildah_test.py
    Calling del() from teardown breaks when the method is
    called through teardown_method
* Sat Feb 26 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.24 → 9.24.25
* Sat Feb 26 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support nose and xunit style tests
    The modifications in this commit allows the unit tests
    to run on both, pytest 6.x (nose test layout) and the new
    pytest 7.x (xunit test layout). This Fixes #2072 in a
    much nicer way. Thanks much to @smarlowucf
* Fri Feb 25 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update unit test to work in obs
    Some unit tests fails if they run in an obs environment.
    This is because the implementation checks the runtime
    envoironment and behaves differently if the system is
    an obs worker. The unit tests has to explicitly set this
    condition right for the test
* Fri Feb 25 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Unit test adaptions to pytest v7"
    This reverts commit 0dc2e803e0e8059c54a0ea23960245286675c86c.
    The pytest interface from version v6 to v7 has received
    changes which requires the tests to be adapted to work for
    either the old or the new interface. As there are still many
    distributions which uses v6 as the standard we decided to
    revert back the adaptions done to support v7 and create
    a version requirement to v6 in .virtualenv.dev-requirements.txt
    This Fixes #2072
* Wed Feb 23 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added overlayroot_readonly_partsize attribute
    Specifies the size in MB of the partition which stores the
    squashfs compressed read-only root filesystem in an
    overlayroot setup. This Fixes #2068
* Wed Feb 23 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update to scorecard CI 1.0.4
* Tue Feb 22 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added debootstrap log info to exception message
    In case debootstrap fails there is more detailed information
    in a logfile written by debootstrap itself. This commit changes
    the exception information to contain this log information if
    present. Related to Issue #1800
* Sun Feb 20 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.23 → 9.24.24
* Sun Feb 20 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added overlayroot_write_partition attribute
    For the oem type only, allows to specify if the extra read-write
    partition in an overlayroot setup should be created or not.
    By default the partition is created and the kiwi-overlay dracut
    module also expect it to be present. However, the overlayroot
    feature can also be used without an initrd and under certain
    circumstances it is handy to configure if the partition table
    should contain the read-write partition or not.
* Sat Feb 19 2022 Matt Coleman <matt@datto.com>
  - Use DEB822-formatted .sources files instead .list files for APT
* Tue Feb 15 2022 David Cassany <dcassany@suse.com>
  - Support additional names for docker containers
    Docker containers used to support the attribute `additionaltags` which
    was used to provide multiple tags for the same image. Since only tags
    were supported this commit renames the attribute to `additionalnames`
    and now supports tags and names witht he following syntax:
    * '<name>:<tag>' -> adds a full docker image reference including name
    and tag
    * ':<tag>'       -> adds an additional tag while reusing the former name
    * '<name>'       -> adds an additional name while reusing the former tag
    Fixes #2045
    Signed-off-by: David Cassany <dcassany@suse.com>
* Mon Feb 14 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Follow up fix on force deleting debs
    Also remove eventual post scripting prior force removal
    of deb packages. Similar inconsistencies as with the pre
    scripts can occur on force removal. We want the operation
    to be successful in force mode even if that means to
    leave a dirty state.
* Sat Feb 12 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for pre_disk_sync.sh script
    The optional pre_disk_sync.sh script is executed for the
    disk image type oem only and runs right before the synchronisation
    of the root tree into the disk image loop file. The script hook
    can be used to change content of the root tree as a last action
    before the sync to the disk image is performed. This is useful
    for example to delete components from the system which were
    needed before or cannot be modified afterwards when syncing
    into a read-only filesystem.
* Thu Feb 10 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Create ci-scorecards-analysis.yml
    Create security health metrics score card
* Tue Feb 08 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixup inplace podman storage and container conf
    Newer versions of podman requires runroot and graphroot
    to be explicitly set in storage.conf.
    Newer versions of podman no longer reads the engine.cgroups
    setting on containers.conf and prints a 'Failed to decode the
    keys [\"engine.cgroups\"]' warning message
    This commit fixes storage.conf and containers.conf written
    by kiwi if the setupContainerRuntime method is used in
    scripts.
* Tue Feb 08 2022 David Cassany <dcassany@suse.com>
  - Make use of container name in OCI images
    Fixes #2050
    Signed-off-by: David Cassany <dcassany@suse.com>
* Mon Feb 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.22 → 9.24.23
* Mon Feb 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed name of secret variable
    The ci-update-build-tests action used a wrong variable
    name which does not exist in the github secrets. This
    commit fixes it and uses the correct variable name
* Mon Feb 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.21 → 9.24.22
* Mon Feb 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Revert "Fixed MicroOS build test""
    This reverts commit 8c4464b8ff2af2642439ce92e1e2be497f2b0f4d.
    snapper default config has moved from /etc to /usr/share
    now hopefully for the last time
* Mon Feb 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed unit tests
    The pytest interface setup() method call has changed
    in a way that an additional parameter is passed to
    the method which leads to a python error at invocation
    time if the setup method does not define it.
* Mon Feb 07 2022 Neal Gompa <ngompa@centosproject.org>
  - build-tests: Update CentOS 8 test appliance to CentOS Stream 8
    CentOS Linux 8 is now EOL, so switch over to CentOS Stream 8.
* Fri Feb 04 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed handling of oem reboot settings
    There are oem settings called oem-reboot, oem-reboot-interactive
    as well as oem-shutdown and oem-shutdown-interactive. When used
    the information is passed along to the profile but not evaluated
    by any initrd code. I don't know where on the way we lost the
    code that actually works with these settings but this commit
    makes them effective. This Fixes #2056
* Thu Feb 03 2022 Dirk Müller <dirk@dmllr.de>
  - treat armv8l as armv7hl
    openSUSE switched from armv7hl buildworkers to aarch64 in 32bit mode
    which identifies itself as "armv8l" in uname -m.
* Tue Feb 01 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.20 → 9.24.21
* Mon Jan 31 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed UUID used in grub early boot script
    In case the system is luks encrypted the UUID of the root
    partition was used in the grub early boot script. However,
    this condition is only correct if in addition to the luks
    encryption the boot area is on crypto too. If boot is not
    on crypto the UUID must be the boot partition and not root.
    Only if root AND boot is on crypto the kiwi created early
    boot script includes the grub cryptomount calls.
* Sat Jan 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.19 → 9.24.20
* Sat Jan 29 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Followup fix for force deleting debian packages
    The force uninstall deletes pre scripts prior removal
    because if they fail the package will not be removed.
    For a force uninstall we consider this ok. However,
    the deletion of the scripts did not happen in the
    image root. This patch fixes it
* Wed Jan 26 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Followup fix for force deleting debian packages
    Pass --force-depends to allow uninstall even if the
    dependency checker complains
* Tue Jan 25 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix use of xattrs for container sync
    when syncing data for containers only a subset of xattr
    attributes can be applied. This Fixes #2009
* Tue Jan 25 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.18 → 9.24.19
* Tue Jan 25 2022 Neal Gompa <ngompa@datto.com>
  - Ensure SELinux labels are set based on the policy
    When running kiwi from a filesystem tree that has custom labels applied
    (such as when using kiwi from within a container on an SELinux-enabled
    host), the filesystem labeling doesn't correctly apply on some files
    and folders with a warning about the location being customized by
    the administrator. This causes all kinds of strange results with
    the built images and makes them unbootable.
    To resolve this, tell setfiles to forcibly set files and folders
    with the default context from the installed policy.
* Tue Jan 25 2022 Fabian Vogt <fvogt@suse.de>
  - Extend and update documentation about /etc/machine-id setup
* Tue Jan 25 2022 Fabian Vogt <fvogt@suse.de>
  - Fix ordered list in shell_scripts.rst
    Ordered lists must be indented by three spaces, otherwise the numbering breaks.
* Mon Jan 24 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.17 → 9.24.18
* Mon Jan 24 2022 David Cassany <dcassany@suse.com>
  - Fix ramdisk deployments from PXE
    This commit fixes PXE deployments on ramdisk. In such cases the
    former fix from df4e62a4 is not sufficient as there is no `root=`
    parameter within the kernel cmd line and hence this logic is never
    executed.
    Signed-off-by: David Cassany <dcassany@suse.com>
* Fri Jan 21 2022 David Cassany <dcassany@suse.com>
  - Update outdated PKGBUILD for Arch Linux
    Signed-off-by: David Cassany <dcassany@suse.com>
* Fri Jan 21 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed unit test race condition
* Fri Jan 21 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed grub loader/entries setup
    If called in non standard environments like an OBS worker
    the grub tooling does not work correctly and produces invalid
    results. For these cases kiwi provides a collection of fix_
    methods to change the produced results. This commit covers
    the invalid path in loader/entries/*.conf files pointing to
    the kernel and the initrd as they exist in the image-root
    directory. This results for example in settings like:
    linux /usr/src/packages/KIWI-oem/build/image-root/boot/vmlinuz-5.14.0-43.el9.x86_64
    when it should be:
    linux /boot/vmlinuz-5.14.0-43.el9.x86_64
    This Fixes #2038
* Fri Jan 21 2022 Fabian Vogt <fvogt@suse.de>
  - Set /.snapshots subvolume to mode 0700 (bsc#1194992)
    Avoid that users other than root can enter or even change the content.
    This is what snapper does as well.
* Fri Jan 21 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed build_status helper output issue
    Starting with CentOS stream 9 integration tests a new
    layer in the project that builds it was added. This changed
    the osc results output and messed up the build_status
    helper output a bit. This commit fixes it
* Thu Jan 20 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix the uninstall(force) on Debian based dists
    Packages marked for uninstall via <package name="delete|uninstall"/>
    failed to become removed for several reasons. The way this was done
    in kiwi did not work because dpkg needs to be called differently
    and with some nasty pre-processing in order to allow for force
    deletion. In force mode we also allow to remove packages marked as
    essential. In gracefull uninstall mode this commit makes sure the
    environment is prepared and does not fail for false-positive
    reasons.
* Wed Jan 19 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added mail map
    Added information about my private e-mail being the
    successor for the work done when I was an employee
    of SUSE
* Tue Jan 18 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow calling podman within chroot
    Added helper functions and env preparation code
    to allow calling podman from within a chroot. This
    allows to run podman from e.g config.sh and also
    inside of OBS workers
* Tue Jan 18 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix requirements for kiwi-systemdeps-filesystems
    Extend btrfs condition applying for EL8 to apply for EL9 too
* Fri Jan 14 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.16 → 9.24.17
* Fri Jan 14 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed image builds without kernel
    If an image is build without a kernel kiwi fails due to
    some code paths expecting the presence of kernel modules
    and or kernel binaries. This commit fixes this and allows
    creating an image without installing a kernel.
* Fri Jan 14 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added CentOS Stream 9 integration tests
* Thu Jan 13 2022 Fabian Vogt <fvogt@suse.de>
  - Allow "uninitialized" as content of /etc/machine-id
    According to machine-id(5), an empty file does not signal that this is the
    first boot of the system. Instead, the file needs to be missing or contain
    the string "uninitialized". A missing file does not work if the filesystem
    is initially mounted read-only, so allow "uninitialized" as well, instead
    of truncating it.
    Improve the documentation of the method, e.g. dracut is not involved.
* Thu Jan 13 2022 Fabian Vogt <fvogt@suse.de>
  - Fix booting GRUB submenu entries with hybrid images (linux/linuxefi)
    Variables assigned with "set" are not visible in submenus for some reason.
    Export $linux and $initrd, so that they also work in submenu entries.
    Fixes bsc#1192523
* Thu Jan 13 2022 Fabian Vogt <fvogt@suse.de>
  - Don't copy GRUB modules for EFI with secure boot enabled
    When booting grub.efi with secure boot enabled, modules can't be loaded
    and thus the grub.efi image needs to be complete. Save some space in live
    images by not copying them into the ISO filesystem.
    Fixes part of #1750
* Thu Jan 13 2022 Fabian Vogt <fvogt@suse.de>
  - Don't include the ESP in the ISO9660 partition as well (#1750)
    Previously the image for the ESP was created inside the source directory
    for the ISO9660 filesystem, so it ended up there as well as a separate
    partition. Fix that by creating it as a temporary file instead.
* Thu Jan 13 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Automate build-tests OBS service refresh
    This commit provides a new github action which sends
    API requests to the OBS api to refresh the source
    services for the integration tests on the OBS server
    side. This Fixes #1980
* Wed Jan 12 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added docker integration test for Ubuntu
* Wed Jan 12 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update ubuntu integration test to Hirsute(21.04)
* Tue Jan 11 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.15 → 9.24.16
* Sun Jan 09 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed regression in compression detection
    The change from 282529de8f612dee32d54ee868c2365dcd829220
    Introduced a bad regression. The assumption was made that the
    xz tool could be used to detect if a file is compressed or not.
    However, this requires the file to be locally present. In the
    scope of the method call is_compressed() and within a remote
    deployment e.g PXE this is not the case. Therefore the former
    way to "detect" the compression according to the .xz postfix
    of the source filename was restored. In addition the function
    name was changed to is_xz_compressed() because that's what the
    method can do and not more. This Fixes #2015
* Fri Jan 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added debug option --debug-run-scripts-in-screen
    Instead of running scripts in screen if the --debug switch is
    set, we allow to explicitly switch on this behavior via
    a new option. This Fixes #2010
* Fri Jan 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Change packages target for bootincludes
    Packages marked with bootinclude="true" will be added to the
    referenced kiwi boot image description if the initrd_system
    is set to "kiwi" instead of "dracut". The package marked was
    primarily added to the type="image" section and got only
    added to the type="bootstrap" section if no image type section
    existed. However, it has turned out that this approach has
    the disadvantage that packages which must be installed as
    part of the bootstraping (e.g certificates) cannot be handled.
    This commit changes the behavior of the bootinclude to include
    the package always to the type="bootstrap" section.
* Fri Jan 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add GitHub workflow badges
* Fri Jan 07 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed Codacy Badge
* Sun Jan 02 2022 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow firmware="custom" setting
    The firmware attribute in kiwi is used to indicate for
    which boot firmware the image should be build. Specifying
    the target firmware is helpful to create for example the
    correct disk layout. If no firmware is specified KIWI
    decides for a default according to the image architecture.
    This selection is not 100% accurate and as we don't know
    the later target system. Especially for embedded devices
    the correct disk layout and other settings can be
    board specific and KIWI's default settings regarding the
    firmware could be invalid. For compatibility reasons we
    cannot switch off the default selection case and therefore
    a new attribute value "custom" is introduced with this
    commit. If set KIWI does not select any firmware and
    consequently all settings caused by a firmware setup will
    be skipped. On the other hand this means all needed
    settings for the target to boot and not done by KIWI
    needs to be specified explicitly and as needed.
* Sun Jan 02 2022 Neal Gompa <ngompa@datto.com>
  - Add util-linux dep for -systemdeps-disk-images subpackage
    Without this dependency, kiwi fails to work properly in minimal image
    build environments, like in a mock chroot where util-linux is not installed.
* Fri Dec 17 2021 Tanja Roth <taroth@suse.com>
  - index.rst: fix headline
    * third try: apply diff by schaefi
* Fri Dec 17 2021 Tanja Roth <taroth@suse.com>
  - index.rst: fix headline
    * removed lonely bracket
    * added more lines to fix syntax
* Thu Dec 16 2021 Tanja Roth <taroth@suse.com>
  - index.rst: Change title (bsc#1189294#c2)
    * 'KIWI NG 9: KIWI NG Documentation' -> 'Building Linux System Appliances with KIWI Next Generation (KIWI NG <VERSION>)
    * suggested in bsc#1189294#c2 for more clarity
    * change has been discussed with and approved by main author (Marcus S.)
* Thu Dec 16 2021 Rüdiger Oertel <ro@suse.de>
  - support compressed modules in other formats
    when cleaning up the firmware directory for unused files
* Thu Dec 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.14 → 9.24.15
* Wed Dec 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    Rework troubleshooting chapter and add an article
    about app security subsystems like selinux and their
    potential influence on building images. Also update
    the quickstart with a reference to the troublshooting
    chapter. This Fixes #1891
* Wed Dec 08 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for collection modules
    In CentOS Stream 8 and Red Hat Enterprise Linux 8, there are
    Application Streams that are offered in the form of modules
    (using Fedora Modularity technology). To build images that use
    this content KIWI needs to support to enable/disable various
    modules. This commit allows to configure collection modules
    in a new element as shown below
    <packages type="bootstrap">
    <collectionModule name="module" stream="stream" enable="true|false"/>
    </packages>
    This Fixes Issue #1999
* Mon Dec 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.13 → 9.24.14
* Sun Dec 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Disable intersphinx
    intersphinx is a doc extension which links to the documentation of
    objects in other projects whenever Sphinx encounters a cross-reference
    that has no matching target in the current documentation set, it
    looks for targets in the documentation sets configured in the
    intersphinx_mapping. However, the kiwi docs do not use this feature
    thus it can be disabled.
* Tue Nov 30 2021 David Cassany <dcassany@suse.com>
  - Compress container images in builder class
    This commit changes the stage at which container images are compressed
    to match the criteria applied to other image types. Instead of
    compressing the image in OCI devoted classes now it is happening
    in builder class by setting Result instance properties.
    Fixes #1996
    Signed-off-by: David Cassany <dcassany@suse.com>
* Mon Nov 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Fixed MicroOS build test"
    This reverts commit 52c38f9ec22aef484efaf0a570dc78eea529deec.
    The TW people moved to an older version of libsnapper, no
    idea what these guys are doing
* Mon Nov 29 2021 John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  - kiwi-repart: Fix spelling error in source code comment
* Mon Nov 29 2021 John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  - Fix multiple minor spelling errors in documentation
* Mon Nov 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for setting up release version
    Currently the release version is not set or set to '0'
    for package managers which requires a value to operate.
    However, in order to support leveraging the same description
    across different releases it is important to have the
    opportunity to specify a setting for the release version.
    This commit adds a new optional attribute to the preferences
    section which allows to specify a custom value which
    serves as the release version:
    <preferences>
    <release-version>TEXT</release-version>
    </preferences>
    If not specified the default setting as before applies.
    Please note the release version information is currently
    used in dnf and microdnf package managers only. It might
    happen that it gets applied to the other package manager
    backends as well. This will happen on demand though.
    Related to Issue #1918. This Fixes #1927
* Mon Nov 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.12 → 9.24.13
* Mon Nov 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add global --kiwi-file option
    When building with kiwi a search on the kiwi main config
    file is made inside of the given --description directory.
    The search looks up for the file config.xml or *.kiwi.
    So far there was no opportunity to specify another name.
    This commit adds an option in the global area named:
    - -kiwi-file name
    which will make kiwi to lookup this file inside of the
    given --description directory and fail if it does not
    exist. This Fixes #1973
* Mon Nov 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added type hints for CliTask class
* Fri Nov 26 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.11 → 9.24.12
* Thu Nov 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use realpath to resolve this:// location
* Thu Nov 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support this:// resource locator for includes
    Allow include references like the following example:
    <include from="this://include.xml"/>
* Thu Nov 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow repo path relative to the image description
    This commit adds a new URI type called this://... The
    this:// part will be resolved into the absolute path to
    the image description. A source path like the following:
    <source path="this://my_repo"/>
    is resolved to
    <source path="dir:///path/to/image/description/my_repo"/>
    This change provides the requested opportunity to reference
    repos provided as part of the image description and
    Fixes #1964
* Thu Nov 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Care for different snapper template locations
    snapper recently changed their config template location
    from etc/ to usr/. This commit handles the two locations
    and Fixes bsc#1192940
* Thu Nov 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Prevent warning message on resize exception
    On systems which are configured to run the oem resize at
    every boot (default case) kiwi checks how much space is free
    and if that fits the constraints configured as part of the
    image description. If the constraints are not met a warning
    message is displayed and the boot continuous without any
    resize action happening.
    This warning message however, always appears after the first
    boot when the resize had happened and no rest space on disk
    is present unless the disk geometry would have changed.
    The situation of the reboot of the system without any disk
    geometry change is the standard case and happens way more
    often than the reboot with a disk geometry change.
    Therefore the warning message displayed is not actually
    a real warning and most often considered as an issue
    when there is none. To relax this situation, this commit
    only shows the warning message if the detected free space
    on disk is greater than 2M, which is the condition under
    which we assume an intentional (user made) disk geometry
    change.
    This Fixes #1958
* Wed Nov 24 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.10 → 9.24.11
* Wed Nov 24 2021 Justin <47017732+TheMisanthropicHumanist@users.noreply.github.com>
  - Fix Source Install Disk Detection in get_disk_list (#1982)
    Fix Source Install Disk Detection in get_disk_list
    The original check doesn't always work because PARTITIONS get labels, NOT disks. If you install with
    a Flash Drive and deploy to a machine with an NVMe drive, the Flash Drive is listed first because SCSIs
    are shown first by lsblk (At least they were in our scenario). When we run
    blkid "[Install Flash Drive Disk]" -s LABEL -o value
    in this scenario, we get nothing returned so this conditional evaluates incorrectly. We should get the
    ${kiwi_install_volid} Partition Block Name, and search for whether ${disk_device} is contained within it as
    the Disk Device that corresponds to the Install Partition.
* Tue Nov 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Do not force dracut into a compression setting
    So far we called dracut with --xz which forces the initrd
    to be xz compressed. There are other compression formats
    used by the distributions and they might differe from xz.
    The selection for a compression tool is done by a dist
    configuration in dracut.conf.d which is provided by the
    distributions as they see fit. For us this means not
    forcing dracut into a specific compression setting allows
    to make use of the distro provided setting and also
    allows to change/override this setting by an overlay
    file. This Fixes bsc#1192975
* Tue Nov 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.9 → 9.24.10
* Tue Nov 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added documentation about sharing backends
    The kiwi boxbuild plugin supports several sharing
    backends. Details about them and eventual pre-setup
    steps prior use are mentioned in this document
* Tue Nov 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed MicroOS build test
    snapper default config has moved from /etc to /usr/share
* Mon Nov 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.8 → 9.24.9
* Mon Nov 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.7 → 9.24.8
* Mon Nov 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for reading metalink in info module
    For resolver operations through libsolv the 'kiwi image info'
    module exists. So far it could not read the repos from
    metalink repo definitions. This Fixes #1890
* Fri Nov 19 2021 David Cassany <dcassany@suse.com>
  - Force key attribute from signing element to be treated as a URI
    Signed-off-by: David Cassany <dcassany@suse.com>
* Thu Nov 18 2021 David Cassany <dcassany@suse.com>
  - Pass signing keys from the XML to the repositories
    This commits makes sure signing keys are passed to
    repositories setup in build task.
    Signed-off-by: David Cassany <dcassany@suse.com>
* Thu Nov 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move static sle15 integration test to git
* Tue Nov 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.6 → 9.24.7
* Mon Nov 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed raid integration test using extra boot part
    Due to changes in the distribution the tests needs some
    adaptions. The kernel as provided now by TW uses symlinks
    from boot to /usr/lib/modules/... to point to the kernel
    binary. Of course this breaks for any system that uses
    /boot on another partition. Those image tests which were
    testing this aspect needs fixing.
* Mon Nov 15 2021 Dan Čermák <dcermak@suse.com>
  - Make sure fedora-release is installed on Rawhide
    Follow up to #1957 and #1962:
    The Fedora build tests were using the generic release package and not
    fedora-release. This issue has been partially fixed in #1962, but we forgot to
    port the fix to the rawhide images as well. This commit adds the missing package
    to the Rawhide images as well.
* Sat Nov 13 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.5 → 9.24.6
* Fri Nov 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Followup fix for debootstrap called only once
    A recent change skipped calling debootstrap if the allow-existing-root
    flag was passed in combination with apt as the package manager.
    However this is not enough. If you say allow-existing-root but
    the existing root is empty or not valid to continue with chroot
    and apt the debootstrap phase should not be skipped. This commit
    checks if apt works in the chroot such that we can assume
    debootstrap has done its job and can be skipped
* Fri Nov 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to set sign keyfile in repository elements
    This commit adds a new and optional child element <signing>
    to the repository/source element as shown in the following
    example:
    <repository>
    <source path="...">
    <signing key="keyfile"/>
    </source>
    </repository>
    The collection of all keyfiles from all repositories will be
    added to the keyring as used by the selected package manager.
    Signing keys specified on the commandline and signing keys
    specified in the image description will be combined.
    This Fixes #1883
* Fri Nov 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.4 → 9.24.5
* Fri Nov 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed include processing
    This commit fixes several issue connected with the use of
    the <include> directive:
    First and foremost the XSLT chain was broken in a way that
    the include XSLT in combination with the PrettyPrinter XSLT
    were called not in the chain of stylesheets but together.
    This results in XML descriptions which duplicated the content
    and went invalid
    Another change is, when the include XSLT is called in the chain.
    This commit moves it to become the very first processing
    instruction such that the included data is part of all subsequent
    XSLT stylesheets. This also allows to use older schema versions
    in included XML data and they get automatically converted through
    the chain of XSLT stylesheets.
    Last change is the evaluation of the from= attribute value. This
    value is now interpreted as an URI. Currently only local URIs are
    supported. The reason to do this is because XSLT when processing
    a document resolves relative paths according to the file path
    of the master document. As kiwi does not change the original
    content that path with will be a /var/tmp location if one of
    the XSLT stylesheets were used. The documentation for this change
    was updated as well
* Thu Nov 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.3 → 9.24.4
* Thu Nov 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added type hints and annotations for iso_tools
* Thu Nov 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Drop support for cdrtools
    Tools like mkisofs, genisoimage and friends are all unmaintained
    and have found their substitute in xorriso for quite some time.
    This commit deletes the code from kiwi which supported creation
    of ISO images using the obsolete cdrtools collection. In addition
    all hack code associated with these tools like mbr insertion via
    isohybrid and things like that got dropped as well.
    This Fixes #1908
* Thu Nov 11 2021 kyr <kshtsk@users.noreply.github.com>
  - Drop usage of `factor` from coreutils
    utils/checksum: drop factor calls
    For portability we don't need to call linux coreutils' factor,
    instead we use pure python prime number generation implementation.
    Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
* Thu Nov 11 2021 Matt Coleman <matt@datto.com>
  - Add support for custom GRUB templates
    This allows the user to specify a template file to customize
    the bootloader menu. This only applies to oem and iso image
    types: other image types use the grub mkconfig toolchain.
    This resolves Issue #1970
    Co-authored-by: Marcus Schäfer <marcus.schaefer@gmail.com>
* Tue Nov 09 2021 Dan Čermák <dcermak@suse.com>
  - Only trigger functions workflow on certain paths
* Tue Nov 09 2021 Dan Čermák <dcermak@suse.com>
  - Re-enable functions integration tests once again
* Tue Nov 09 2021 Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
  - config/functions: make baseQuoteFile use extended regex
    It is more universal to use extended regex, because they can
    be used on wider range of platforms, for example, same
    regex works equally on bsd sed and linux distributions.
    Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
* Mon Nov 08 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added python 3.9, 3.10 to test workflow
* Mon Nov 08 2021 Kyr Shatskyy <kyrylo.shatskyy@suse.com>
  - utils/temporary: rename dir parameter to path
    To avoid conflicts with python standard `dir` function
    and for better matching purpose, the Temporary class
    constructor parameter it is the best to rename from dir
    to path.
    Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
* Mon Nov 08 2021 Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
  - utils/temporary: the --temp-dir does not work
    Using of --temp-dir argument does not make an effect,
    because optional 'dir' parameter defaults to the
    global TEMP_DIR value before it's changed.
    This patch address this issue.
    Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
* Wed Nov 03 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.2 → 9.24.3
* Wed Nov 03 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed s390 SLE15 integration test
    added blog package to solve packages added by
    file provides which are not resolved by obs
* Wed Nov 03 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed s390 integration test using extra boot part
    Due to changes in the distribution the tests needs some
    adaptions. The kernel as provided now by TW uses symlinks
    from boot to /usr/lib/modules/... to point to the kernel
    binary. Of course this breaks for any system that uses
    /boot on another partition. Those image tests which were
    testing this aspect needs fixing.
* Wed Nov 03 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added partition sizes to disk size math
    Make sure partition sizes are used for the calculation
    of the entire disk size to fit the size constraints of
    the image disk
* Tue Nov 02 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Cleanup xattr requirement"
    This reverts commit 6754b3f9e270a6cb710355605c46b0bade4de29c.
    It has turned out that SLE15 still uses the other xattr
    module :/
* Tue Nov 02 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added integration test
    Test the combination of custom partitions and volumes
* Fri Oct 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure fedora-release is installed
    Fedora based integration tests should install the fedora-release
    package. If no release package is specified the generic-release
    package is choosen which is unexpected. This Fixes #1957
* Wed Oct 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure debootstrap is called only once
    When building debian based images the bootstrap phase
    is done by calling debootstrap. If kiwi is called on
    an already existing root tree via --allow-existing-root
    this will make debootstrap to fail in any case. This
    is because for debootstrap it's an error condition if
    there is already data in the root. However, for kiwi
    and the explicitly requested re-use of the root tree
    this is not an error. Thus this commit skips the
    bootstrap by debootstrap and directly continues with
    the image phase.
* Wed Oct 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup xattr requirement
    There is no version of suse we support that provides
    the old xattr module. Thus the requirement can be set
    in a clean way to pyxattr and the setup.py trickery
    can be deleted
* Mon Oct 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Disable config functions testing
    It happens too often that the failure on running the
    container causes failed results which are not actually
    failures. I have hope that #1944 stabilize this
* Fri Oct 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.1 → 9.24.2
* Fri Oct 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed nasty bug in ramdisk generator
    The ramdisk unit generator reads the config.bootoptions
    file and extracts the root_uuid from it. This is done
    with a very simple shell read using a space as separator.
    However the last element is never read by that code.
    As long as there was yet another kernel cmdline option
    after the root= option this bug was not an issue. But
    as soon as the root= option is last in the list it will
    not be read and the generator exits prior creating the
    sysroot.mount target. This commit fixes it in a way
    that it makes sure there is always a space at the end
    of the config.bootoptions file
* Thu Oct 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support custom partitions
    In addition to the volume volume management settings also
    allow to setup low level table entries like in the following
    example:
    <partitions>
    <partition name="var" size="100" mountpoint="/var" filesystem="ext3"/>
    </partitions>
* Thu Oct 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added integration build test for bundle_format
* Wed Oct 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added lsof to kiwi-systemdeps-core
* Tue Oct 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for custom result bundle naming
    Allow to specify a bundle_format per <type> which is used
    at the time of the result bundle creation to create image
    output names matching the provided pattern.
    This Fixes #1943
* Tue Oct 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added missing python-simplejson to pkgbuild
    Added missing python-simplejson requirement to the
    archlinux pkgbuild package template
* Tue Oct 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Raise exception on umount issue
    Up to now kiwi tried to umount a resource it has mounted for some
    time and if it was not possible due to a busy state the process
    continued. In any of these situations it was not possible to free
    up the nested resources and it could also happen that the image
    build result got corrupted because there is still data that can
    be consumed but shouldn't be there anymore. The change here makes
    kiwi to stop the process and raise with an error also including
    the information that there are now resources still active but
    busy on the host and a manual cleanup is unfortunately needed.
    This Fixes #1914
* Mon Oct 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added SystemOverlayRoot profile
    Test kiwi's overlayroot mode without initrd
* Mon Oct 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update test for image without initrd and loader
    The systemd-remount-fs.service expects devices to be present
    in their UUID representation. When booting without an initrd
    there is no udev and the root= device must be provided with
    the kernel exposed unix device name. In addition there is no
    UUID device representation for virtio devices which are used
    together with the small kvmsmall kernel of this example.
    Since booting of this appliance is done via:
    $ kvm --kernel (kernel-kvmsmall) \
    - drive file=kiwi-test-image-embedded.raw,if=virtio \
    - append "root=/dev/vda1 console=ttyS0 rw"
    The kernel rootfs is mounted in rw mode anyway. Thus the systemd
    remount service is not useful in this case and switched off
* Fri Oct 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.24.0 → 9.24.1
* Thu Oct 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure embedded test exposes the kernel
* Thu Oct 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed use of LUKS encrypted images with empty pass
    For initial provisioning of LUKS encrypted disk images an
    empty passphrase key is handy to avoid interaction in the
    deployment process. However, the dracut kiwi modules were
    lacking the information that the luks keyfile could be an
    empty passphrase key which must not be opened with the
    potential risk to get prompted for input. This commit
    introduces a new profile environment variable evaluated
    by the dracut kiwi lib code to open the LUKS pool and
    allows to distinguish the situation on key files with
    or without a passphrase
* Thu Oct 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed type annotations for LuksDevice class
* Wed Oct 13 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed repo setup for test-image-embedded
    Use obsrepositories
* Wed Oct 13 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added a build test for no-initrd / no-bootloader
    It's allowed to configure an image building without an
    initrd and/or bootloader setup. These are settings mostly
    used in the embedded world and this build test makes sure
    images of that kind can be build
* Wed Oct 13 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for portable result data (#1949)
    In addition to the serialized Result instance kiwi.result
    file this commit also creates a portable version of this
    information in kiwi.result.json. Only the information that
    can be expressed as json document is part of the portable
    version. This is related to Issue #1918
* Thu Oct 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added documentation for kiwi stackbuild plugin
    Restructure the documentation to put all plugin documentation
    under its own category. Add a chapter about the stackbuild
    plugin, it's concepts and use cases. This Fixes #1907
* Thu Oct 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.63 → 9.24.0
* Thu Oct 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for toplevel include directive(s)
    On the toplevel of an image description you can now
    specify include directive(s) like in the following
    example
    <image ...>
    ...
    <include from="filename_a.xml"/>
    ...
    <include from="filename_b.xml"/>
    </image>
    At the place of their occurrence the include statement
    will be replaced with the contents of the given filename.
    The implementation is based on a XSLT stylesheet and
    applies very early in the process. The stylesheet reads
    the contents of the given file as XML document().
    Thus only valid XML documents gets accepted by this
    include concept. This Fixes #1929 and is related to
    Issue #1918
* Wed Oct 06 2021 Dan Čermák <dcermak@suse.com>
  - Switch to pytest_container instead of custom conftest
* Wed Oct 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.62 → 9.23.63
* Wed Oct 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed error reporting for stateful description
    Errors due to missing or no type definitions were reported
    provding the internal object reference of the XML parse
    result. This is useless information for users and needs
    to be done better. This commit fixes the error message to
    avoid showing object references and includes information
    about the applied profiles used for this XML state.
* Wed Oct 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed legacy PXE documentation
    The documentation for building a legacy pxe image was not
    using the profiles (Flat or Compressed) as the actual image
    description for this example requires it. This Fixes #1923
* Wed Oct 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added mdadm to requires for systemdeps
    When building raid based images the buildhost needs mdadm.
    In addition rework the place to require disk based tools.
    Most of them were added to the filesystem systemdeps but
    belong to the disk systemdeps
* Wed Oct 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed creation of loopback config
    If an extra boot partition is in use the creation of the config
    file for the loopback boot feature was using the wrong path.
    This commit fixes it and also introduces integration checks
    which builds in this condition
* Tue Oct 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed GRUB_CMDLINE_LINUX_DEFAULT setup regression
    The value for GRUB_CMDLINE_LINUX_DEFAULT should only be
    changed if custom kernelcmdline values are provided. In
    case there are none kiwi should not change this value.
    The test to check for this condition is based on the
    result cmdline reduced by the root setting. However the
    default cmdline setting in kiwi appends 'rw' in addition
    to the root device information. This means the default
    kernelcmdline is never empty and therefore the grub
    setting GRUB_CMDLINE_LINUX_DEFAULT="rw" is always set.
    This commit fixes the conditional change by making sure
    the default cmdline only consists out of the root
    device information. This Fixes #1650
* Tue Oct 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow logfile option to log on stdout
    The option setting '--logfile stdout' is now a special form
    and logs the messages usually written to a file to stdout
    instead. This is handy if all messages of the build are
    requested but the --debug switch is not because it does more
    than that, e.g calling scripts through debug'able screen
    sessions
* Tue Oct 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow test-image-luks to be build locally too
    In suse there are many programs replaced by the busybox
    alternative and also preferred by the package manager.
    However there are also packages like the kernel in suse
    which wants gawk and not busybox-gawk. In kiwi to build
    images there are two installation phases, the bootstrap
    phase which installs mandatory packages to allow chroot
    operations and the image phase which installs the rest
    of the requested packages as chroot operation. In this
    two pass step the package manager is called twice to
    resolve dependencies and that causes the issue with the
    preferred busybox packages which gets pulled in in the
    first phase. To prevent this there are only two options:
    1. Explicitly list the non busybox packages in the
    bootstrap phase
    2. Prevent the image phase and put all packages to
    the bootstrap phase such there is only one package
    manager call for dependency resolution
    This commit implementes option 1. because having all
    packages in the bootstrap phase means that the host
    packagemanager resolves and if the host packagemanager
    is somehow not compatible with the image target this
    leads to other weird issues which are not obvious and
    hard to debug.
* Thu Sep 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.61 → 9.23.62
* Thu Sep 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed script calls when running in obs
    kiwi is called with --debug in obs which triggers the scripts
    to be called through screen. However the obs caller is not
    associated with a terminal thus it fails. This commit creates
    an exception for debug mode when running in obs
* Thu Sep 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.60 → 9.23.61
* Thu Sep 23 2021 Luis González Fernández <luisgf@users.noreply.github.com>
  - Fix secure boot for ubuntu based images
    This patch fixes #1911 and makes secure boot images to work again in Ubuntu 20.04
    Co-authored-by: Luis Ladislao Gonzalez Fernandez <luislgf@inditex.com>
* Wed Sep 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Run scripts via a screen session in debug mode
    When creating a custom script it usually takes some iterations of
    try and testing until a final stable state is reached. To support
    developers with this task kiwi calls scripts associated with a
    screen session. The connection to screen is only done if kiwi
    is called with the --debug option.
* Tue Sep 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete obsolete release stage from gitlab
    Now done as github action
* Tue Sep 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.59 → 9.23.60
* Tue Sep 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed pypi tox release target
    Only needs the creation of the sdist tarball
* Tue Sep 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.58 → 9.23.59
* Tue Sep 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moved pages and pypi publish to github actions
    Moved gh-pages doc update and pypi upload from gitlab
    to github actions
* Tue Sep 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed RNC schema definition
    From the compact form of the schema the RNG schema
    is created. The latest changes to support the target_dir
    attribute in the <archive> section were added wrong
    to the compact form of the schema
* Fri Sep 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed Tumbleweed integration tests
    Due to changes in the distribution the tests needs some
    adaptions. The kernel as provided now by TW uses symlinks
    from boot to /usr/lib/modules/... to point to the kernel
    binary. Of course this breaks for any system that uses
    /boot on another partition. Those image tests which were
    testing this aspect needs fixing.
* Wed Sep 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.57 → 9.23.58
* Wed Sep 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed MANIFEST
    Make sure all test data is included into the source tarball not only
    a recursive inclusion of a portion of it. This is needed to run
    tests at build time from the pypi provided source tarball
* Wed Sep 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.56 → 9.23.57
* Tue Sep 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed python manifest
    Deleted no longer existing doc source from manifest and
    add the full set of documentation sources
* Fri Sep 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.55 → 9.23.56
* Fri Sep 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Only wipe bundle dir when required
    The given result bundle dir must only be wiped if the
    request to turn the result files into an rpm was given.
    Only in this case the given bundle dir must start empty
* Fri Sep 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed uninstall handling via dnf, microdnf, zypper
    The above package managers supports uninstall instructions
    like 'iwl*'. In kiwi there was code checking via rpm if
    the packages given to uninstall actually exists. That code
    does not work if the given package to uninstall is an
    instruction that matches a pattern. Therefore if we use
    the uninstall section in the kiwi image description, just
    pass the provided information to the package manager and
    don't try to be clever in kiwi itself.
* Thu Sep 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to set --logfile for result namespace
    Setting a logfile for e.g 'kiwi-ng result bundle ...'
    is useful and should be possible
* Thu Sep 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.54 → 9.23.55
* Wed Sep 08 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for building rpm package from bundle
    With the new option --package-as-rpm it is possible to
    call the kiwi result bundler such that the image build
    results gets packaged into an rpm. I think this is a
    handy feature to transport image builds via repositories
* Wed Sep 08 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed MicroOS integration test
    With ignition/combustion in place it's not allowed
    to use tmp as a subvolume
* Tue Sep 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.53 → 9.23.54
* Mon Sep 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed condition for GRUB_DISABLE_LINUX_UUID="true"
    The grub config parameter GRUB_DISABLE_LINUX_UUID must only
    be set if the device persistence setting is not UUID. However,
    in kiwi UUID device names are the default and doesn't have to
    be expressed explicitly. Therefore the condition to check
    for different than 'by-uuid' is wrong for the default case were
    no device persistence setting exists. This results in a wrong
    grub option to be set. This commit fixes it in a way to disable
    UUID device names in grub if the only other device persistency
    setting in kiwi named: 'by-label' is explicitly configured.
    This Fixes #1842
* Mon Sep 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added force_trailing_slash argument to sync_data
    A speciality of the rsync tool is that it behaves differently
    if the given source_dir ends with a '/' or not. If it ends
    with a slash the data structure below will be synced to the
    target_dir. If it does not end with a slash the source_dir
    and its contents are synced to the target_dir. For example:
    source
    └── some_data
    1. $ rsync -a source target
    target
    └── source
    └── some_data
    2. $ rsync -a source/ target
    target
    └── some_data
    The parameter force_trailing_slash in the DataSync::sync_data
    method can be used to make sure rsync behaves like shown in
    the second case. This Fixes #1786
* Mon Sep 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added type hints for DataSync class
* Fri Sep 03 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.52 → 9.23.53
* Thu Sep 02 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add missing bootloader tests
    Merging #1850 exposed the missing bootloader tests.
    This reminds me to move the gitlab driven unit tests
    to github actions because for forked repos the gitlab
    tests does not run but github actions tests would run
* Tue Aug 31 2021 Robert Schneider <48757730+data-intelligence-robot@users.noreply.github.com>
  - Fix logging of ISO publisher
* Tue Aug 31 2021 Mexit <mexit@o2.pl>
  - Improving text formatting
* Tue Aug 31 2021 Mexit <mexit@o2.pl>
  - Added documentation for grub2 loopback ISO images
* Fri Aug 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.51 → 9.23.52
* Fri Aug 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed pep E711 code smell
    comparison to None should be 'if cond is not None:'
* Fri Aug 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.50 → 9.23.51
* Fri Aug 27 2021 Robert Schweikert <rjschwei@suse.com>
  - No compression with encryption
    When an image is setup to use encryption the resulting image appears
    as a random stream of bytes and cannot be compressed. Simply skip
    the compression in this case.
* Thu Aug 26 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix typo in schema documentation
    ciper -> cipher. Fix originally done by Robert Schweikert
    and moved to the right place, see Issue #1906 for details
* Thu Aug 12 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Allow target dir for archive
    - Add the option to specify a target directory
    to unpack the archive
    - Update doc for target dir attribute
    This Fixes #1794
* Tue Aug 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Log deprecation errors to stderr
    Make sure information about deprecated shell methods
    logs their information to stderr. This will cause the
    error message to be exposed to the user and not only
    in the log file
* Tue Aug 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed TW build test
    Explicitly added packages that causes conflicts due
    to the busybox alternatives
* Tue Aug 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.49 → 9.23.50
* Thu Aug 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for repo customization script
    repo files allows for several customization options
    which could not be set by kiwi through the current
    repository schema. As the options used do not follow
    any standard and are not compatible between package
    managers and distributions the only generic way to
    handle this is through a script which is invoked
    with the repo file as parameter for each file created
    to describe a repo for the selected package manager.
    This allows users to update/change the repo file content
    on their individual needs. In the kiwi description the
    path to the custom script can be specified as follows
    <repository ... customize="/path/to/custom_script">
    <source path="..."/>
    </repository>
    This Fixes #1896
* Fri Jul 30 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.48 → 9.23.49
* Thu Jul 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed fstab entry for swap on LVM
    If an LVM setup is used together with a swapspace the
    swap is created as a volume in the volume group. The
    required fstab entry to activate swap was not using
    the LVM exposed device but the UUID of the low level
    block layer. This low level device is not created
    by udev because LVM takes over precedence in this
    case.
* Sat Jul 24 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.47 → 9.23.48
* Sat Jul 24 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed LVM get_volumes
    Due to the change on the temporary directory yet another
    error in the volume manager classes for LVM got exposed.
* Sat Jul 24 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.46 → 9.23.47
* Sat Jul 24 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed LVM/btrfs volume based image builds
    Due to the change on the temporary directory an error
    in the volume manager classes for LVM and btrfs was
    exposed. There was code which uses a sub-part of the
    volume mount point directory which is a tempdir based
    directory name. The sub-part was choosen by an index
    based path split which worked for /tmp but no longer for
    /var/tmp. With tempdir now being also a commandline
    option this code has to become more robust.
* Fri Jul 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.45 → 9.23.46
* Thu Jul 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Do not expose the delete feature in Temporary
    We do not want to expose the ability to create temporary
    data that doesn't get auto deleted at the end of its
    scope
* Thu Jul 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor recovery archive creation
    The creation of the recovery archive was based on a tempfile
    which then gets moved to the final target file. This is bad
    because if causes the tempfile cleanup to raise an exception
    unless you specify delete=False. Creating a tempfile with
    delete=False however, negates the reason for creating self
    managed temporary data. Thus this code was refactored to
    create the recovery archive file at its final destination
    from the beginning on
* Wed Jul 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moving temp data handling to its own namespace
    Moving use of mkdtemp, NamedTemporaryFile and TemporaryDirectory
    into its own class called Temporary: By default all temporary
    data is created below /var/tmp but can be changed via the
    global commandline option --temp-dir. This Fixes #1870
* Wed Jul 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.44 → 9.23.45
* Tue Jul 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Handle UnicodeDecode errors more gracefully
    If the Codec.decode() method cannot encode the given data to utf-8
    an Encoding exception is raised which causes kiwi to raise a
    KiwiDecodingError. That way to handle the error causes an image
    build to fail. However, this sort of error for example happens if
    the .changes file of a package contains invalid characters. From
    a user perspective this cannot be fixed and you cannot build the
    image because of a stupid character error in a .changes file
    outside your control. Because of this reason this commit handles
    the decode error case differently and applies the 'replace'
    strategy on error. The characters in questions gets replaced and
    the rest of the data which can be decoded is returned.
* Mon Jul 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Install mypy library stubs for mock
* Wed Jul 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added documentation for oem-skip-verify element
* Wed Jul 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Increase size of efi fat image
    For ISO images an embedded efi fat image is needed to boot.
    As consequence of adding the mok manager it can happen that
    the size of the efi fat image is too small. With this commit
    the size is increased to prevent an out of space issue
* Wed Jul 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.43 → 9.23.44
* Wed Jul 07 2021 Dan Čermák <dcermak@suse.com>
  - Add tests for baseVagrantSetup
* Wed Jul 07 2021 Dan Čermák <dcermak@suse.com>
  - Set the directory permissions of /home/vagrant/.ssh to 0700 in baseVagrantSetup
* Wed Jul 07 2021 Dan Čermák <dcermak@suse.com>
  - Don't modify main sshd_config file via baseVagrantSetup
    In Tumbleweed we switched from shipping sshd's config file in /etc to /usr/etc,
    but baseVagrantSetup was not respecting that.
    So instead of modifying the main config file, we instead create a custom file in
    /etc/ssh/sshd_config.d/ with our custom setting which is much more robust
    accross distributions. However, if /etc/ssh/sshd_config.d/ does not exist, then
    we fall back to adding our settings to /etc/ssh/sshd_config.
* Tue Jul 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed LUKS keyfile permission bits
    LUKS keyfile should use 0600 file permission flags
* Tue Jul 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed secure boot fallback setup
    Make sure MokManager gets copied. The name and location of
    the mok manager is distribution specific in the same way as
    the shim loader. Thus we need to apply a similar concept
    for looking it up. This Fixes bsc#1187515
* Tue Jul 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Improve live image integration test
    Build one live image for Standard EFI+BIOS boot and
    another variant that support SecureBoot+BIOS boot
* Mon Jul 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed grub cmdline setup with custom root
    If the kiwi kernelcmdline attribute contains root=... information
    it is extracted from being written to GRUB_CMDLINE_LINUX_DEFAULT.
    However, the regexp to extract the root=... information was broken
    and deleted more elements of the cmdline information than just
    the root device information. This commit fixes the regexp to only
    delete the root=... information taking into account that every
    kernel parameter is delimited by '\s'
    This Fixes #1875
* Mon Jul 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.42 → 9.23.43
* Mon Jul 05 2021 Dan Čermák <dcermak@suse.com>
  - Re-add suseImportBuildKey
    suseImportBuildKey is not required during the image build as kiwi imports the
    correct keys by itself. However, the created images lack the repository signing
    keys and any `zypper` commands will thus fail.
    This fixes https://github.com/OSInside/kiwi/issues/1876
* Fri Jul 02 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.41 → 9.23.42
* Thu Jul 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed fedora integration test builds
    Maintain the repos in the obs prj config which prevents
    the weird "nothing provides kernel-obs-build" error
* Wed Jun 30 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.40 → 9.23.41
* Wed Jun 30 2021 Dan Čermák <dcermak@suse.com>
  - Remove util-linux-systemd & util-linux Requires from dracut-kiwi-overlay
    These dependencies are pulled in via dracut-kiwi-lib.
* Wed Jun 30 2021 Dan Čermák <dcermak@suse.com>
  - Add missing util-linux-systemd Requires to dracut-kiwi-[live,libs]
* Wed Jun 30 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-orthos integration test
    The test was missing btrfs_root_is_snapshot which is required
    when using btrfs on tumbleweed.
* Tue Jun 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-disk-legacy integration test
    The test did not set a device filter for ramdisk devices but
    activates unattended mode. In this mode the first device in
    the list is taken and this is a ramdisk device which is
    by default too small to be used for the installation. Thus
    the install usually fails. This commit sets the device filter
    for ramdisk devices such that only associated disk devices
    can be used for the install process, which is the purpose
    of this test. This is related to Issue OSInside/kiwi-functional-tests#8
* Tue Jun 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.39 → 9.23.40
* Tue Jun 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Mount dev and proc filesystems prior dracut
    In newer versions of dracut /dev and /proc must be mounted
    for dracut to work correctly. If not present the resulting
    initrd is incomplete. This Fixes #1867
* Mon Jun 28 2021 Neal Gompa <ngompa@datto.com>
  - Use namespaced files in /var/tmp for large temporary files
    Previously, kiwi created staging image files as plain temporary files
    in /tmp, which causes issues on operating systems where /tmp is tmpfs.
    Notably, image builds would fail with "no space left on the device"
    because the tmpfs was not big enough for everything to exist there.
    To fix this, we change to use /var/tmp, and additionally add a prefix
    for our temporary files so that the user knows which ones kiwi created.
    Fixes: https://github.com/OSInside/kiwi/issues/1866
* Fri Jun 25 2021 Tom Schraitle <tom_schr@web.de>
  - Use latest stylesheet in STYLEROOT
    Use "suse2021-ns" instead of "suse2013-ns" due to new
    branding.
* Wed Jun 23 2021 Dan Čermák <dcermak@suse.com>
  - Add missing util-linux-systemd dependency to dracut-kiwi-overlay
    The script kiwi-overlay-root.sh requires lsblk which is provided by
    util-linux-systemd. If that package is missing in the final image, then booting
    an overlayroot image hangs with:
    dracut-pre-mount[480]: //lib/dracut/hooks/pre-mount/30-kiwi-overlay-root.sh: line 46: lsblk: command not found
* Tue Jun 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Start moving CI test from gitlab to actions
    Moving the linter and unit tests to github workflows and
    out of the gitlab CI system has the advantage that pull
    request from forked repos will run the tests. In the long
    run I think we should move away completely from gitlab CI
    and use github actions as this will reduce the number of
    external services used in the kiwi project. This commit
    starts with the most simple parts: unit and type tests,
    doc rendering and code style
* Mon Jun 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure chat link points to Element not Riot
    Riot has changed to Element. The index page on kiwi still
    uses the old location. This updates the information how to
    use the Matrix channel and the kiwi room name.
    This Fixes #1854
* Mon Jun 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.38 → 9.23.39
* Mon Jun 21 2021 Dan Čermák <45594031+dcermak@users.noreply.github.com>
  - Functions integration tests (#1851)
    Add integration tests for functions.sh
    Implement a container based test system to run shell code for testing.
    The concept utilizes pytest-testinfra and runs a container per test.
    The nested container in a container feature is supported by the github
    actions workflow. Thus the integration of this testing concept runs in
    the github actions CI rather than on gitlab
* Mon Jun 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Don't shell out for calling dnf
    refactor the dnf call to install packages and groups in
    one call. This allows to prevent calling dnf through a
    shell. For installing of a package group the group ID
    name is expected. This Fixes #1856
* Mon Jun 21 2021 Robert Schweikert <rjschwei@suse.com>
  - - Improve the error message if the config file cannot be parsed.
* Mon Jun 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Do not shell out for calling microdnf.
    In fact it can be counter productive if the shell
    evaluates eventually existing package name/instruction
    patterns. This is related to Issue #1856
* Mon Jun 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Prevent calling pacman through a shell
    There is no reason to shell out for calling pacman.
    In fact it can be counter productive if the shell
    evaluates eventually existing package name/instruction
    patterns. This is related to Issue #1856
* Sat Jun 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure mypy stubs will be installed
* Thu Jun 17 2021 Mexit <mexit@o2.pl>
  - Update grub2.py
* Thu Jun 17 2021 Mexit <mexit@o2.pl>
  - Code improvement
* Thu Jun 17 2021 Mexit <mexit@o2.pl>
  - Code improvement
* Wed Jun 16 2021 Mexit <mexit@o2.pl>
  - Allow the ISO to be booted from grub directly
* Wed Jun 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow creation of LUKS system with empty key
    To support cloud platforms better we should allow the
    creation of an initial(insecure) LUKS encrypted image
    with an empty passphrase/keyfile. This Fixes
    bsc#1187461 and bsc#1187460
* Fri Jun 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.37 → 9.23.38
* Thu Jun 10 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed cleanup of temporary directory
    In the custom kiwi initrd build process a temporary directory
    holding a copy of the initrd root tree is created. That data
    got never cleaned up. This commit uses a TemporaryDirectory
    object from the tempfile module to make sure it gets deleted
    once the execution scope is done. This Fixes #1837
* Mon Jun 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.36 → 9.23.37
* Mon Jun 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete deprecated shell functions from docs
    suseActivateDefaultServices
    suseSetupProductInformation
    suseImportBuildKey
    suseConfig
    baseCleanMount
    baseSetupUserPermissions
    baseGetPackagesForDeletion
    baseGetProfilesUsed
    baseStripMans
    baseStripDocs
    baseStripInfos
    Rpm
* Sun Jun 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed creating grub bios module
    If no prebuilt grub bios module was found, kiwi creates one.
    In this case kiwi searches for the grub modules and runs
    the grub mkimage tool. The search for the modules for the
    bios module used the host system (/) grub and that fails if
    the host has packaged grub differently than the image target.
    This fix moves the lookup into the image root directory
    which is the correct place to lookup the grub data
* Sat Jun 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.35 → 9.23.36
* Sat Jun 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed building with custom kiwi initrd setup
    The change from allowing to build with initrd_system="none"
    broke the build for initrd_system="kiwi". This commit fixes
    the regression
* Sat Jun 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use zypper --gpg-auto-import-keys option
    When building an image against self managed repos the
    auto import of the repo gpg key makes sense to me
* Sat Jun 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup integration tests from obsolete methods
    Cleanup config.sh scripts calling obsolete helper methods
* Sat Jun 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup integration tests from obsolete methods
    Cleanup config.sh scripts calling obsolete helper methods
* Sat Jun 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.34 → 9.23.35
* Fri Jun 04 2021 gnuninu <dimarnicola@gmail.com>
  - Corrected preferences timezone code tag
* Tue Jun 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor config functions code
    Reorganize the code into more readable areas like methods
    present as helpers, methods for customers, methods which are
    distribution specific and also methods that are deprecated
    and give a good reason why they are deprecated when they
    get called. This is related to Issue #1828
* Tue Jun 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Switch test-image-live-disk to Fedora 33"
    This reverts commit f80549474c4baa120e6e228bacc7b4a075265753.
* Tue Jun 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Switch test-image-live-disk to Fedora 33
* Fri May 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed codacy code smells
* Fri May 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add strong typing for the following API methods
    kiwi/boot/image/base.py
    kiwi/boot/image/builtin_kiwi.py
    kiwi/boot/image/dracut.py
    This references issue #1644
* Thu May 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for skipping initrd creation
    Embedded systems and other customer use cases sometimes
    doesn't require an initrd. So far the initrd creation was
    a mandatory step in the process. With this commit it's
    possible to configure <type ... initrd_system="none"/>
    and therefore skip the creation and setup of an initrd.
    Using this feature comes with a price. Without an initrd
    the task of mounting the specified root=DEVICE_SPEC now
    becomes a task of the kernel. If the kernel doesn't have
    the required filesystem driver compiled in or the mount
    process of the device is not just a simple mount
    action, the boot of such an appliance will fail
* Thu May 27 2021 Dan Čermák <dcermak@suse.com>
  - Remove grep and find from suseSetupProduct
* Thu May 27 2021 Joachim Gleissner <jgleissner@suse.com>
  - config/functions.sh: Avoid non-zero exit status
    In baseStripDocs and baseStripFirmware avoid non-zero exit status of grep.
    This allows the functions to be used in a script that sets the exit-on-error
    flag.
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.33 → 9.23.34
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure we use sphinx >= 4.0.2
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Revert "Fix installation of man pages""
    This reverts commit db7410f3c5b7b101ec0974cc24de0400c491f065.
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Make sure man pages are part of the sdist tarball"
    This reverts commit 3bf80506c4bbe381b66febdd38df93e65103ffb6.
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.32 → 9.23.33
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure man pages are part of the sdist tarball
    Due to the move of man pages in sphinx the MANIFEST.in
    has to be updated to provide the man pages in the
    sdist tarball
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Revert "Fix installation of man pages"
    This reverts commit 286b26b5b6598285bf6eb26a1f5c9200c925b529.
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed missing shebang in config.sh
    The ubuntu integration test config.sh script was missing
    the shebang to let the script code run through bash
* Fri May 21 2021 Neal Gompa <ngompa13@gmail.com>
  - Fix installation of man pages
    The generated source archive on PyPI has the man page files
    in ./doc/build/man instead of ./doc/build/man/8.
    Adjust the Makefile to use the correct path to install the
    man pages.
* Fri May 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.31 → 9.23.32
* Thu May 20 2021 David Cassany <dcassany@suse.com>
  - Do not return default stdout if it is no raising on failure
    This commit prevents the use of a default stdout and stderr in case
    return code reports errors and it is not raising an exception.
    If we are not raising an exception there is no specific need to
    artificially append some stdout and stderr default message, we just
    behave as if there was no error.
* Thu May 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Ubuntu integration test for system settings
    In Debian based distributions the kiwi built in way
    to setup locale, keyboard and timezone via systemd tools
    does not work because not(yet) provided by the distribution.
    This commit adds a reference implementation in the Ubuntu
    integration test to demonstrate how the settings given in
    the kiwi image description needs to be handled to make
    them effective in the later image. This Fixes #1787
* Thu May 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add log information on grub search
    There is a method in kiwi which searches for grub files.
    As grub is packaged differently within the distributions
    a dynamic lookup is needed. However, the result and where
    kiwi looked it up was not part of the log file. In terms
    of issues like the one from Issue #1754 it would be very
    handy to know about this information. Thus this commit
    adds debug information to the log file regarding what
    grub files are searched and where and if found
* Thu May 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed coday complains
* Thu May 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make dracut version check more robust
    The check_dracut_module_versions_compatible_to_kiwi() runtime
    check calls the package manager from the host and reads the
    package database from the image root. Doing this requires
    the package database in the image to be compatible with the
    package manager on the host. However this cannot be guarenteed
    and it is more robust to chroot into the image root and call
    the package manager from there. However, this change also comes
    with the cost that it's required to have a package manager
    available in the image root tree. Therefore along with the
    chroot based call, eventual exceptions from the call are now
    catched and leads to a debug message in the log file but will
    not lead the runtime check to fail. I consider the cases
    without a package database inside of the image to be less
    critical than the incompatibility issue between the host
    tooling and the package database in the image.
    This Fixes bsc#1185937
* Tue May 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.30 → 9.23.31
* Tue May 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Stop plymouth also for progress dialogs
* Mon May 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Prevent explicit man page compression
    The manual pages are compressed by the packager tooling.
    There is no need to do this ourselves
* Mon May 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.29 → 9.23.30
* Mon May 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Increase integration tests boot timeout
    Increase integration tests timeout from 2sec to 10sec
* Mon May 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update integration tests to be non interactive
    Some integration tests allows for interactive dialogs on the
    bootloader menu or in the installation process. As we plan to
    use these tests for automated functional testing there should
    be no interaction whenever possible. This Fixes #1811
* Mon May 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update kiwi installation documentation
    The installation chapter contained information about the manual
    install of package keys. That information is suspect to be always
    outdated because these keys changes. Instead of describing the
    manual install of the package key the docs moved to use the
    auto-import feature of the package manager. As the instructions
    were also rpm specific but we also support install via other
    package mangers the complete chapter was a bit reworked and
    should be more straight forward now. This Fixes #1799
* Mon May 17 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation qemu calls
    We use the kiwi integration tests as base for the documentation
    example images now. The integration tests are all configured
    to set the console to serial. Thus the docs should explain
    the qemu call for test runs using the -serial stdio option
    to make sure the console information is displayed to the
    user
* Sun May 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update and fix documentation
    The documentation had a broken link to the buildservice
    tests for suse. Since we changed this into leap and tumbleweed
    the subproject link to :suse became invalid. In addition to
    the fix the macro setup and build instructions were moved
    to use the kiwi integration tests as example appliance
    descriptions. The user experience in building the integration
    test images should be better because we only release kiwi
    if those appliances build successfully. This Fixes #1812
* Sun May 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed package build
    The new version of sphinx puts manual pages into doc/build/man/8
    when it was doc/build/man before. This breaks the Makefile target
    to install the documentation. This commit updates the Makefile
    to follow the change.
* Wed May 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix dnf arch setting
* Wed May 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update shim path lookup
    Distributions like Fedora has changed the EFI binaries location
    to be shim<efiarch>.efi in /boot/efi/EFI/<vendor> in order to
    support multiarch setup for UEFI. This change requires the
    lookup in KIWI to be more global matching. This Fixes #1806
* Wed May 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move integration test for Fedora to v34
* Wed May 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed live network setup to be generic
    In dracut the network setup comes with different models
    providing a different set of functions. The ifup method as
    used in the live iso dracut module is only available with the
    network-legacy mode and fails with network-wicked. This commit
    uses a dracut conf file in /etc/cmdline.d which uses the dracut
    network interface parameters instead of calling module specific
    methods. This Fixes #1802
* Wed May 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed setup of repository architecture
    Unfortunately the architecture reported by uname is not
    necessarily the same name as used in the repository metadata.
    Therefore it was not a good idea to set the architecture
    and manage the name via a mapping table. It also has turned
    out that repo arch names are distro specific which causes
    more complexity on an eventual mapping table. In the end
    this commit changes the way how the repository architecture
    is setup in a way that we only set the architecture if
    a name was explicitly specified such that the user keeps
    full control over it without any mapping magic included
    This Fixes bsc#1185287
* Fri May 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.28 → 9.23.29
* Mon May 03 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.27 → 9.23.28
* Fri Apr 30 2021 David Cassany <dcassany@suse.com>
  - Upgrade tests accoring to #1805
    This commit is a follow up of #1805 which missed to update the related
    unit test.
* Fri Apr 30 2021 David Cassany <dcassany@suse.com>
  - Make installation media unattended
    This commit configures install media of several tests to run unattended
    installation. This is done to facilitate the logic of functional tests.
* Wed Apr 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed unit tests for parallel invocation
    With the change to allow the platform architecture to be
    set application global, the unit tests might fail if tests
    run in parallel and using different mock architectures
    for the test. Thus test that runs depending on a platform
    name needs to set the name in the test
* Wed Apr 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Debian integration test for UEFI testing
    Updated the Virtual disk profile to make use of the EFI
    secure boot feature.
* Tue Apr 27 2021 Jeff Kowalczyk <jkowalczyk@suse.com>
  - Fix WSL appx filemap relative paths not preserved
    During WSL appx image type creation step the file hierarchy under metadata_path
    is written to a temporary file for eventual use as argument to utility appx.
    The file hierarchy information is dropped resulting in all filemap entries
    appearing to be at the metadata_path root. The resulting image will side load
    and run but without icon and other resources. Stricter checks at Windows Store
    submission will fail due to mismatch between image manifest and contents.
    Fix by preserving relative path of filemap entries relative to metadata_path.
    Add log output showing both input absolute path and output relative path.
* Tue Apr 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Ubuntu integration test for UEFI testing
    Updated the Virtual disk profile to make use of the EFI
    secure boot feature.
* Tue Apr 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for UEFI on Debian based distros
    The Debian/Ubuntu folks have a different system to support
    EFI secure boot. In order to make use of it kiwi needs some
    adaptions done in this pull request. This Fixes #1743
* Tue Apr 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.26 → 9.23.27
* Mon Apr 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec file on Debian tool settings
    debootstrap should always come with dpkg because we don't
    want to handle the architecture names used on Debian when
    dpkg knows them better than we do. since debootstrap itself
    considers the possibility of being called without dpkg on
    the system we generate the dependency by a spec change
    here. This Fixes #1778
* Mon Apr 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Change zypper download mode to in-advance
    In relation to upcoming zypper changes e.g to make use of librpm on
    single transaction operations there is the possibility that file
    triggers start being used. To ensure zypper behaves consistently
    DownloadInAdvance mode should be used, this way the transaction
    happens as a whole and with the upcoming zypper changes zypper
    will still be capable to handle the file triggers.
    This Fixes #1789
* Sun Apr 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added shadow package to pxe integration test
    Tools like usermod were moved from coreutils to shadow
* Sun Apr 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added shadow package to integration test
    Tools like usermod were moved from coreutils to shadow
* Fri Apr 16 2021 David Cassany <dcassany@suse.com>
  - Fix appx manifest for WSL containers
    This commit prevents KIWI from setting Identity Name attribute and
    DisplayName and PublisherDisplayName elements.
    Fixes #1780
* Fri Apr 16 2021 David Cassany <dcassany@suse.com>
  - Do not apply default subcommand for derivate containers
    This commit does not apply the default subcommand for derivate
    containers.
    Fixes bsc#1184823
* Fri Apr 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed integration tests requesting grub
    For some reason two integration tests requests the "grub" and
    the "grub2" package. On TW there is now no longer a provider of
    grub and thus the image build became unresolvable. There is
    only grub2 for quite some time, so I deleted this package
    setting from the tests in question
* Fri Apr 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.25 → 9.23.26
* Thu Apr 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed platform setup for vagrant unit tests
* Thu Apr 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for a custom exclude file
    The new optional metadata file image/exclude_files.yaml can
    be placed inside of the local image root tree. At creation time of
    the image binary the file contents are used to extend the default
    exclude list with additional information. The structure of the
    file must be as follows:
    ```yaml
    exclude:
    - exclude-name-used-in-rsync
    ```
* Wed Apr 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.24 → 9.23.25
* Wed Apr 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update zypp.conf architecture setting
    Make sure the architecture is set as parameter in the
    zypp.conf file used for building the image. This is needed
    to allow differentiation between host arch and image arch
    for cross image build environments
* Wed Apr 14 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added option to set the image target architecture
    The option --target-arch allows to set the architecture
    used to build the image. By default this is the host
    architecture. Please note, if the specified architecture
    name does not match the host architecture and is therefore
    requesting a cross architecture image build, it's important
    to understand that for this process to work a preparatory
    step to support the image architecture and binary format
    on the building host is required and is not considered a
    responsibility of kiwi. There will be a followup effort
    on providing a plugin for kiwi which should be used to
    manage the needed binfmt settings for cross arch image
    builds
* Tue Apr 13 2021 David Cassany <dcassany@suse.com>
  - Refactor disk and install builders and dracut boot image
    This commit mainly refactors the DiskBuilder class. Then install builder
    and dracut boot image refactors are mostly to drop no longer needed
    code. The refactors tries to make the build simpler and easier to read and
    also prevent the reuse of the BootImage instance used for the main image
    when creating the installation media (this aplies only for
    dracut based images).
    Fixes #873
* Tue Apr 13 2021 David Cassany <dcassany@suse.com>
  - Refactor create_disk method
    This commit refactor create_disk method and related utility methods
    to ensure runtime objects are not stored as attributes of the object.
    This is done to ensure proper clearing and destruction of those objects
    once create_disk method is done.
    Related to #873
* Mon Apr 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added openssl to the core requires
    openssl is used in kiwi to construct a password hash
    if the plaintext password feature for user settings
    is used. This Fixes bsc#1184128
* Sun Apr 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.23 → 9.23.24
* Fri Apr 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Decommission obsolete code reaching EOL
    Use the @decommissioned decorator to raise for API methods
    that a over the obsoletion period
* Fri Apr 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added mypy call to tox target
    For the tox unit_pyX targets, mypy static type checking
    is now called prior tests. This references Issue 1644
* Tue Apr 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Complete strong typing for API methods
    Added required code changes to let mypy pass when running
    from the toplevel kiwi namespace. This now finally
    Fixes #1644
* Mon Apr 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.22 → 9.23.23
* Wed Mar 31 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added optional post_bootstrap.sh script hook
    After the bootstrap phase a script post_bootstrap.sh is executed
    in a chroot process which allows to add/modify system settings
    prior the completion of the system installation. This helps
    users for example with custom package manager settings and
    Fixes #1763 as well as Fixes #1782
* Tue Mar 30 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    Add information about new volume filesystem_check attribute
* Tue Mar 30 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to enable volumes for filesystem check
    The new attribute <volume ... filesystem_check="true|false"/>
    allows to change the default value for the fs_passno field in
    the generated fstab file. By default kiwi sets "0" in this
    field and leaves it up to the user to customize this as
    appropriate via script code. Coding changes to the fstab file
    via scripts are not very user friendly and with respect that
    systemd takes over control and generates checkers depending on
    the value of fs_passno it would be good if there is a way to
    explicitly specify if checks to the filesystem are wanted or
    not. Therefore the new attribute now exists. If set to: true
    this results in a value of "2" for the fs_passno field. Please
    note the root/boot and efi entries are excluded from this
    setup. This Fixes #1728
* Mon Mar 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.21 → 9.23.22
* Mon Mar 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor building of root cmdline setting
    Creating the root= cmdline parameter was based on methods
    that deals with the uuid. However, it's also possible to
    use a label information for the root= cmdline. To support
    this kiwi issued a 'blkid --uuid' command but that requires
    udev device names to be present on the host. The open
    buildservice workers do not run udev and fails apart the
    standard. This commit refactors the root cmdline setup
    to work with the device node as it exists during build
    time such that the blkid call runs against that device
    node.
* Mon Mar 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.20 → 9.23.21
* Fri Mar 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete yum from packagemanager in schema
    Auto convert yum to dnf if set as packagemanager. This allows
    to delete the yum handling from code parts in kiwi where this
    was still present. In addition this fixes the inclusion of yum
    into the packagelist. This Fixes #1768
* Tue Mar 16 2021 KeithMnemonic <kberger@suse.com>
  - Add Strong Typing to builder APIs
* Tue Mar 16 2021 KeithMnemonic <kberger@suse.com>
  - This PR add APIs Strong Typing to the repository APIs
    Strong Typing has been added to the following files:
    repository/base.py
    repository/pacman.py
    repository/apt.py
    repository/dnf.py
    repository/template/apt.py
    repository/zypper.py
* Tue Mar 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Drop by-path devicepersistency setting
    The dev/disk/by-path device representation is a host specific
    PCI location. For image building which happens disconnected from
    the later target device this setting is useless.
    This Fixes #1747
* Tue Mar 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed LVM root volume inclusion in fstab
    The root(/) volume in a LVM setup was included as UUID device
    path. This is inconsistent compared to the non root volumes
    which are included by their LVM representation:
    /dev/VGROUP_NAME/VOLUME_NAME
    This commit makes sure the root volume is included by its
    persistent LVM device representation too. This is related
    to Issue #1747
* Mon Mar 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update unit- integration tests to schema v74
* Mon Mar 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added XSLT transformation schema v73 -> v74
    Update schema version and change to package manager 'apt'
    if 'apt-get' was set
* Mon Mar 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Change packagemanager setting from apt-get to apt
    In kiwi we use the name of the section as package name to install this
    package manager capability. However on Debian based distros there is
    no package named apt-get. There is only a package named apt which
    provides a tool named apt-get. To avoid inconsistencies like we had it
    in Issue #1735 and to bring this setting in line with all other
    packagemanager settings the setting was moved to just apt.
    This Fixes #1738
* Thu Mar 11 2021 KeithMnemonic <kberger@suse.com>
  - Public API Strong Typing for kiwi package_manager
* Thu Mar 11 2021 David Cassany <dcassany@suse.com>
  - Require qemu-img in any filesystem based image
    This commit moves the qemu-img requirement into the
    `kiwi-systemdeps-filesystems` to ensure ISO, OEM and PXE images include
    it in the build service. Also this is required for images that are
    simple root-trees in a filesystem (image=ext4).
* Thu Mar 11 2021 David Cassany <dcassany@suse.com>
  - Add a requirement for kiwi-systemdeps-iso-media on disk images
    This commit adds a requirement for `kiwi-systemdeps-iso-media` in
    `kiwi-systemdeps-disk-images`. This is to ensure that installing
    `kiwi-systemdeps-disk-images` is enough to build OEM images including
    install media.
* Tue Mar 09 2021 David Cassany <dcassany@suse.com>
  - Exclude /run and /tmp to be synched into the image
    This commit makes sure the contents of /run and /tmp are ignored when
    synchronizing the generated root tree into the image.
    Fixes #1744
* Tue Mar 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix use of by-label device persistency in grub
    If devicepersistency="by-label" is set in the KIWI description
    it will correctly operate on the fstab values but still uses
    the UUID based setting for root= in the grub config. This commit
    allows to set root=LABEL=... in the grub config in case the
    devicepersistency requested it. In order for this to work this
    commit also had to increase the scope of the grub helper
    method _fix_grub_root_device_reference which is now called in
    any case. This Fixes #1757
* Mon Mar 08 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.19 → 9.23.20
* Sat Mar 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed API vs. CLI inconsistency
    when using kiwi as API the program fails with a usage message
    from the Cli class. The kiwi.cli module should not be imported
    except for kiwi comandline tasks. It has turned out that the
    RuntimeConfig class which is used in several places in different
    API classes imports Cli and creates an instance of it to check
    for a global option. This causes major issues for all programs
    which uses the kiwi API but not the command line interface because
    the docopt call in Cli() expects a valid docstring which only
    exists in kiwi's cli.py. This commit fixes the inconsistency
    and allows people to use the kiwi API independent of any
    command line interface. Fixes #1755
* Fri Mar 05 2021 David Cassany <dcassany@suse.com>
  - Add Rawhide and Tumbleweed tests for secure boot on aarch64
* Fri Mar 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure man pages are part of sdist tarball
    The current tarball when uploaded to pypi via gitlab does
    not contain the manual pages because the doc target to build
    them is not called. This commit adds a doc_man tox target
    which is called prior pypi release. This Fixes #1746
* Wed Mar 03 2021 David Cassany <dcassany@suse.com>
  - Refactor grub2 installation
    This commit refactors grub2 installation method to split it in two
    parts. Former grub2.install method was meant to run the grub2-install
    tool, however, in addition it was also running the secure boot
    installation shim-install. The install method in KIWI is skipped for
    those architectures and firmware combinations for which bios support
    doesn't exist. This was leading to skip the secure boot installation.
    The current approach strips the secure boot installation logic from the
    grub2.install method, so skipping the install method does not
    automatically result in skipping the secure boot installation.
    Fixes bsc#1182211
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.18 → 9.23.19
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed admin path for dpkg-query
    Fixed admin path in check_dracut_module_versions_compatible_to_kiwi
    runtime check.
* Mon Mar 01 2021 Fergal Mc Carthy <rahn.tamalin@gmail.com>
  - Fail non-XML descriptions if anymarkup not available (#1742)
    Co-authored-by: Fergal Mc Carthy <fergal.mc.carthy@suse.com>
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.17 → 9.23.18
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make runtime check more robust
    Fixed check_dracut_module_versions_compatible_to_kiwi to work
    with systems that have no dracut installed.
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed call time runtime check in build command
    The check_dracut_module_versions_compatible_to_kiwi runtime
    check was called too early in the build process. It has to
    be called at the end of the prepare stage when the image
    root tree has been created
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added missing runtime check to default config file
    Added check_dracut_module_versions_compatible_to_kiwi as
    comment block to the default config file
* Mon Mar 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.16 → 9.23.17
* Sun Feb 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed docstring for SolverRepositoryDeb class
    The doc string incorrectly pointed to the rpm-md repo type
    when it should be apt-deb
* Thu Feb 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed code smells reported from codacy
    In addition cleanup unused instance variable self.custom_args
    from DiskFormatBase class
* Tue Feb 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add kiwi dracut mod vs. kiwi compatibility check
    Add a runtime check to be called in the create stage
    which reads the version(s) of the installed kiwi dracut
    modules from the package database and compare them with
    a min_version setting maintained in the KIWI builder
    code. If the installed dracut module is not compatible
    with the used kiwi builder version the build stops
    at this point with a descriptive error message
* Tue Feb 23 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Add strong typing for the following API methods
    kiwi/storage/raid_device
    kiwi/storage/setup
    kiwi/storage/subformat/base
    kiwi/storage/subformat/gce
    kiwi/storage/subformat/ova
    kiwi/storage/subformat/qcow2
    This references issue #1644
* Tue Feb 23 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added strong typing for the following API methods
    * storage/subformat/vagrant_base.py
    * storage/subformat/vagrant_libvirt.py
    * storage/subformat/vagrant_virtualbox.py
    * storage/subformat/vdi.py
    * storage/subformat/vhd.py
    * storage/subformat/vhdfixed.py
    * storage/subformat/vhdx.py
    * storage/subformat/vmdk.py
    This references Issue #1644
* Mon Feb 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted legacy kiwi chapter from the docs
    The information there is almost obsolete since kiwi(perl)
    does no longer exist in any modern distribution. It's
    only maintained on SLE12 which itself is EOL and the kiwi
    there has its own documentation which we don't need to
    reference anymore in the upstream project
* Mon Feb 22 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added new Troubleshooting chapter to the docs
    Added a new chapter to handle issues which depends on several
    environment conditions and for which not only one possible
    solution exists. This Fixes #1691
* Fri Feb 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Document use of SUSE media
    Add chapter to describe how to use the SUSE product media
    in a kiwi build process. This Fixes #1678
* Fri Feb 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete support for generic iso:// source type
    The generic iso:// media type mounts the given iso file and expect
    its root to provide a repository that can be used 1:1 with a package
    manager. This concept is broken since some time and it can't be fixed
    in a generic way. All distribution media comes with a certain layout
    and basically needs extra handling to become fully usable as
    repository. The current implementation of the iso type which simply
    mounts the iso and expects its root to be a known repo is not useful.
    Therefore the support for it will be decommissioned. Instead we
    will provide a documentation chapter that documents how to incorporate
    distro ISO media for building images.
* Thu Feb 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added deb support to sat solver module
    Add support to create SAT solvables from Debian repos via
    deb2solv tool from libsolv. This allows image info --resolve-package-list
    to work with Debian/Ubuntu image descriptions. Please note
    by default libsolv is not compiled with support for Debian.
    Therefore the following compile flags must be set on libsolv
    * -DENABLE_DEBIAN=1
    * -DMULTI_SEMANTICS=1
    If libsolv does not provide the needed capabilities kiwi will
    fail on either the repository solvable creation due to missing
    deb2solv or on call of setdisttype() due to missing MULTI_SEMANTICS
    feature in libsolv
* Thu Feb 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update contributing chapter
    Add an example to show that using the kiwi description
    format is an option when using kiwi as an API in other
    python programs
* Tue Feb 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Change donation message
    There are more people working on kiwi and the message is
    from times with only me as contributor. It would be unfair
    to keep the current message and I will share any donation
    with the team.
* Tue Feb 16 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.15 → 9.23.16
* Mon Feb 15 2021 David Cassany <dcassany@suse.com>
  - Fix lsblk flags to get sorted output
    This commit modifies the lsblk command flags to get a sorted output
    according to the disk layout.
    This is related to 176c7eab commita and it fixes bsc#1182264
* Mon Feb 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed kiwi-systemdeps-filesystems requires
    The filesystems requires list also contains low level
    tools to manage partitions, loops and subsystems. The tools
    to manage LUKS(cryptsetup) are missing and imho belongs there
    along with the LVM tools which are listed
* Mon Feb 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added documentation for kiwi-systemdeps concept
    Added information about the kiwi-systemdeps sub packages
    and its purpose. This Fixes #1686
* Mon Feb 15 2021 David Cassany <dcassany@suse.com>
  - Add strong typing for filesystem classes
    This commit strong typing for FileSystem* classes.
    Part of #1644
* Mon Feb 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    The runtime config file can also be specified on the
    commandline
* Mon Feb 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added ca-certificates-mozilla to build tests
    ca-certificates-mozilla provides the issuer CERT to allow
    for https repo connections. The standard ca-certificates is
    not enough on suse/leap/sles based integration tests
* Sat Feb 13 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed packaging metadata for pypi
    Include the README as long description in the metadata
    for pypi. The change causes the description on pypi.org
    to show the ReST rendered README instead of a message
    that the author of the module hasn't provided a description
* Sat Feb 13 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete legacy oem build test from leap
    The legacy custom kiwi boot test will only continue
    to exist on tumbleweed without any warranty
* Fri Feb 12 2021 David Cassany <dcassany@suse.com>
  - Include a note about rpm's curl requirement to import remote keys
    This commits add a note in the KIWI installation page to warn users rpm
    requires curl utility in order to import remote keys from a URI.
    Fixes #1680
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.14 → 9.23.15
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    Mention the cross arch build capability of the boxbuild
    command. Also update the example box used in the self
    container build chapter
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to specify OBS credentials in runtime config
    In preparation to the new obs kiwi plugin this commit adds
    an opportunity to store obs credentials such that the plugin
    could also be used in a non-interactive way
* Fri Feb 12 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Add strong typing for the following API methods
    kiwi/storage/device_provider
    kiwi/storage/disk
    kiwi/storage/loop_device
    kiwi/storage/luks_device
    kiwi/storage/mapped_device
    This references issue #1644
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update build_status helper for box plugin
    The suse box has been renamed to tumbleweed
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    Fixed link list to integration tests
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added rawhide test status to build_status helper
* Fri Feb 12 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added Fedora Rawhide integration tests
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Followup fix for RuntimeConfig refactor
    The refactor of the RuntimeConfig made sure the runtime config
    file is read in only once. But if the file exists and is empty
    after yaml.safe_load like in the kiwi package provided
    /etc/kiwi.yml which contains all config options as comments,
    the code still reads in the file with every new instance of
    RuntimeConfig. This commit fixes this condition
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-vagrant for Leap
    Use the correct release package
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-docker-derived for Leap
    Use the right derived from location
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-docker for Leap
    Nothing provides grub
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete test-image-pxe from leap tests
    We don't continue development of netboot code. Thus there is
    only one test for the old netboot system on TW. People are
    advised to move to oem remote deployment or the kis type
    using custom(non kiwi) dracut extensions
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - test-image-MicroOS does not build for leap
    Looks like this concept is not available on Leap
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added integration tests for Leap
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    Location for integration tests has changed
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted x86/suse integration tests
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moving x86/suse -> x86/tumbleweed
    This is in fact a copy of the build-tests for x86/suse
    to x86/tumbleweed. Once the tests in OBS are building
    x86/suse and the respective project will be deleted
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted s390/suse integration tests
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moving s390/suse -> s390/tumbleweed
    This is in fact a copy of the build-tests for s390/suse
    to s390/tumbleweed. Once the tests in OBS are building
    s390/suse and the respective project will be deleted
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete ppc/suse from build_status helper
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted ppc/suse integration tests
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moving ppc/suse -> ppc/tumbleweed
    This is in fact a copy of the build-tests for ppc/suse
    to ppc/tumbleweed. Once the tests in OBS are building
    ppc/suse and the respective project will be deleted
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed Debian integration test
    The test was not using the Staging kiwi to build
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted arm/suse integration tests
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moving arm/suse -> arm/tumbleweed
    This is in fact a copy of the build-tests for arm/suse
    to arm/tumbleweed. Once the tests in OBS are building
    arm/suse and the respective project will be deleted
* Thu Feb 11 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Update tuples to enforce type hints
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed use of BIOS grub image on ISO media
    Not all systems (e.g Debian) creates the boot/grub|grub2 directory.
    In kiwi when we need to create a custom grub image because we did
    not find the distro provided one, an earlyboot.cfg file is created
    and embedded into the grub image. The locaton to store that file
    is below boot/grub|grub2. However if the directory does not exist
    the build will fail as with the current Debian Live integration
    test.
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added debian integration tests to build_status
    The debian build tests were not taken into account by
    the build_status helper
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moved ARM fedora integration test to latest stable
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update suse build tests
    Deleted old and obsolete configuration setup. Use generic
    description information as much as possible
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move fedora integration tests to stable release
    Instead of building against the rolling release (rawhide)
    we build the integration tests for non suse tests against
    the stable release of distributions. The reason is except
    for suse we don't have influence and resources on the
    distribution development and sometimes facing the problem
    that we can only sit and pray for a self healing of the
    rolling distro releases. From a kiwi release perspective
    this blocks us too often
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed tbz integration test
    It seems /bin/sh has been moved into a file provides that
    cannot be solved by the obs solver. Therefore a package
    providing it needs to be added explicitly.
* Thu Feb 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.13 → 9.23.14
* Wed Feb 10 2021 David Cassany <dcassany@suse.com>
  - Remove files or folders that conflict with debootstrap
    This commit makes use of Path.wipe method instead of os.unlink. This way
    we are certain the path is removed regardless being a directory or a
    file.
    fixes #1718
* Wed Feb 10 2021 David Cassany <dcassany@suse.com>
  - Clean some copy and paste leftover from doc strings
* Tue Feb 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed ramdisk deployment from install ISO
    The dracut mount hook is only called if NO root= information
    is provided from the cmdline. In a PXE deployment this is the
    case but in an install ISO deployment not. This commit re-adds
    the sysroot mount generator approach but only applies on the
    condition rd.kiwi.ramdisk is set and root= is specified. Only
    in this case we know config.bootoptions is present in the
    initrd and will not be provided from an outside service
* Tue Feb 09 2021 Christian Goll <Christian.Goll@gmail.com>
  - Added dolly support
    Allow dolly as alternative download protocol
* Tue Feb 09 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.12 → 9.23.13
* Sun Feb 07 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor RuntimeConfig class
    The former implementation read the runtime config file every
    time a new RuntimeConfig instance was created. The runtime
    config is however static during the runtime of an image build
    process and not supposed to change. Therefore the file should
    be read in once and any new instance of RuntimConfig should
    just use what has been read in at the first invocation. This
    commit refactors the RuntimeConfig class to hold an application
    global RUNTIME_CONFIG variable and allows to reread the
    config on explicit request.
* Sat Feb 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added option to setup OBS API server in config
    Allow to specify the open build service API server
    in the kiwi runtime configuration file
* Sat Feb 06 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to specify config file on the command line
    The optional kiwi runtime config file (kiwi.yml) could
    only be read from ~/.config/kiwi/config.yml or /etc/kiwi.yml
    This commits adds the global option --config which allows
    to specify a custom runtime configuration as well.
* Fri Feb 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed detection for pacman repo type
    grep the directory listing for a .db.sig metadata file
    to identify a pacman repo
* Fri Feb 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup CliTask doc strings and code duplication
    Introduce a tuple method to handle arguments with [n]
    comma separated elements. Also fix method docstrings
    with wrong type information.
* Fri Feb 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed typing for add_repository in XMLState class
    mypy reported further issues on XMLState class which
    are fixed by this commit
* Fri Feb 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed type annotations and docs for Uri class
    The constructor used a wrong type for the repo_type variable
    and the doc string for the class was invalid
* Fri Feb 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added get_repo_type method to SolverRepository
    In preparation of a plugin to handle external service
    repositories a method to check for the repository type
    was added. The detection is based on a search for a
    specific metadata file which is an indicator for the
    type of a repository.
* Fri Feb 05 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update manual pages
    The system build and prepare commands have received options
    which were not mentioned in the manual pages. This commit
    updates the pages to be in line with the code
* Mon Feb 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.11 → 9.23.12
* Mon Feb 01 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed debootstrap device node conflict
    debootstrap creates its own device node tree and fails
    if a node it creates itself already exists. This commit
    introduces a list of conflicting device nodes and deletes
    them prior kiwi calling debootstrap. This Fixes #1675
* Sun Jan 31 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added aaa_base to s390 TW build tests
    On s390 TW aaa_base is not pulled in by a dependency in obs.
    It looks like the package is pulled in by a file provides which
    is not resolved by obs. Thus the package needs to be added
    explicitly
* Fri Jan 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.10 → 9.23.11
* Fri Jan 29 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Follow up fix, creating custom grub EFI images
    Make sure custom EFI grub image is copied to the media
    directory if this is different from the root directory
    e.g on creation of live images
* Thu Jan 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.9 → 9.23.10
* Thu Jan 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Follow up fix, creating custom grub images
    Moving the grub mkimage call as chroot operation also broke
    the creation of image builds that uses the legacy custom kiwi
    boot image feature instead of dracut. This commit fixes it
* Thu Jan 28 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added leap box to be shown by build_status helper
* Wed Jan 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added decorators to help with API management
    The lifetime of API methods could be limited due to
    the development of kiwi. To allow for a deprecation
    process the following helper methods has been added
* Wed Jan 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.8 → 9.23.9
* Wed Jan 27 2021 David Cassany <dcassany@suse.com>
  - Update MicroOS build test
    This commit alignes the MicroOS tests with the MicroOS images build
    for kvm and xen. In addition it adds the installation media request and
    custom initrd modules configuration for the installation media.
* Wed Jan 27 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed creation of custom bios grub image
    The last commit moved the grub mkimage call into the chroot.
    As a side effect and when creating install media the earlyboot
    script could no longer be found. This commit fixes it
* Wed Jan 27 2021 David Cassany <dcassany@suse.com>
  - Include installmedia documentation
* Tue Jan 26 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.7 → 9.23.8
* Mon Jan 25 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed creation of custom grub image
    If kiwi can't find the distribution provided grub image(s) it
    creates them using the respective grub[X]-mkimage tool. However
    the tool was called on the build host which could cause an
    inconsistency on the used module path. Grub is not packaged
    consistently across the distributions and also the provided
    modules comes in different versions and patch sets. Therefore
    it's required that kiwi calls the grub mkimage tool as chrooted
    operation inside of the tree that provides the target image.
    As consequence of the change it's required that the image root
    tree provides the grub mkimage tool. In addition to the change
    we now also log the output from the grub mkimage call in the
    kiwi build logfile. This Fixes #1254
* Thu Jan 21 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Add strong typing for the following API methods
    * kiwi/system/kernel.py
    * kiwi/system/result.py
    * kiwi/system/shell.py
    This references issue #1644
* Thu Jan 21 2021 David Cassany <dcassany@suse.com>
  - Add the schematron rules for installinitrd
    This commit adds an schematron rule to limit the presence of
    installinitrd element to disk builds including installation media.
* Thu Jan 21 2021 David Cassany <dcassany@suse.com>
  - Add the installinitrd element
    This commit adds the `<installinitrd>` element in kiwi schema to
    facilitate the dracut modules configuration for the installation initrds
    on OEM images. Within installinitrd element is possible list the dracut
    modules to append, to omit or to just set an static list of dracut
    modules to include.
    Fixes #1676
    Fixes #1683
* Thu Jan 21 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Add strong typing for the following API methods
    * system/root_bind.py
    * system/root_init.py
    * system/identifier.py
    This references issue #1644
* Thu Jan 21 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.6 → 9.23.7
* Wed Jan 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Don't call super() from logging.Formatter
    It's not needed to run the base class constructor.
    The interface for the logging facility is also different
    between python 3.6 and python 3.8 such that calling
    the base constructor would be bad idea anyway.
* Wed Jan 20 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Add strong typing for the following API methods
    * kiwi/system/size.py
    * kiwi/system/uri.py
    * kiwi/system/users.py
    Update the test path for users_test.py
    This references #1644
* Wed Jan 20 2021 David Cassany <dcassany@suse.com>
  - Include missing qemu-tools dependency for iso images
    This commit includes a missing qemu-tools dependency for iso
    image type.
* Wed Jan 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added strong typing for the following API methods
    * kiwi/system/prepare.py
    * kiwi/system/profile.py
    * kiwi/system/setup.py
    The changes here also lead to a small refactoring for the handling
    of the package manager. In my opinion it doesn't make sense to allow
    a None type package manager from the stateful XML instance. As without
    any package manager nothing can be done. As it also turns into an
    issue for the PackageManager API which does not allow for an empty
    value here I thought it's better to come up with a default package
    manager (set to dnf) if no one is explicitly specified
    This references Issue #1644
* Wed Jan 20 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Explicitly set lvm device source
    Set external_device_info_source=none for lvm calls.
    This is related to Issue #1665
* Tue Jan 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed use of encoding in open calls
    The use of encodings.ascii in open calls was wrong. Open expects
    an encoding string but encodings.ascii returns a module reference
* Tue Jan 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.5 → 9.23.6
* Tue Jan 19 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Handle checksum files in ascii encoding
    Follow up fix for #1673. Handle reading/writing of all
    supported checksum variants in ascii encoding
* Mon Jan 18 2021 Neal Gompa <ngompa13@gmail.com>
  - Mark Micro DNF as a RPM based package manager
    Without doing this, KIWI won't generate the correct output files
    for verification of image content.
* Mon Jan 18 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Only write GRUB_CMDLINE_LINUX_DEFAULT with content
    Only write GRUB_CMDLINE_LINUX_DEFAULT in the grub defaults
    file if there are custom options set via the kernelcmdline
    attribute. This Fixes #1650
* Sat Jan 16 2021 Petr Pavlu <petr.pavlu@suse.com>
  - Move logic to sync system data into a separate method
    Reduce cyclomatic complexity of DiskBuilder.create_disk() by moving the
    logic to sync system data into a separate method.
* Fri Jan 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed missing systemdisk provides
    kiwi-systemdeps-filesystems did not provide kiwi-filesystem:ext2
* Fri Jan 15 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.4 → 9.23.5
* Wed Jan 13 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Refactor default shared cache location
    Defaults shared cache location does not depend on CLI parameters
    Add set method for custom cache location in Defaults
    CLI default value for shared cache dir depends on Defaults if not set
    Update default if CLI shared cache dir set
    Fixes #1671
* Tue Jan 12 2021 Jesus Bermudez Velazquez <jesus.bv@suse.com>
  - Update contributing link in README
* Mon Jan 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete obsolete ddb.adapterType patching
    When building a vmdk image with pvscsi as adapter type, kiwi
    implicitly changed the adapter_type from pvscsi to lsilogic
    because qemu only knows lsilogic. At the end kiwi patched
    the adapter type in the descriptor of the vmdk header back
    to pvscsi. That patching seems to be wrong according to
    information from users and VMware support. This commit
    deletes the descriptor patching and only leaves the pvscsi
    setting in the guest configuration(vmx).
    This Fixes bsc#1180539 and Fixes #1847
* Mon Jan 11 2021 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.3 → 9.23.4
* Sun Dec 27 2020 Josua Mayer <josua@solid-run.com>
  - force ascii encoding on checksum files
    Python open function can fail when a file is not found encoded in
    utf-8, depending on the execution environment. In particular on
    Debian 10 an error message regarding utf8 was encountered.
    Since checksum files always use only ascii characters, force it.
* Wed Dec 23 2020 David Cassany <dcassany@suse.com>
  - Fixes the rpmdb bootstrap management for DNF on SUSE
    This commit makes sure that the compatibility symlink for
    /var/lib/rpm is created when the host rpmdb path is set to something
    different. This fixes a mismatch on bootstrapping SUSE using DNF.
    Fixes #1669
* Tue Dec 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.2 → 9.23.3
* Mon Dec 21 2020 David Cassany <dcassany@suse.com>
  - Modify lsblk flags for a consistent output across distros
    This commit modifies the lsblk flags to make use of the list format
    instead of raw output. `--list` flag seams to keep the geometry order
    and produces a consistent output in several distros.
* Fri Dec 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.1 → 9.23.2
* Fri Dec 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update kiwi-systemdeps-image-validation
    Make python anymarkup to be only recommended. The package
    does not exist on all distributions, e.g suse does not
    provide it and for kiwi it's an optional plugin
* Fri Dec 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed missing provides tag
    When building WSL images the image type is set to appx.
    Therefore obs is looking for what provides kiwi-image:appx
    This provides tag was missing
* Fri Dec 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Don't install obsolete requires packages
    The derived docker build test installs obsolete kiwi requires
* Thu Dec 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.23.0 → 9.23.1
* Thu Dec 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update spec file
    Complete and cleanup spec for drop in replacement of new
    systemdeps sub-packages
* Thu Dec 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.22.4 → 9.23.0
* Thu Dec 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set min version python requirement
    The use of new features like type hinting and annotations
    requires a python version >= 3.6
* Thu Dec 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.22.3 → 9.22.4
* Thu Dec 17 2020 David Cassany <dcassany@suse.com>
  - Use the generic Dict type
    This commit makes use of the Dict type in the container factory classes
    so these type hints aligned with the other dict related type hints in
    KIWI code. This commit improves the refactor done in 99be52ba.
* Thu Dec 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update preferences documentation
    The last commit added the optional arch attribute to the
    preferences section but the documentation did not expose
    this information. This is related to Issue #1640
* Wed Dec 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed no-self-use issue from codacy report
    The Logger.progress method is actually a static method
    and should be used as such
* Wed Dec 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added strong typing for the following API methods
    * logger
    * logger_color_formatter
    * logger_filter
    * xml_description
    * xml_state
    * markup/any
    * markup/base
    * markup/xml
    This references Issue #1644
* Wed Dec 16 2020 David Cassany <dcassany@suse.com>
  - Add 'arch' attribute to preferences
    This commits adds the attribute 'arch' to preferences. It works
    as any other 'arch' attribute within the schema. Preferences defined
    with architectures that do not match the host are ignored. If no 'arch'
    is provided it matches all any host architecture.
    Fixes #1640
* Wed Dec 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed color json output
    kiwi supports output of yaml/json markup in color mode using
    pjson. The writing of this data required to be encoded prior
    output.
* Tue Dec 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix vagrant documentation
    The previous pull request adding a baseVagrantSetup method
    and documentation broke the build of the docs due to invalid
    indentation. The test pipeline has failed but the PR was
    merged so this followup commit is needed to fix the docs
* Tue Dec 15 2020 David Cassany <dcassany@suse.com>
  - Refactor iso_tools factory class
    This commit refactors the IsoTools class and turns it into a
    proper factory class and also includes type hints to facilitate
    it's use from an API POV. Related to #1498
* Tue Dec 15 2020 David Cassany <dcassany@suse.com>
  - Refactor container factory classes
    This commit refactors the container related classes to turn them into
    proper factory classes and also includes type hints to facilitate
    it's use from an API POV. Related to #1498
* Tue Dec 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete traces of travis integration
    Rename and clarify code that was still using the name travis.
    Delete all references to the travis CI system from kiwi
* Tue Dec 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.22.2 → 9.22.3
* Tue Dec 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed SUSE doc update in gitlab pipeline
    There is a dependency set to build_suse_doc in the push_suse_doc
    target. But the build_suse_doc target has set except "master"
    when the push_suse_doc has set only "master". Obviously this
    doesn't fit together
* Tue Dec 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.22.1 → 9.22.2
* Mon Dec 14 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed source rpm check in gitlab
    Fedora30 is EOL, thus there is no provider for
    mock/fedora-30-x86_64.cfg anymore
* Mon Dec 14 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete travis setup
* Mon Dec 14 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added gitlab pipeline to deploy kiwi documentation
    Use a github token and a bit of script code to deploy
    the kiwi online documentation to the gh-pages branch
* Mon Dec 14 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move CI system to gitlab
    Travis made questionable changes to their open statement
    and I'm not following this anymore.
* Fri Dec 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added check_swap_name_used_with_lvm runtime check
    The optional oem-swapname is only effective if used together
    with the LVM volume manager. A name for the swap space can
    only be set if it is created as a LVM volume. In any other
    case the name does not apply to the system. This condition
    should be checked to avoid useless settings in the image
    description.
* Fri Dec 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to customize swap volume name
    Added a new element <oem-swapname> below the <oemconfig>
    section which allows to specify a name for the swap volume
    in case the LVM volume manager is used. The default if
    not specified continuous to stay at: LVSwap. This
    Fixes #1638
* Fri Dec 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed base setup links
    Do not create a link /var/run pointing to /run. This is unexpected
    and looks like a left over from kiwi legacy which supported older
    distributions who might have needed this. This Fixes #1643
* Wed Dec 09 2020 Dan Čermák <dcermak@suse.com>
  - [doc] Clarify that suse* functions are also for openSUSE
* Wed Dec 09 2020 Dan Čermák <dcermak@suse.com>
  - Add baseVagrantSetup helper function
    This function is used to setup a vagrant box, so that each vagrant box creator
    needn't implement it themselves.
* Wed Dec 09 2020 Dan Čermák <dcermak@suse.com>
  - Use DEBUG=0 by default in function Debug
    This avoids script failures when invoked with `set -u`.
* Wed Dec 09 2020 David Cassany <dcassany@suse.com>
  - Make debootstrap repository explicit
    This commit introduces the use_for_debootstrap attribute for
    repositories of type apt-deb. This is a boolean attribute to specify
    the repository that will be used for bootstrapping in apt-deb based
    images. Only one can be selected and if none is specified KIWI just
    makes use of the last one in the list.
    Fixes #1593
* Tue Dec 08 2020 Neal Gompa <ngompa13@gmail.com>
  - Refactor packaging to split out system dependencies into subpackages
    The eventual goal is to eliminate the requirement to use magic in
    build systems (e.g, OBS) to compose the necessary dependencies for
    image builds, while making it easier for local users to discover
    what they need to build appliances.
    Fixes #1503
* Tue Dec 08 2020 Neal Gompa <ngompa13@gmail.com>
  - Drop useless chkconfig dependency
    We originally had chkconfig as a dependency because alternatives(8)
    is part of chkconfig in RH/Fedora systems. Since we don't use that
    anymore, we don't need this dependency.
* Tue Dec 08 2020 Neal Gompa <ngompa13@gmail.com>
  - Require gnupg on Debian/Ubuntu
    Without this, it's not possible to do GPG verification of Debian/Ubuntu
    repositories.
* Tue Dec 08 2020 Petr Pavlu <petr.pavlu@suse.com>
  - Fix disk build with <bootloader name="custom"/>
    * Fix DiskBuilder.create_disk() to not call the BootLoaderConfig
    factory when bootloader=custom. The factory does not recognize the
    "custom" bootloader name and raises the following exception:
    KiwiBootLoaderConfigSetupError: Support for custom bootloader config not implemented
    * Update DiskBuilder._install_bootloader() to not invoke any
    bootloader_config methods when bootloader=custom since no config
    instance is created in such a case.
* Tue Dec 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.22.0 → 9.22.1
* Tue Dec 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed validation of bool value in dracut module
    The oem-multipath-scan setup results in a bool variable inside
    of the initrd code. The variable kiwi_oemmultipath_scan is
    therefore either set to "true" or "false". A check in code
    of the form [ -n ... ] is stupid since the variable always
    contains text. This commit fixes the validation to make use
    of the bool() method provided for these type of variables
* Fri Dec 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added SLE15 s390 FBA integration test
    Build image for FBA disk
* Thu Dec 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.26 → 9.22.0
* Thu Dec 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Omit multipath module by default
    The plain installation of the multipath toolkit activates the
    dracut multipath code. The setup if the target image runs in a
    multipath environment or not should however be decided explicitly
    in the image description via <oem-multipath-scan> and not
    implicitly by the presence of tools
* Wed Dec 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed multipath disk device assignment in kiwi lib
    The former lookup of the multipath mapped disk device contained
    a race condition. If the lookup of the device mapper files happened
    before multipathd has finished the initialization, kiwi continues
    with the unix node name and fails when the device mapper keeps
    a busy state on it. This commit changes the code such that in case
    of an explicit request to use multipath the lookup of the mapped
    device becomes a mandatory process that runs until the
    DEVICE_TIMEOUT is reached. Default timeout is set to 60 sec.
    This references Issue SUSE-Enceladus/azure-li-services#255
* Wed Nov 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed PackageManager decorator in unit test
    Implement patch decorators for factories consistently
* Wed Nov 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor Repository
    This commit refactors the Repository class and turns it into a
    proper factory class and also includes type hints to facilitate
    it's use from an API POV. Related to #1498
* Tue Nov 24 2020 Neal Gompa <ngompa13@gmail.com>
  - Add DNF as a proper dependency for openSUSE
    This is required so that OBS can build openSUSE containers and appliances
    using DNF as the package manager.
* Tue Nov 24 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec file microdnf requirement
    SUSE/SLES doesn't provide microdnf within the official channels yet
* Tue Nov 24 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor Partitioner
    This commit refactors the Partitioner class and turns it into a
    proper factory class and also includes type hints to facilitate
    it's use from an API POV. Related to #1498
* Tue Nov 24 2020 David Cassany <dcassany@suse.com>
  - Avoid using generators in pre-mount hooks
    This commit deletes the generator that was creating the sysroot.mount
    unit for ramdisk deployments. Generators, specially the sysroot.mount is
    expected to be created on very early stages of the boot procedure as
    this has impact on relevant targets such as initrd-root-fs.target, which
    does not depend on sysroot.mount if the unit is not there.
    In ramdisk deployments some data is known on pre-mount stage as
    as it is downloaded from the PXE server. At this stage it is not safe to
    generate a sysroot.mount unit that depends on initrd-root-fs.target as
    the target is close to finalize or even finalized already and could
    potentially skip sysroot.mount exection.
    Instead we include a mount hook which is only executed on ramdisk
    deployments that simply runs the mount command to mount /sysroot.
    This fixes bsc#1178670
* Mon Nov 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor PackageManager
    This commit refactors the PackageManager class and turns it into
    a proper factory class which also include type hints to facilitate
    it's use from an API POV. Related to #1498
* Mon Nov 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor Markup
    This commit refactors the Markup class and turns it into a proper
    factory class which also include type hints to facilitate it's
    use from an API POV. Related to #1498
* Fri Nov 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.25 → 9.21.26
* Thu Nov 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed dnf plugin config setup
    Only create a dnf plugin config if the plugin config directory
    to store that file exists in the system
* Thu Nov 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set --releasever=0 for microdnf
    To allow microdnf to work from an empty root directory
    we need to set the release version to zero
* Wed Nov 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use custom varsdir for dnf builds
* Wed Nov 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Partially revert dcounter.c flaw report
    I could not find a problem with this read call
    it does check on the buffer boundaries and it
    only writes the bytes that read returns until
    read returns <= 0
* Wed Nov 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed dcounter.c flaw report
    Check buffer boundaries if used in a loop
* Wed Nov 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed dcounter.c flaw report
    Variable scope can be reduced and useless value assignment.
* Wed Nov 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed microdnf support
    The installroot argument must be used together with --config
    and additionally with --noplugins, as well as --setopt for
    cachedir, reposdir and varsdir. Related to #1625
* Tue Nov 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move tools README to ReST
* Tue Nov 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed Incorrect list-item indent
* Tue Nov 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed Incorrect list-item indent
    Use two spaces between bullet and content
* Tue Nov 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update codacy configuration file
    Exclude .github helper scripts from the analysis
* Tue Nov 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update codacy configuration file
    Exclude doc sources and helper scripts from the analysis
* Mon Nov 16 2020 Neal Gompa <ngompa13@gmail.com>
  - Fix setopt argument for install_weak_deps for microdnf
    Micro DNF does not support "True"/"False", only "1"/"0"...
* Mon Nov 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Better error reporting if jing is missing
    On validation error we use jing to report detailed error
    messages. However if jing is not present no validation
    errors are displayed. There is a error_log variable as
    part of the relaxNG object which holds the library error
    log. This information is not as good as the jing report
    but better than nothing
* Mon Nov 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added microdnf support in XML schema
    The XML schema did not allow to specify microdnf as
    supported package manager
* Mon Nov 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added microdnf integration test
* Mon Nov 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.24 → 9.21.25
* Fri Nov 13 2020 Neal Gompa <ngompa13@gmail.com>
  - Use --config instead of -c for DNF and Micro DNF
    The -c option is not supported in Micro DNF, but --config is, and
    it is supported with DNF as well.
* Fri Nov 13 2020 Neal Gompa <ngompa13@gmail.com>
  - Drop 'microdnf makecache' call for microdnf package manager
    This subcommand does not exist and is not needed. Instead, we
    need to use '--refresh' where this is needed.
* Fri Nov 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.23 → 9.21.24
* Fri Nov 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - No bootpartition for XFS by default
    Selecting the xfs filesystem made kiwi to create an extra
    boot partition. This is from times when grub was not able
    to read from XFS. As grub doesn't have this limitation since
    quite some time the bootpartition default in kiwi for XFS
    should be changed. This is realted to #1611
* Fri Nov 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Create relative boot link for extra boot partition
    If an extra boot partition is used the grub toolchain
    still references files from that partition as /boot/...
    which fails because they are now at the toplevel. To
    avoid this and keep any /boot/some-file reference still
    valid we create a symlink 'boot -> .' This Fixes #1611
* Thu Nov 12 2020 David Cassany <dcassany@suse.com>
  - Fix documentation to be consistent with the XML KIWI scheme
    This commit fixes the user section documentation to properly reflect
    XML KIWI scheme constraints. 'home' attribute is optional and 'password'
    attribute is mandatory.
    Fixes #1599
* Thu Nov 12 2020 Neal Gompa <ngompa13@gmail.com>
  - Add support for the Micro DNF package manager
    Micro DNF is a minimal C implementation of DNF that is usable for
    minimal appliances and containers. While it is not at parity with
    DNF, it implements enough functionality that it is mostly usable
    for building appliance images.
* Wed Nov 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added remote overlay boot documentation
    Added a new chapter below: working with images, which describes
    the options to remote boot via kiwi-overlay from an NBD or AOE
    exported root filesystem image.
* Wed Nov 11 2020 Frank Schreiner <schreiner@suse.de>
  - use BuildRequires for distros which use fdupes
* Tue Nov 10 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for nbd and aoe root overlay
    The kiwi-overlay dracut module can also be used as standalone
    module that is not connected to a disk image. In this case
    it's needed to specify the location for the root filesystem
    and optionally the device to write data (default is ram space).
    This commit adds the opportunity to specify a nbd/aoe location
    for the root filesystem on the kernel cmdline like in the
    following examples:
    root=overlay:nbd=nbd0:192.168.100.42:exportname
    root=overlay:aoe=e0.1
    An optional write space, if it should not be ram space, can be
    provided through the rd.root.overlay.write option on the kernel
    cmdline. This Fixes: OSInside/kiwi-descriptions#78
* Mon Nov 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Increase allowed complexity level
    Increase overall allowed flake8 complexity level and delete
    the extra exceptions from code as much as possible
* Mon Nov 09 2020 David Cassany <dcassany@suse.com>
  - Add editbootinstall script for Arch Linux tests
    This commit adds the editbootinstall script to Arch Linux OEM
    integration tests. The provided script removes the use of linuxefi and
    initrdefi commands on grub configuration since Arch does not support
    linuxefi module.
    Fixes #1559
* Mon Nov 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update tox and travis setup for python 3_8
    Move latest python test target to 3.8 and also change
    the deploy travis target to use python 3.8
* Mon Nov 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow console login for the integration tests
    The integration tests for the cloud targets had the console
    login for root disabled. This is correct if the image would
    be really used in the cloud. The integration test however
    will be functional tested within openQA and that requires
    serial console and root console login to be allowed.
* Sun Nov 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added universal box to build status helper
* Thu Nov 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.22 → 9.21.23
* Wed Nov 04 2020 David Cassany <dcassany@suse.com>
  - Move usrmerge package out of the bootstrap section
    Currently bootstrap phase on APT package manager makes use of the
    debootstrap tool. However debootstrap is limited to execute  the
    bootstrap using a single repository. This is causes several limitations
    in OBS builds, such as the impossibility of using update repositories or
    the inclusion of any package that is not part of the standard OBS
    repository.
    Usrmerge package is part of the universe repository in OBS which is not
    te one used by debootstrap, so it can't be installed on bootstrap phase.
* Wed Nov 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.21 → 9.21.22
* Wed Nov 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed package manager api inconsistency
    The method post_process_install_requests_bootstrap in the
    zypper package manager was missing an argument
* Wed Nov 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.20 → 9.21.21
* Wed Nov 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed regexp for grub rootdev substitution
    The regular expression to match the grub root device
    used a lazy glob match ".*?". This however matches a
    too long part depending on the rest of the content.
    This commit fixes the expression to be strict on
    the allowed characters and makes sure the anchor
    characters are not part of the matching character
    class. This Fixes #1607
* Wed Nov 04 2020 Quang Tran <quang.tran@suse.com>
  - Fix quick start guide build command
    The kiwi-descriptions were reorganized in profiles (See OSInside/kiwi-descriptions@788b919ea2500b9d495622c8140e618938634306).
    However the build command in the quick start guide was not updated appropriately and therefore the build fails.
    This commit will update the build command.
* Tue Nov 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed install of bash completion
    The kiwi completion was installed as kiwi-ng.sh below
    /usr/share/bash-completion/completions. This is wrong
    because the completion does not pick up files with
    a suffix like .sh. This commit changes the completion
    file to be installed as kiwi-ng without the suffix
    and Fixes #1603
* Tue Nov 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update integration tests console setup
    Update all integration tests to use a serial tty console setup
    and also to use a serial bootloader setup. This Fixes #1518
* Mon Nov 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor VolumeManager
    This commit refactors VolumeManager to turn it into a proper
    factory class and to also include type hints to facilitate it's
    use from an API POV. Related to #1498
* Mon Nov 02 2020 David Cassany <dcassany@suse.com>
  - Do not exclude filesystem folders in OCI images
    This commit does not exclude filesystem folders during the rsync call
    in OCI images. It has been noted that including an empty /dev folder does
    not hurt and it can eventually help to work around some limitations of
    container related tools such as buildah.
    Fixes bsc#1176129
* Mon Nov 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor RootImport
    This commit refactors RootImport to turn it into a proper
    factory class and to also include type hints to facilitate it's
    use from an API POV. Related to #1498
* Mon Nov 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set displayname in simple disk test
    Use the simple disk integration test to test the setup
    of the displayname attribute. It is expected that this
    image has the configured displayname set in the grub
    menu. The verification of this setting should be done
    in a functional test at openQA which we are currently
    working on
* Mon Nov 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor DiskFormat
    This commit refactors DiskFormat to turn it into a proper
    factory class and to also include type hints to facilitate it's
    use from an API POV. Related to #1498
* Mon Nov 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor SolverRepository
    This commit refactors SolverRepository to turn it into a proper
    factory class and to also include type hints to facilitate it's
    use from an API POV. Related to #1498
* Mon Nov 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set GRUB_DISTRIBUTOR if requested via displayname
    If the image description explicitly specifies a displayname
    it is expected that the bootloader shows this in the menu.
    Therefore in case displayname is set GRUB_DISTRIBUTOR will
    be set if grub2 is in use. This partially reverts #1420
    and Fixes #1575
* Wed Oct 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.19 → 9.21.20
* Thu Oct 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted yast from test-image-qcow-openstack
    yast is not part of the testing queue in kiwi integration tests
* Wed Oct 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Obsolete config functions baseMount/baseCleanMount
    The above methods are obsolete since kiwi handles these
    mount/umount processes as part of the core builder code.
    This Fixes #1536
* Wed Oct 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.18 → 9.21.19
* Tue Oct 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow custom root volume name setup
    In addition to the custom size of the root volume it's now
    also possible to setup the name of the root volume as follows:
    <volume name="@root=rootlv"/>
    If no name for the root volume is specified the default
    name: LVRoot applies as before. This Fixes #1530
* Tue Oct 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Rename image build tests
    To use the image builds in openQA they have to have a unique
    name such that it cannot happen that a cached version of an
    image in openQA is used. The current names matched openQA
    cached images e.g openSUSE-Tumbleweed and in addition different
    image build tests used the same name. This commit uses the
    name of the image as it is organized in its directory structure
    prepending "kiwi-" to be unique in openQA when it fetches
    the image. This is realted to Issue #1555
* Mon Oct 19 2020 David Cassany <dcassany@suse.com>
  - Better integrate debootstrap in KIWI process
    This commit integrates debootstrap process in KIWI in a more transparent
    way. This refactor makes debootstrap to operate directly over the image
    target root tree. This way KIWI can show and parse debootstrap stdout
    and also avoids having to copy the created root tree from one temporary
    folder to the actual target root tree path.
    Related to #1587
* Mon Oct 19 2020 David Cassany <dcassany@suse.com>
  - Include boostrap packages list into deboostrap call
    This commit includes the packages listed in boostrap section to the
    debootstrap call instead chrooting into the new root tree and call
    apt.
    Fixes #1587
* Fri Oct 16 2020 Quang Tran <quang.tran@suse.com>
  - Update outdated OBS User Guide Links
* Thu Oct 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed device_array structure in get_selected_disk
    In reference to Issue #880 a bug was introduced that broke
    the contents of the device_array which causes issues on
    installations with two or more attached disks. The change
    in the mentioned PR reduced the tuple for each disk
    from 3 elements to 2 elements. Therefore the loop that
    iterates over the disk tuples via modulo 3 was broken.
    This commit fixes the modulo operation to correctly
    parse the disk_list. Fixes #1588
* Tue Oct 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for s390 CDL DASD disks
    On s390 and in CDL mode (4k DASD) the call of grub2-install
    does not work because grub2-install is not able to identify
    a 4k fdasd partitioned loop device as a grub supported device
    and fails. As grub2-install is only used to invoke
    grub2-zipl-setup and has no other job to do we can
    circumvent this problem by directly calling grub2-zipl-setup
    instead. Also delete LDL mode support, IBM no longer supports
    this
* Tue Oct 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed strncopy in dcounter helper
    The max size of the copy operation was always set to zero
    because the strlen of an empty buffer is zero. Bad mistake
    from my side :( This Fixes #1579
* Mon Oct 12 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.17 → 9.21.18
* Sun Oct 11 2020 David Cassany <dcassany@suse.com>
  - Fix profile docs
    This commit fixes the profiles documentation. The example KIWI-NG
    command was using wrong flags order. This commit fixes the `--profile`
    flag order in documentation.
* Thu Oct 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Enhance scope of _fix_grub_root_device_reference
    In addition to the wrong root=/dev/mapper/loop... reference
    fixing, written by grub2-mkconfig when used in obs there is
    also the case that grub2-mkconfig writes root=PARTUUID which
    is also unwanted and needs fixing. To solve this properly
    and also with respect to more unexpected grub2-mkconfig
    data, the code changes to use a regular expression for the
    root= replacement. The expression matches all root= cases which
    we want to fixup:
    1. If the local used root device appears in the grub config file.
    2. If a linux by-id setting is used in the grub config file.
    The replacement happens for overlayroot disk images where we
    know grub2-mkconfig cannot handle the layout as well as if kiwi
    runs in obs where we know grub2-mkconfig fails due to the absence
    of udev.
* Wed Oct 07 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for rd.root.overlay.readonly
    Allow to use an overlayroot system with read-only feature.
    If kernelcmdline="rd.root.overlay.readonly" is set in combination
    with overlayroot="true" the overlayfs uses a tmpfs to store
    new data temporary as long as the system runs. On reboot the
    newly written data is lost and the system is back to its
    factory state.
* Mon Oct 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use custom tmpfs for managing overlays
    Provide a method to manage the base mount point for overlay and
    iso mount points and set the base directory to it because /run
    has a RAM space limitation which is unfortunate to handle live
    systems. This Fixes #1558
* Mon Oct 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.16 → 9.21.17
* Mon Oct 05 2020 David Cassany <dcassany@suse.com>
  - Make dependencies to dracut-kiwi-lib release specific
    This commit adds a dracut-kiwi-lib dependency to dracut-kiwi-oem-dump and
    darcut-kiwi-oem-repart to match up to the release level. This way the
    dependency ensures the pulled binaries they are all part of the same build.
* Mon Oct 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.15 → 9.21.16
* Mon Oct 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete length limitation of image id attribute
    For legacy reasons the <image id="..."/> attributes was
    limited to 10digits. The contents of /etc/ImageID are now
    free format and no longer strictly evaluated. Thus the
    limitations on the id attribute can be deleted
* Fri Oct 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.14 → 9.21.15
* Fri Oct 02 2020 David Cassany <dcassany@suse.com>
  - Align dracut-kiwi-lib version with packages requiring it
    This commit enforces dracut-kiwi-oem-repart and
    dracut-kiwi-oem-dump to require dracut-kiwi-lib of the same exact
    version. This prevents dracut-kiwi-lib and the packages
    dependent on it being installed on a image with inconsistent versions.
    Fixes #1529
* Fri Oct 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to configure .changes creation and bundling
    Provide config option has_package_changes in the runtime config
    file and set a useful default. For building outside obs the
    default for the .changes creation is switched on, for building
    in obs it's switched off because obs creates its own info file
* Tue Sep 29 2020 David Cassany <dcassany@suse.com>
  - Fix compat link for rpmdb location
    This commit fixes the symlink creation for `/var/lib/rpm`. More specific
    for derived container images in which the base root tree already
    included the `/var/lib/rpm` the link, the `ln` command was creating a
    symlink inside the `/var/lib/rpm` folder givent that it was following
    the already existing symlink. Adding the `--no-target-directory` force
    `ln` command to treat `/var/lib/rpm` path as the fully qualified symlink name.
    Fixes bsc#1176977
* Tue Sep 29 2020 Jim Klimov <jimklimov@gmail.com>
  - Report download URL on failed request
    In case a network request to a given URL failed the report message should include the URL
    This Fixes #1572
* Tue Sep 29 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use pragma: no cover to skip non reachable code
    Instead of placing the file into .coveragerc use the
    no cover pragma to skip code paths that can never be
    reached from being counted in the coverage report.
    This affects the abstract constructors in the Factory
    classes
* Mon Sep 28 2020 David Cassany <dcassany@suse.com>
  - Refactor BootLoaderInstall
    This commit refactors BootLoaderInstall class to make it a proper
    factory class. In addition type hints are added for the constructor
    method.
    Related to #1498
* Fri Sep 25 2020 David Cassany <dcassany@suse.com>
  - Refactor BootLoaderConfig
    This commit refactors BootLoaderConfig to turn it into a proper factory
    class and to also include type hints to facilitate it's use from an API
    POV.
    Related to #1498
* Fri Sep 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix/Refactor s390 support
    This changes the s390 support on several stages:
    1) On s390 the boot process is based on zipl which boots into an
    initrd from which a userspace grub process is started to support
    the grub capabilities. The implementation of this concept is
    provided via the grub2-s390x-emu package. Once installed the
    setup of the bootloader is done via the grub2-mkconfig and
    grub2-install commands and therefore from a caller perspective
    the same as with any other grub2 setup process. For kiwi this
    means no extra zipl bootloader target code is needed. Therefore
    this commit deletes the zipl setup from kiwi and puts on
    the standard grub2 process. This Fixes bsc#1170863
    2) To support different targettypes the grub2-s390x-emu provided
    zipl template must be adapted. Parts of the former zipl bootloader
    setup therefore now applies to an update of the zipl2grub
    template file
    3) Support for CDL/LDL DASD targets has been disabled in the schema
    When testing 4k devices and a respective zipl2grub template
    setup for CDL/LDL targettype it has turned out that grub2-install
    is not able to run on such a device. My assumption is that
    the device code in grub2-install does not work for 4k devices
    with an fdasd created partition table. As this needs further
    investigations and most probably adaptions on the grub toolchain
    for s390, we disabled the setup of these modes for now.
    emulated DASD (FBA) and SCSI targets stays supported.
* Wed Sep 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for package changelog info
    In addition to the .packages file which shows details about
    the installed packages in terms of version, license, etc...
    we now also create a .changes file which contains the changelog
    information of the installed packages. The file can be used
    to compare the package changelogs between image builds.
* Wed Sep 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor BootImage Factory
    This commit refactors the BootImage factory to be a real
    factory and to add type hints such that its use from an api
    perspective is clear and enforced. Related to Issue #1498
* Wed Sep 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.13 → 9.21.14
* Wed Sep 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed s390/sle15 Virtual disk integration test
    The integration test used FBA mode as target. As the target
    is expected to be KVM this is the wrong setting. SCSI should
    be used instead. This Fixes bsc#1170863
* Wed Sep 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Followup fix to handle one disk type better
    The vmx type is auto converted into an oem type with rootfs
    resize disabled such that all disk images can be handled
    under one disk type. However people who run kiwi on the
    commandline and have selected --type vmx before now end
    with an error message saying that there is no vmx type
    because it was converted into an oem type. To handle this
    more gracefully this commit changes the commandline
    option --type vmx into --type oem if provided and prints
    a warning message.
* Tue Sep 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor ImageBuilder Factory
    This commit refactors the ImageBuilder factory to be a real
    factory and to add type hints such that its use from an api
    perspective is clear and enforced. Related to Issue #1498
* Tue Sep 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.12 → 9.21.13
* Tue Sep 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup grub adaptions code
    The grub setup code has some after grub-mkconfig code that
    fixes the written grub.cfg file on certain conditions. For
    a better understanding and readability those conditions
    and reasons are now put into private _fix* methods that
    explains why we need to patch the written grub config file.
    We all hope that those methods can go away when grub gets
    fixed properly. This Fixes #1527
* Mon Sep 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cosmetic update for build status helper
    Show disabled integration test builds with a clear indicator
* Mon Sep 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.11 → 9.21.12
* Mon Sep 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added consistency runtime check for the type setup
    multiple type sections within one preferences section is allowed
    in a kiwi image description. However, if multiple type sections
    for the same image attribute are configured only the last type
    configuration will be ever reachable. The proposed runtime check
    in this commit detects this situation and raises an exception
    showing the conflicting types including a solution suggestion
    which needs to be based on profiles to distinguish between
    types of the same image type name.
* Mon Sep 21 2020 David Cassany <dcassany@suse.com>
  - Get default maintainer and author from image description
    This commit sets the maintainer and author metadata from the description
    section of the image in they are not explicitly specified in
    container-config section.
    In addition it sets the default container name to `system-container`
    instead of `systemContainer` as uppercase letters are not valid for
    docker container references.
    Fixes #1419
* Fri Sep 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.10 → 9.21.11
* Fri Sep 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update build test directory names
    Name the build test directory to follow the changes done
    in Issue #1425. There is only one disk image type now, thus
    the tests for testing disk images should indicate that
    better. Also the tests that build live iso images should
    indicate a live iso not only an iso as it could be mixed
    up with an install iso
* Thu Sep 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Consolidate build test names and description
    Update build test image names to be more generic and not
    bound to a specific version of a distribution. As the tests
    are usually based on rolling releases of distros the name
    of the test image should be generic. Also adapted the
    specification of the test images to describe the focus
    of the test if not generic.
* Wed Sep 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.9 → 9.21.10
* Wed Sep 16 2020 David Cassany <dcassany@suse.com>
  - Fix the early boot grub.cfg file
    This commit makes sure that the early boot configuration files
    for grub make use of the proper boot path and omiting the `/boot`
    prefix if there is a dedicated boot partition.
    Fixes #1553
* Tue Sep 15 2020 Vincent Moutoussamy <3873925+vmoutoussamy@users.noreply.github.com>
  - Change Appliance names to drop the name LimeJeOS
    The name LimeJeOS was an invention of the SUSE Studio project.
    Since the project does no longer exist, users have no idea
    what the name means. Therefore the integration tests as well
    as the documentation now changes the image names to provide
    more clarity. This Fixes #1544
* Mon Sep 14 2020 David Cassany <dcassany@suse.com>
  - Include loadenv as a default module for grub images
    This commit includes the 'loadenv' module to the list of basic grub
    modules. This makes sure the module is included in any grub-mkimage
    that KIWI does.
    Fixes #1547
* Sun Sep 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make oem be a superset of vmx
    A vmx image is the same disk as an oem just without the dracut
    repart/resize feature. This difference is better handled with
    an oemconfig parameter <oem-resize> which allows to switch resize
    on or off. The extra image type vmx will be dropped and an XSLT
    stylesheet automatically transforms a vmx description to be a
    oem image with the resize feature switched off.
    This Fixes #1425
* Fri Sep 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make oem image use dracut by default
    Before this commit an oem image still had the kiwi initrd_system
    set as default. As we are decommission the custom kiwi initrd
    concept the default should be changed. It is still possible to
    use a custom kiwi initrd but it needs to be explicitly requested
    via the initrd_system="kiwi" attribute. In addition to the
    changed default a runtime check was introduced that checks
    the presence of the boot= attribute which only makes sense
    in combination with the kiwi initrd_system. If boot= is
    set but initrd_system="kiwi" is not, a message is raised that
    explains the situation and either requests setting initrd_system
    properly or deleting the boot attribute. The change only
    affects people who still use oem with a boot="oemboot/..."
    setting and no explicit selection of kiwi as the initrd_system.
    As these image type configurations should not be in use anyway
    because this is all legacy and announced to go away, we
    need to make the next step and enforce a new default in
    code. This is related to Issue #1299
* Wed Sep 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.8 → 9.21.9
* Tue Sep 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support dynamic linux/linuxefi in any case
    Instead of restricting the dynamic linux vs. linuxefi setup
    to a specific grub version, support this setup for any version
    of grub. This Fixes bsc#1175729 and bsc#1176134
* Tue Sep 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Explicitly set start sector for msdos repartition
    When using the sfdisk(>=2.26) tool the start and end of partitions
    aligns to block-device I/O limits. This means it's hardware specific
    what values sfdisk picks. In a repart operation this is however
    dangerous for the start sector which must be the same to prevent
    corruption of the data in the partition when kiwi resizes it.
    Therefore this commit uses the sfdisk dump command to read the
    start sector for deleted partitions and uses that start sector
    if the same partition gets recreated such that only the end of
    the partition changes and gets aligned properly.
    This Fixes #1543
* Mon Sep 07 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Complete documentation of type attributes
    Some type attributes e.g efipartsize and others were not
    documented properly. This Fixes #1532
* Mon Sep 07 2020 David Cassany <dcassany@suse.com>
  - Strip package and archive names
    This commit strips the package and archive names string to trim any
    trailing or heading space included into the XML.
    Fixes #1494
* Sun Sep 06 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.7 → 9.21.8
* Thu Aug 27 2020 David Cassany <dcassany@suse.com>
  - Make use of POSIX locale in Arch Linux integration tests
    Current Arch Linux (August 2020) has no other locale than POSIX or
    C enabled on the system by default. In fact, to enable further locales
    in Arch it is required to uncomment the desired ones in `/etc/locale.gen`
    and then execute the tool `locale-gen`, after that the selected locales
    are eligible for the common system adminstration tools such as
    `localectl`.
    In KIWI the locale setting happens before running `config.sh` so there
    aren't changes to generate any custom locale before applying the value
    configured in the description XML file.
* Thu Aug 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed legacy custom kiwi initrd based image builds
    This patch is two fold:
    * Image builds that uses the kiwi initrd system did not apply
    the grub config file fixes because the root= parameter is
    an optional information when using a kiwi initrd. However
    this information is required to apply the grub config file
    fixes. Therefore this patch simplifies the kernel commandline
    processing such that it is the same for dracut and custom
    kiwi initrd based systems. This means root= is passed in
    any case.
    * The other part of the patch disables the method that strips
    unused libraries from the custom kiwi initrd. It has turned
    out that is safes us almost nothing but could causes corrupted
    initrds missing important libraries e.g libpam which is linked
    against udev and other tools. Therefore libpam is also added
    to the protected strip list
* Thu Aug 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed legacy oem test build
    install gawk package in bootstrap to avoid conflict in
    tumbleweed between gawk and busybox-gawk
* Wed Aug 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added s390 SLE15 integration tests
* Tue Aug 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added suse integration test built with dnf
    Use dnf to build a suse image
* Thu Aug 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Include box plugin images to build_status
    Also show some colors for failed and unresolvable builds
* Tue Aug 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.6 → 9.21.7
* Tue Aug 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed archlinux integration test build
    The setup of the locale via systemd-firstboot --locale=en_US.UTF-8
    failed on archlinux with the error message Locale en_US.UTF-8 is not
    installed. This commit sets the locale explicitly
* Tue Aug 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed GCE integration test build
    nothing provides google-compute-engine-init
* Tue Aug 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed bootloader grub copy SameFileError exception
    Only copy the file if the given source and destination are
    not the same file
* Tue Aug 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Simplify build_status helper
    Instead of a static list with all integration test build names
    only maintain a list of integration test build project names
* Tue Aug 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.5 → 9.21.6
* Mon Aug 10 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed doc structure for image types
    The documentation did not differentiate correctly between
    the explanation of the image types, their results and the
    build host constraints compared to the documentation that
    actually describes how to build an image for those types.
    This Fixes #1520
* Fri Jul 24 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Skip filesystem check for XFS prior xfs_grow
    running xfs_repair check isn't strictly necessary before resizing,
    and in some cases it may even prevent resizing by giving an error
    that would be cleared through mounting the fs (e.g. when the fs
    wasn't cleanly umounted, and thus letting xfs recover and replay
    its journal). Given that xfs can only grow online (while being mounted),
    this is sufficient to ensure that the fs is in a state where it
    can be resized. This is related to bsc#1174009
* Fri Jul 24 2020 David Cassany <dcassany@suse.com>
  - Remove tuned daemon from CentOS integration test
    tuned daemon causes issues at install time with grub configuration.
    The build host configuration affects BLS entries generation if tuned
    deamon is around. This is likely to cause issues in general and it
    actually cause issues in OBS builds (because of a non standard highly
    customized build environment).
* Fri Jul 24 2020 David Cassany <dcassany@suse.com>
  - Add Fedora RawHide test
    This commit upgrades the Fedora 30 test to a Fedora RawHide integration
    test in OBS. Note that an archive needs to be added at bootstrap phase
    to include `/etc/kernek/cmdline` configuration file to ensure the BLS
    entries are properly generated under OBS worker hosts.
* Fri Jul 24 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed code logic in resize_filesystem method
    resize_filesystem runs fs-check on the filesytem prior to
    resize. This check however should not be done if the filesystem
    got deployed on a ramdisk. For that purpose the _is_ramdisk_device
    method exists. The logic in the method as well as the call
    were wrong. This in the end lead to a correct logic but is
    completely confusing. This commit fixes and simplifies the
    _is_ramdisk_device method and corrects the caller logic
* Wed Jul 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make sure kernel options are respected by grub
    Set options variable in grub loader/entries to match the
    kiwi image description setup. This adaption currently
    happens only when building in OBS because in this env
    the options setup done by grub is a complete mess.
* Wed Jul 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed root replace for grub menu entries
    The root device spec in the grub boot/loader/entries/*.conf
    files when building in OBS is not matching the loop mapped
    image root device but matches the root device of the OBS worker.
    Very strange behavior and of course wrong. Because of that
    the expression to replace the wrong device with the correct
    one must be a regular expression and cannot be based on the
    loop mapped image root device.
* Wed Jul 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed path to search for grub menu entries
* Wed Jul 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed scope of remove_hierarchy
    The remove_hierarchy method walked through the entire path
    it was given. That included the root path which is beyond
    its scope. This Fixes #1515
* Wed Jul 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed corrections in BootLoaderSpec grub config
    Distributions like Fedora RawHide or CentOS8 applies to the
    grub BootLoaderSpec as described here:
    https://www.freedesktop.org/wiki/Specifications/BootLoaderSpec
    Part of the spec is that menu entries are handled in extra files
    below /boot/loader/entries. Unfortunately the grub2-mkconfig code
    has still no clue how to find the correct root device in special
    environments like obs workers or in overlay systems. To fixup the
    result of grub2-mkconfig there is code in kiwi which needs to be
    adapted because the file that contains the wrong information is
    now no longer grub.cfg but some /boot/loader/entries/*.conf file.
    This commit solves the issue.
* Thu Jul 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed grub setup in EFI/BOOT directory
    kiwi copied the same grub.cfg file as it exists in boot/grub2
    to the efi path. This is wrong as the setup in the efi boot
    directory is used to enable normal grub loading and not providing
    the user grub configuration. In addition the changes here makes
    sure that the early grub boot code is placed into the system
    in any EFI case except for secure boot when shim-install is
    present. If shim-install is present it also creates the early
    grub boot setup such that kiwi doesn't have to do it.
    This Fixes #1491 and Fixes bsc#1172908
* Wed Jul 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use rsync in inplace transfer mode
    Using the --inplace option in rsync helps to save space on
    syncing the rootfs data and prevents e.g OBS workers from
    running out of VM space when transfering root filesystem
    data. Also using --inplace allows to keep hardlinks intact.
    This is related to bsc#1096738
* Wed Jul 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Don't keep copy of grub2-install in the system
    To prevent shim-install from calling grub2-install in uefi mode
    kiwi temporary replaces the tool by a noop. This acts as a
    workaround for an issue in shim-install. However the workaround
    left a file copy of grub2-install in the system which should
    not happen. This commit Fixes bsc#1173226 and Fixes #1490
* Tue Jul 14 2020 David Cassany <dcassany@suse.com>
  - Rename CentOS 7 test and add CentOS 8 test
    This commit renames the CentOS 7 test and adds a new CentOS 8 test
    Related to #1468
* Tue Jul 14 2020 David Cassany <dcassany@suse.com>
  - Update Ubuntu and Debian image tests
    This commit updates Ubuntu test to Focal distribution and adds an
    additional Debian Buster image test.
    Related to #1468
* Mon Jul 13 2020 David Cassany <dcassany@suse.com>
  - Include CentOS vendor in grub2 configuration
    This commit ensures the vendor files for grubenv consider CentOS
    vendoring.
* Wed Jul 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed documentation for OEM swap partition
    A swap partition in an OEM deployment is only created if
    that is explicitly requested via the oem-swap element
* Wed Jul 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.4 → 9.21.5
* Wed Jul 08 2020 David Cassany <dcassany@suse.com>
  - Do not create a md5 checksum output file for archive images
    This commit removes the creation of the md5 file that includes a
    checksum of the image binary for the `tbz` image type. Removing it
    as this is the only image type that includes it as part of the result
    and because the bundle procedure already creates a sha256 file out of
    the results, so there is still the chance to produce validation
    checksums.
* Fri Jul 03 2020 David Cassany <dcassany@suse.com>
  - Document output files KIWI produces
    This commits adds a chapter to describe the ouput files that are part
    of any image build.
* Fri Jul 03 2020 Christian Schneemann <schneemann@b1-systems.de>
  - Fixed oem recovery tar parameter order
    Reorder tar parameters
    When building an oem-image with oem-recovery set to true a tar error appears saying:
    "The following options were used after any non-optional arguments in archive create or
    update mode". This commit fixes the order of arguments to tar to avoid the error condition.
    Fixes #1501
* Thu Jul 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed tox min version
* Thu Jul 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup setup.py
    The way kiwi uses setup.py assumes that pip runs this script
    like a spec file in rpm is processed. However this is not the
    case given that pip implicitly creates a static zip file called
    wheel which looses all the code logic done in setup.py. Therefore
    setup.py should not contain code that needs to run at install
    time. Of course this change comes with an effect which is that
    the following files will not be available when installing kiwi
    from pip:
    * man pages: /usr/share/man/man8/...
    * command completion: /etc/bash_completion.d/kiwi-ng.sh
    * kiwi default config file: /etc/kiwi.yml
    * package docs: /usr/share/doc/packages/kiwi-ng/...
    (kiwi.pdf, LICENSE, README)
    kiwi stays fully functional without this information. It is
    expected that the installation of kiwi as a service will
    be done by a package and its package manager. When using kiwi
    from pip it is designed to provide a python module but not
    a complete user application. The way pip and wheels interact
    with each other seems to demonstrate that pip is not a
    package manager but more a python module manager.
    This Fixes #1415
* Thu Jul 02 2020 Thomas Schraitle <tom_schr@web.de>
  - Describe targets in tox.ini
    * Make use of description to show them with "tox -av"
    * Use comments as "description" lines
    * Define minimal tox version (3.5.0)
* Wed Jul 01 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.3 → 9.21.4
* Fri Jun 26 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor FileSystem Factory
    With regards to Issue #1486 a discussion came up that the
    way factories are implemented are questionable when thinking
    about strong typing for the public kiwi interface. This
    commit refactors the FileSystem factory to be a real factory
    and to add type hints such that its use from an api perspective
    is clear and enforced.
* Thu Jun 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.2 → 9.21.3
* Thu Jun 25 2020 David Cassany <dcassany@suse.com>
  - Fixes live ISOs
    This commit fixes iso images. Due to a change introduced in c7ed1cf
    live ISOs were no longer booting as the rootfs.img filesystem was
    copied to the squashfs container while being still mounted. Because of
    that, at boot time, it refused to mount.
    This commit adds umount method for the filesystem base class, so it
    can be umounted before deleting the instance.
    Fixes #1489 and bsc#1173356
* Fri Jun 19 2020 Bo Maryniuk <bogdan.maryniuk@elektrobit.com>
  - Global variables (#1485)
    * Fix according to PEP8
    * Refactor global variables pythonic way
    * Remove unused import
* Thu Jun 18 2020 David Cassany <dcassany@suse.com>
  - Add locale configuration hints in docs
* Wed Jun 17 2020 Bo Maryniuk <bogdan.maryniuk@elektrobit.com>
  - Add missing decorator for static methods
* Tue Jun 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation in content and structure
    This commit adds a documentation for the KIWI XML description.
    In contrast to the former auto generated code from the XML
    schema this document can now finally be used as a reference.
    Along with that new chapter all auto generated and static
    html content as been deleted. Also all helper scripts around
    the proprietary oxygen tool and our schema doc generator
    has been deleted. Auto generating this information does not
    lead to a reference guide people can really work with.
    As a consequence to these changes this commit also includes
    some changes of the structure such that no information written
    by other people in the past gets lost. This Fixes #1421
    and Fixes #1474
* Mon Jun 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.1 → 9.21.2
* Fri Jun 12 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed check for root device in grub config
    There is a code path that fixes the grub2-mkconfig used root device
    when building in an environment that does not allow to resolve the
    by-X path names, e.g an obs build worker without udev. For images
    that explicitly defines a root=... value in the kernelcmdline
    attribute the root device check was not called because the
    _get_root_cmdline_parameter method returns None. This commit fixes
    the method to return the expected root device in any case such that
    the grub2-mkconfig root device check has a chance to fix what
    grub2-mkconfig has created. This fixes bsc#1172928
* Fri Jun 12 2020 David Cassany <dcassany@suse.com>
  - Remove /etc/sysconfig/language support
    As of SLE15 and onwards /etc/sysconfig/language is considered to be
    obsolete and just kept for compatibility purposes. Thus there is no
    need to manage the file anymore.
    Fixes #1471
* Fri Jun 12 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.21.0 → 9.21.1
* Fri Jun 12 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed test-image-qcow-openstack
    Nothing provides libyui-ncurses-pkg11, yast2-trans-en_US in
    TW anymore
* Fri Jun 12 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moved sle12 ppc integration test to internal bs
    In agreement with IBM the sle12 integration test has been moved
    into the internal buildservice. The reason for this change is
    a python 3.4 compatibility problem. This version of python is
    used in sle12 but would require patching of upstream kiwi in
    terms of type hints and annotations to continue to work.
    We don't want to cary this patch upstream but in the sle12_kiwi
    repository which contains the kiwi used in sle12. Therefore
    also the integration test needs to move into the internal
    sle12 space.
* Thu Jun 11 2020 Bo Maryniuk <bogdan.maryniuk@elektrobit.com>
  - Ignore MyPy cache
* Thu Jun 11 2020 Bo Maryniuk <bogdan.maryniuk@elektrobit.com>
  - Ignore VSCode cache
* Wed Jun 10 2020 Dan Čermák <dcermak@suse.com>
  - Remove sed calls to fix /etc/vimrc
    An update of vim in Tumbleweed will move /etc/vimrc to /usr/share/vim as part of
    the /usr - /etc split. This makes the sed call fail because /etc/vimrc no longer
    exists.
    However, the fix is not required anymore then, as the vim package dropped the
    "syntax on" line from the default vimrc.
* Tue Jun 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed permissions of custom boot image root dir
    When building a custom kiwi initrd the root directory
    has the permissions of the mkdtemp created directory
    but should have the permissions of a linux root dir
    which is 0755. This Fixes #1394
* Sat Jun 06 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.19 → 9.21.0
* Thu Jun 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed size of msgbox dialog
    The width of the dialog was set to a small value which
    causes the message to be choped. I found this when testing
    pxe deployments. The error messages on "Failed to fetch..."
    were missing the interesting part
* Wed Jun 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update orthos test image
    Simplify image for use in a pxe test deployment
* Wed Jun 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added new post disk sync script hook
    Allow to put a disk.sh script as part of the image description
    which is called for the disk image types `vmx` and `oem`
    only and runs after the synchronisation of the root tree into the
    disk image loop file. At call time of the script the device name
    of the currently mapped root device is passed as a parameter.
    The chroot environment for the call is the mounted disk itself
    which makes this different from the config.sh/images.sh caller
    environment. This Fixes #1464
* Wed Jun 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update user defined scripts documentation
    Added information about new disk.sh script and reworked
    the entire chapter
* Tue Jun 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed VolumeManager cleanup
    instances of VolumeManager creates temporary directories but
    only stores the latest one. The cleanup leaves former directories
    behind which is fixed by this commit
* Fri May 29 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow to access disk root after sync_data
    In preparation to allow a chroot operation into the loop
    mounted disk this commit refactors the process when filesystems
    gets umounted and also fixes the canonical order for calling
    the destructors. Related to Issue #1464
* Wed May 27 2020 David Cassany <dcassany@suse.com>
  - Add EFI firmware on OEM and ISO ubuntu tests
    This commits adds efi firmware for Ubuntu integration tests
* Wed May 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.18 → 9.20.19
* Wed May 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added test-image-custom-partitions to build_status
* Tue May 26 2020 David Cassany <dcassany@suse.com>
  - Fix the boot path for initrd detection
    This commit fixes the path to check the initrd naming convetion from an
    already existing initrd file in /boot
* Tue May 26 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.17 → 9.20.18
* Tue May 26 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added custom partition image integration test
    There are still people who like many extra static inflexible
    entries in a partition table instead of using LVM or filesystem
    volume capabilities for sometimes good but often questionable
    reasons. In kiwi we intentionally support partition table
    entries on a restricted basis but that does not mean you can't
    create an image with a highly customized partition table.
    However it includes some bits of custom code as part of the
    image description and that's what this reference implementation
    of an image with custom partitions demonstrates. The image
    described here adds three extra partitions, var, var/log and
    var/audit. The concept to create custom partitions is based on
    specifying a spare partition which is by default created before
    the root partition. The spare space can now be sliced into as
    many partitions as needed and that needs to be implemented by
    the author of the image description. Of course the partition
    table itself comes with limitations which has to be respected
    depending on the partition table type.
* Tue May 26 2020 David Cassany <dcassany@suse.com>
  - Fix the patch applied on grub.cfg
    This commit fixes the patch applied on grub.cfg when EFI mode is
    selected and grub < 2.04. There are some distros that make use of the
    `linux16` command instead of `linux` in grub configuration, this commit
    extends the regex to also consider `linux16` command.
* Tue May 26 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed apt and pacman repository unit tests
    The way the post_init method was used to test custom arguments
    leads to a broken I/O wrapper. As consequence the test failed
    when called with "pytest -s" and also leaves files around from
    other test I/O redirections.
* Tue May 26 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec file on bare word comparison
    on e.g Fedora Rawhide rpm complains about bare word comparison
    error: bare words are no longer supported, please use "..."
    This patch fixes the spec template to respect this
* Mon May 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.16 → 9.20.17
* Mon May 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed dracut output file format detection
    The current way to detect the dracut output file format was
    based on a lookup of the format used in the dracut tool itself.
    However there are distributions like Ubuntu which calls dracut
    and passes the name of the initrd file as options to the call.
    This invalidates the checking done by kiwi. The only chance
    for kiwi to do the same than the distributions does is by
    looking for an initrd file pre-created by the package
    installations and use the same format. Only if no such initrd
    file exists the former format detection code applies. The
    additional code expects any initrd file to match the glob
    pattern 'init*'. This Fixes #1450
* Mon May 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed line ending of sha256 bundler file
    The .sha256 file does not end with a newline. This Fixes #1449
* Mon May 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix scope for linuxefi grub config adaption
    In kiwi we support a one time patch for the grub config file
    that changes the static use of linuxefi to be dynamic. In
    grub2 >= 2.04 all this has already been fixed but for grub2
    version older than this version we applied the patch. The
    patch however was only applied based on the presence of a
    grub setting named GRUB_USE_LINUXEFI. It has turned out that
    this variable is a custom extension not part of grub upstream
    which makes the test functional only on distributions that
    supports this setting. The use of linuxefi however is code
    that belongs to grub upstream. Therefore this patch changes
    the scope of the one time patch to be only based on the
    version of grub no matter if GRUB_USE_LINUXEFI is supported
    by the distro or not. This Fixes #1453
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed root device setup in vendor grubenv
    In addition to the root device setup in grub.cfg we also
    need to patch the vendor grubenv file which contains an
    invalid kernelopts value written by grub2-mkconfig under
    the conditions explained in Issue #1287. This Fixes
    Issue #1454
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.15 → 9.20.16
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed schematron rule for bootloader targettype
    The targettype attribute must be allowed for the grub2_s390x_emu
    bootloader name
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.14 → 9.20.15
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed parse result description reference
    The object that holds the parse result also contains an
    information about description_dir and derived_description_dir.
    The change on the markup processing impacted the value for
    description_dir to be no longer the origin (user provided)
    directory. That broke any reference of files that belongs
    to the description directory like custom scripts config.sh,
    images.sh and so on.
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed sdist MANIFEST
    kiwi.markup was not part of the source tarball
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.13 → 9.20.14
* Fri May 22 2020 David Cassany <dcassany@suse.com>
  - Remmove any Recommends for CentOS7
    This commit fixes the package spec for CentOS 7. In CentOS 7 there is no
    support for weak dependencies. In 9792cea1 a recommended dependency on
    gpg tools was included for all builds and this caused a failure for
    CentOS 7. With this commit, the recommended dependency, is omitted for
    any pre CentOS 8 distro.
* Fri May 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.12 → 9.20.13
* Wed May 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor dracut disk re-partition library
    The kiwi repartition code for msdos and gpt tables was based
    on the parted tool. However parted requires to give start and
    end addresses to describe a space in the partition table. The
    numbers were calculated in kiwi based on cylinders. The mapping
    into cylinders is a virtual number that plays no role under
    Linux and vanished completely with newer storage technologies.
    Tools like sgdisk and sfdisk are better prepared to handle
    disk partitioning and also makes this a more straight forward
    code in kiwi. Thus this commit refactors the re-partition code
    to drop parted and use a dedicated tool depending on the
    partition table type. This Fixes #1406
* Wed May 20 2020 David Cassany <dcassany@suse.com>
  - Fix default repositories for APT
    This commit fixes the default repositories configuration for APT.
    Fixes #1439
* Mon May 18 2020 David Cassany <dcassany@suse.com>
  - Include recommend for gpg tool
* Fri May 15 2020 David Cassany <dcassany@suse.com>
  - Fix signing keys management for APT
    This commit fixes the management of the trusted keyring for apt
    repositories. It creates a `trusted.gpg` keyring with the provided
    signing keys so APT can check against that the configured repositories.
    Fixes #1440
* Thu May 14 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec file
    This patch is two fold. First the py2 version of kiwi was
    dropped since py2 is EOL. To indicate that correctly on the
    package level python3-kiwi has to obsolete python2-kiwi.
    The other part of the change is a file conflict of the
    files:
    etc/bash_completion.d/kiwi-ng.sh
    /usr/share/doc/packages/python-kiwi/README
    which were provided by the kiwi-man-pages sub-package but
    were moved to be provided by the main python3-kiwi package
    now. On update of the package with an older version of
    kiwi that maintains this files to belong to kiwi-man-pages
    a file conflict at install time appears. To solve this
    python3-kiwi now conflicts with kiwi-man-pages < %{version}
    This Fixes #1413 and Fixes bsc#1168973 and bsc#1156677
* Wed May 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup use of machine platform name
    in kiwi we handle 32bit x86 architecture names as ix86. This is
    done by checking i586 and i686 32bit arch names. However those
    checks are spread over the entire kiwi code base and should be
    consolidated into one method. The cleanup of those arch name
    usage fixes an inconsistency between the arch name used in the
    disk builder and the arch name used in the subformat image
    formats. This Fixes #1438
* Wed May 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed zypper error code validation
    The error code 127 - command not found, was not treated as
    an error. This commit adds 127 to be an error condition
    along with the other 1xx error codes from zypper that are
    handled as errors. This Fixes #1430
* Wed May 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added archlinux to build_status helper
    Show the archlinux build results in the build_status
    helper script
* Wed May 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added sidebar link to ArchLinux build tests
* Tue May 12 2020 David Cassany <dcassany@suse.com>
  - Fix string formatting
    After a flake8 upgrade to v3.8.0 these changes were required to pass
    the `tox -e check` validation.
* Tue May 12 2020 David Cassany <dcassany@suse.com>
  - Add Arch Linux integration tests for x86_64
* Mon May 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support multiple markup formats
    Allow to read multiple markup formats. Supported are XML
    and YAML. The parsing and transformation is based on the
    anymarkup module. The use of anymarkup is optional and
    implemented as an on demand loading module. If a user
    uses a yaml config file or a request to convert into
    yaml is made without an installed anymarkup module an
    exception is thrown
* Mon May 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed boxbuild documentation
    The command doesn't have to be called as root. Therefore
    the example should not be used with sudo prefix
* Mon May 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow setup of serial line in bootloader
    So far kiwi used a static serial line setup of the console
    type was configured to use a serial console. However if
    different parameters are needed there was no way to change
    the static setup. This commit adds a new bootloader attribute
    called serial_line which allows to specify the serial line
    parameters for the grub bootloader e.g
    serial_line="serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1"
    Please note serial_line takes the value as it is given and
    adds this as a line to the grub configuration or as content
    to the variable GRUB_SERIAL_COMMAND. No further validation
    of the information takes place by kiwi. This Fixes #1401
* Mon May 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support grub timeout_style parameter
    Grub supports a style setting that influences the display of
    the menu depending on the configured timeout value. With this
    patch kiwi allows to specify the style via a new bootloader
    parameter named timeout_style="hidden|countdown". If not set
    the grub default applies which shows the menu in any case.
    This Fixes bsc#1165730 and Fixes #1404
* Fri May 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.11 → 9.20.12
* Fri May 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update build tests to match new schema v7.2
* Thu May 07 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor setup of bootloader parameters
    The bootloader settings are handled through attributes in the
    type element. Over the years some attributes were added and
    there are requests for more settings. Therefore the bootloader
    setup deservers its own section. With this commit the schema
    changes from v7.1 to v7.2 and moves bootloader, bootloader_console
    boottimeout and zipl_targettype into a new bootloader subsection
    below type. The commit also adds an auto transformation template
    such that customers don't have to change their image descriptions.
    This is related to Issue #1401
* Tue May 05 2020 Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
  - Fix support for multiple dracut modules
    Passing the dmsquash flag adds dmsquash-live and livenet modules to
    dracut. This broke when adding a check to only add modules that dracut
    reports as available. Use a list instead of a string to represent the
    modules to add.
    Fixes: 07ea23a4
* Mon May 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Rewrite chapter about self-contained builds
    Document the new boxed build plugin. The former solution
    with dice will be deprecated in favor of the kiwi plugin.
    This is related to Issue #1409
* Mon May 04 2020 David Cassany <dcassany@suse.com>
  - Clean AnonymousUniqueId
    This is a follow up commit for 469f71144. There is not need to remove
    the `/var/lib/zypp/AnonymousUniqueId` file from the clean up method
    since this has been already integrated inside the python code base
    and this is not needed anymore as a helper function.
* Fri May 01 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.10 → 9.20.11
* Fri May 01 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Oxygen schema documentation
* Fri May 01 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed headline for schema docs chapter
    Use the same headline for the schema chapter in the
    schema_docs generator as in the default source file
* Fri May 01 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.9 → 9.20.10
* Thu Apr 30 2020 David Cassany <dcassany@suse.com>
  - Clean AnonymousUniqueId from the image
    This commit is two fold.
    For one side does a small refactor to move the deletion of custom RPM
    macros to package manager level inside a cleaning method. This way only
    RPM based package managers run RPM specific code and each package manager
    can apply its own specific logic.
    On the other hand for the zypper package manager the deletion of
    /var/lib/zypp/AnonymousUniqueId file has been added as part of the
    new cleaning method.
    Fixes #1396
* Thu Apr 30 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added kis type to image attribute
* Wed Apr 29 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use auto video mode as default for grub
    An explicit video mode 800x600 was used for grub if no
    video mode setup exists in the XML description. For grub
    this should better result in the auto mode. Related to
    bsc#1165730
* Tue Apr 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Do not set GRUB_DISTRIBUTOR
    grub mkconfig creates a proper string based on /etc/os-release
    if GRUB_DISTRIBUTOR is not set. We assume this to be true
    for all distributions. This Fixes #1416
* Tue Apr 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec file header information
    Fixed copyright date/company and url path to project
* Tue Apr 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed ovf Machine section setup for virtualbox
    Required attributes/sections name, ostype, uuid and StorageControllers
    were missing according to IVirtualBox::createMachine documentation
    from here:
    https://www.virtualbox.org/sdkref/interface_i_virtual_box.html
    This Fixes #1322
* Mon Apr 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added new build type kis
    KIS is an abbreviation for Kernel, Initrd, System and defines a
    highly customizable image consisting out of these components.
    This commit performs the changes documented in #1414 and
    introduces the new kis type. From an image build perspective
    kis is currently the same as pxe with restrictions for kis
    on the schema level. A kis build uses dracut and does not allow
    to use the legacy netboot initrd. The pxe type will therefore be
    exclusively used to built for the legacy netboot infrastructure
    and is on its way to deprecation in the future.
    This Fixes #1262
* Thu Apr 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added KIS chapter
    A new chapter to document KIS images. KIS is an abbreviation
    for Kernel, Initrd, System and defines a highly customizable
    image consisting out of these components. This Fixes #1346
* Thu Apr 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move the self-contained chapter to the toplevel
    This chapter will be rewritten when the new kiwi box
    plugin is available and deserves a space on the toplevel
    page
* Thu Apr 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Moved chapters from building to working
    Chapters build_in_buildservice and build_with_profiles
    belongs more to working with images
* Thu Apr 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor netboot chapters
    All information about network boot that references the legacy
    netboot code has been moved into one chapter at working_with_images
    named legacy_netboot_root_filesystem.rst
* Thu Apr 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update article about network live boot
    Added a note about the configured PXE loader
* Thu Apr 23 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update boot server setup chapter
    Describe the general setup procedure to setup DHCP and TFTP
    services using dnsmasq for clients to boot with either
    pxelinux or grub loaders
* Thu Apr 23 2020 David Cassany <dcassany@suse.com>
  - Add flags and argument separator for zypper
    This commits adds a `--` argument in zypper install calls right after
    the flags and before the arguments (in this case packages) list.
    Fixes #1407
* Wed Apr 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Disable AudioAdapter for vagrant
    The kiwi template for vagrant images assumes the box files to
    be used in non graphics mode and for the purpose of automation
    or server deployment. Thus by default we disable Audio.
    For details see the API reference:
    https://www.virtualbox.org/sdkref/interface_i_audio_adapter.html
    This Fixes #1322
* Wed Apr 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added check_syslinux_installed_if_isolinux_is_used
    ISO images that are configured to use isolinux requires the host
    to provide a set of syslinux binaries. The runtime check makes
    sure to check for this condition early including a proper message.
    This Fixes #1376
* Fri Apr 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.8 → 9.20.9
* Fri Apr 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed _get_grub2_mkconfig_tool
    Last patch on this method breaks the search for alternative
    mkconfig names. It returns always on the first lookup which
    could be none. This breaks on systems that uses a different
    name than grub2-mkconfig, like on Ubuntu.
* Thu Apr 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.7 → 9.20.8
* Thu Apr 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Increase spare space on disk repart
    The sizing of the virtual cylinders in parted seems to be unfavorable,
    as with some disks and SD cards here the device size is not a multiple
    of the cylinder size, so the last incomplete cylinder is wasted.
    If this wasted space is more than 5MiB, kiwi tries to resize indefinitely.
    Therefore min_additional_mbytes gets increased to prevent running
    into this situation. This Fixes bsc#1165823
* Thu Apr 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed return value from _get_grub2_mkconfig_tool
    The method returned the basename of the tool if it could
    be found by Path.which(). But the method's scope has been
    changed in a way that the return value of the method must
    be the result from Path.which() to allow working on the
    full path name.
* Thu Apr 16 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.6 → 9.20.7
* Wed Apr 15 2020 David Cassany <dcassany@suse.com>
  - Make CommandCapabilities.check_version take the longest match
    This commit ensures that when trying to parse the version of a tool
    the comparison is done with the longest match for the given regular
    expression. This solves cases such in `grub2` where the tool name
    already provides some digit that could be seen as a version.
* Wed Apr 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed check for grub mkconfig capabilities
    The check for the capabilities of the tool were applied to
    the tool installed on the host but the later call of the
    tool will be done with the tool inside the image root
* Wed Apr 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Validate use of GRUB_USE_LINUXEFI
    On systems that uses GRUB_USE_LINUXEFI with grub2 version
    less than 2.04 there is no support for dynamic EFI
    environment checking. In this condition we extend the grub
    setup to add this support. The change kiwi does is as
    follows:
    * Apply only on grub < 2.04
    1. Modify 10_linux to set linux/initrd as variables
    2. Write hybrid setup as 01_efihybrid
    This Fixes bsc#1165960 and bsc#1168480
* Tue Apr 14 2020 Jan Löser <jan.loeser@elektrobit.com>
  - Fixed typo in docstring
    Istall -> Install
* Sat Apr 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Create qcow2 images in two steps
    The creation of the qcow2 format was done in one qemu-img
    convert call. That call instructs qemu to compress and
    convert in one call. The downside of this approach is that
    not all qcow2 options can be used. For example the setup
    of:
    <type ... formatoptions="preallocation=metadata"/>
    failed the build with an error message that compression and
    preallocation is not possible at the same time. Thus this patch
    changes the way the qcow2 image is created to be done in two
    steps. The first step converts the format without compression
    and therefore allows for any format option to be used. The
    second call only applies the compression and leads to the
    final result.
* Fri Apr 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.5 → 9.20.6
* Thu Apr 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed plugin documentation
    While setting up the kiwi boxed plugin I realized some small
    mistakes in the plugin documentation
* Thu Apr 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow overlay directories for profiles
    In addition to the existing root/ overlay directory which
    applies always there can now also be profile specific overlay
    directories. If an overlay directory should be applied for
    a specific profile this can now be done by placing this data
    in a directory that is named the same as the profile name.
* Wed Apr 01 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make build of filesystem image optional for pxe
    Allow to build a kernel/initrd pair without a root
    filesystem image. Related to Issue #1388
* Fri Mar 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.4 → 9.20.5
* Thu Mar 26 2020 David Cassany <dcassany@suse.com>
  - Add SECURE_BOOT parameter for grub2 in efi mode
    This commit adds the SECURE_BOOT parameter on bootloader sysconfig
    for grub2.
    Fixes bsc#1167746
* Wed Mar 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added new oem-resize-once element
    The new element controls the behavior of the repart/resize code
    in the oem-repart dracut module. By default the repart/resize
    happens on every reboot and therefore also allows for disk
    geometry changes during the livetime of the machine. If the
    element is set to false the repart/resize operation happens
    only once and then never again. To check for this condition
    a new profile environment variable kiwi_rootpartuuid which
    holds the PARTUUID of the root partition has been added to
    the disk builder.
* Tue Mar 24 2020 David Cassany <dcassany@suse.com>
  - No default boot partition for btrfs_root_is_snapshot
    This commit ensures no boot partition is used when root is set to be
    a btrfs snapshot unless this is explicitly required by the user.
    Fixes #1351
* Sun Mar 22 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make disk allocation check more robust
    The tools used to check the disk allocation condition
    are sfdisk and sgdisk. The problem is that at least sfdisk
    is different in behavior and functionality compared across
    the distributions we support with kiwi. In addition
    the verification for the msdos table cannot be used to
    distinguish between intentionaly wanted free space on
    disk and a disk that has not yet been resized. Thus
    this commit changes two parts:
    a) always report unallocated space available for the msdos
    table to allow to run kiwi's resize code
    b) make sure the table type is taken into consideration
    It's important to run the verification based on the
    table type (DOS, GPT) where we know the tools to work. In any
    other case we report the disk to have unallocated space
    and give the resize code a chance
* Sat Mar 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed openstack integration test
    nothing provides python2-oslo and required py2 packages
* Fri Mar 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed bootloader install
    Mount EFI partition in any case not only for the shim target
* Thu Mar 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed centos integration test
    Currently centos images does not build because of
    a broken XML description
* Thu Mar 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update centos integration test
    There is no testing of centos disk images that uses the
    old msdos partition table. All tests were done with GPT
    table layout.
* Thu Mar 19 2020 David Cassany <dcassany@suse.com>
  - Adding OEM integration tests for Ubuntu
    This commit adds oem image type for Ubuntu integration tests
* Wed Mar 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Complete refactoring of fstab handling
    With the new Fstab class from prior pull request there is an
    opportunity to handle all fstab related actions to be done
    by that class. This commit extends the Fstab class with an
    add_entry method such that we can avoid the extra lists
    holding raw fstab lines in e.g the disk builder. In the end
    all fstab related data is stored in an instance of the Fstab
    class. This also extends the KIWI api by an fstab management
    class. Related to #1329 and #1349
* Wed Mar 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Cleanup fstab handling for containers
    When building container images an extra create_fstab method
    exists that created an empty fstab file. The reasons for this
    are historical and also related to appx support from obs.
    The obs based support for appx containers was based on the
    creation of a kiwi docker image that got modified and turned
    into an appx container. Now with native appx support by kiwi
    this special fstab handling is no longer needed and should
    be deleted. This Fixes #1329
* Tue Mar 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Validate and order final fstab file
    On write of the final fstab file read, validate and order
    the entries. This is related to Issue #1349
* Tue Mar 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added Fstab class
    Handling of fstab should be done in its own namespace and class.
    The current handling of fstab entries is spread at several places.
    There should be only one code that writes the fstab entries and
    that code should also care for the correct canonical order of
    the mountpoints
* Tue Mar 17 2020 David Cassany <dcassany@suse.com>
  - Fix order in fstab
    Any mount point directly under / should be just right after the root
    mountpoint and before the custom mountpoints based on user's subvolume
    configuration.
    Fixes #1349 and bsc#1164310
* Sat Mar 14 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Skip nodev devices for size calculations
    Added a static list of mountpoints used for devices that
    are not associated with a physical device like /proc and
    use that information in the exclude list for calculating
    the image byte size. This Fixes #1363
* Fri Mar 13 2020 David Cassany <dcassany@suse.com>
  - Add kpartx dependency on dracut-kiwi-oem-dump package
    This commit adds a missing dependency on dracut-kiwi-oem-dump
    package. In images where The `kpartx` tool is missing the
    dracut-kiwi-oem-dump was not applied for the initrd.
    Fixes #1364
* Sun Mar 08 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added new image type: wsl
    Support for building appx container images for
    Windows Subsystem Linux (WSL). This Fixes #1235
* Fri Mar 06 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed file name for config.bootoptions file
    The dracut code in 90kiwi-dump/kiwi-dump-image.sh looks for a
    file matching ${image_uri}.config.bootoptions but the install
    code packs a file named pxeboot.${image_uri}.config.bootoptions
    into the tarball. Thus without renaming the file it won't
    be found. Also the documentation mentions the file to be
    named ${image_uri}.config.bootoptions. This commit fixes the
    install code to match the dracut boot code and the documentation
* Wed Mar 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed daps image path
* Wed Mar 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.3 → 9.20.4
* Wed Mar 04 2020 David Cassany <dcassany@suse.com>
  - Fix a regression for container builds in OBS
    This commit fixes a regression introduced in 12d84be2. We need to ensure
    that `labels` item exist in oci image configuration dict before updating
    it and creating it in case it doesn't exist.
* Tue Mar 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed suse doc push pipeline
    build and push are not allowed to run in parallel
* Tue Mar 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - push suse doc only on merge to master
* Tue Mar 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.2 → 9.20.3
* Mon Mar 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Build and push SUSE documentation
    On any pull request also build the suse documentation and
    push changes to the OSInside/kiwi-suse-doc git repository.
    The SUSE documentation team needs a repo with docbook sources
    for the publishing procedure. In addition change the gitlab
    pipeline to run in three stages: Test, Documentation and
    Package. Let the style and unit tests run in parallel and
    cleanup the dependency setup
* Fri Feb 28 2020 David Cassany <dcassany@suse.com>
  - Fix container labels setup in OBS
    This commits fixes the containers label setup in OBS, ensuring that
    adding the 'org.openbuildservice.disturl' label does not clear any
    other label.
    Fixes #1338
* Fri Feb 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.1 → 9.20.2
* Fri Feb 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed schema regexp validation
    Regexp patterns used in the schema are translated into python
    expressions by generateDS. It's required to use the XSD schema
    to run generateDS, xsd however has some restrictions on pattern
    use which leads to a warning message for the ones fixed here
* Wed Feb 26 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed completion_generator
    Due to the change of the binary name for consistency in the
    docopt docstrings the completion generator failed to produce
    correct results. This commit fixes it
* Wed Feb 26 2020 Neal Gompa <ngompa13@gmail.com>
  - Store Mock build logs and built RPMs as short-term artifacts
    This makes it much easier to debug what is happening with mock when
    failures occur.
* Tue Feb 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added sle15 ppc oem integration test
    Related to Issue #1325
* Tue Feb 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added task plugin documentation
    Documentation for developers how to write a custom kiwi
    task plugin.
* Tue Feb 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update manual page documentation
    Fixed manual pages to use kiwi-ng as the command name
* Tue Feb 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed docopt strings to use correct binary name
    The kiwi binary from the entry_point configuration is
    kiwi-ng. The docopt strings should use this name for
    consistency. The alternative binary name kiwi is just
    a symlink created on the rpm packaging level and is
    not guaranteed to exist depending on how kiwi was
    installed
* Tue Feb 25 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor plugin architecture
    Set kiwi.tasks to be the plugin entry point and register
    existing task plugins in setup.py. Change the code in
    cli.py to auto register plugins using the iter_entry_points
    method from the pkg_resources class. This allows for easier
    writing of external kiwi plugins.
* Mon Feb 24 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed handling of fillup templates
    Systems using a template tool to generate config files
    might not be effective when they see the intermediate
    config files we need from the host to let certain package
    managers work correctly. Therefore the cleanup code in
    kiwi takes care to restore from an optionally existing
    template file if no other custom variant is present.
    This Fixes bsc#1163978
* Fri Feb 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Enhance OEM ppc integration test for 4k/512b disks
    Add profile section to build one image for storage disks with
    4k physical blocksize and one image for disks using 512byte
    blocksize. Related to Issue #1325
* Thu Feb 20 2020 David Cassany <dcassany@suse.com>
  - Make squashfs compression configurable
    This commit adds the `squashfscompression` attribute in type element. It
    can take `gzip`, `zstd`, `xz`, `lzo`, `lz4` or `none`. The default is `xz`.
    Fixes #1315
* Wed Feb 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.20.0 → 9.20.1
* Wed Feb 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added serial console in centos integration test
    For use with Kanku we enable the serial console for the
    centos integration test image
* Wed Feb 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make PrEP partition known to GPT partitioner
* Wed Feb 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use GPT table for Power ofw firmware
    GPT partition table should be preferred for power systems
    these days. Related to Issue #1325
* Wed Feb 19 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - target blocksize for IBM Power8 systems is 4k
    Adapt the oem image integration test for bare metal to use
    4k blocksize
* Tue Feb 18 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixup documentation for consistency
    There is the legacy kiwi version and there is this kiwi(next generation).
    From a documentation perspective there are several inconsistencies that
    could confuse users. This commit makes the name for KIWI-NG consistent
    across the entire documentation. At places where we point to older
    documentation we use the term Legacy KIWI and a link to the documentation
    that covers this part. All this is needed in preparation to cleanup the
    documentation situation for the SUSE documentation but with respect to
    the upstream doc sources, their layout and markup.
* Mon Feb 17 2020 David Cassany <dcassany@suse.com>
  - Do not create empty macros file
    This commit makes sure to empty RPM macros files are created during
    the build. Additionally it also ensures that no needless `rm` and `mkdir`
    calls are done.
    Fixes #1316
* Mon Feb 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Turn btrfs requirement into a recommend
    Only on suse systems btrfs is eligable to be a required package
    because it's the default filesystem of that distribution. In any
    other case it should be a recommended package. As a side effect
    of this change we will be able to activate the CentOS-8 build
    target
* Sat Feb 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.16 → 9.20.0
* Thu Feb 13 2020 David Cassany <dcassany@suse.com>
  - Fix append file for PXE
    This commit fixes a regression introduced in 141f384e. With this commit
    the append file is only added to the PXE tarball only when it is
    created.
* Tue Feb 11 2020 Al <alan.cheung@multapplied.net>
  - Split kiwi-dump into 2 modules to allow inserting a module after the image dump and before system reboot
* Tue Feb 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Addded doc_suse tox target to build docbook target
    SUSE documentation is based on docbook or asciidoc. The kiwi
    documentation is maintained along with the code and uses the
    sphinx system and therefore ReST as markup language. We would
    like to keep one source and don't want to move to another markup
    language. Thus the sources needs to be structured in a way that
    allows translation into sphinx supported targets as well as
    into SUSE docbook style. This commit changes the documentation
    structure in a way that both is possible. With the use of Sphinx
    XML and rstxml2docbook the ReST docs are converted into docbook.
    From there the SUSE daps tool can create SUSE documentation
* Mon Feb 10 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move gitlab stages to use gitlab registry
    The kiwi-ci-containers project on gitlab now builds all
    containers that are needed to run all type of tests we
    have in the gitlab pipeline for kiwi. This commit moves
    the tests to fetch the containers from the gitlab
    registry and avoids any requirement to install packages
    prior to running the tests. This will speedup the
    overall test time and makes the system also more robust
    in case the repo servers hosting the packages can't
    be accessed for some reason
* Sun Feb 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed ISO creation on ppc
    On the ppc architecture the isolinux path was chosen which
    is wrong. This patch fixes the ISO creation to use the grub
    path
* Sun Feb 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added suse OEM ppc integration test
    Added obs integration test for building a simple disk image
    to be started in a VM on power. Related to Issue #1325
* Fri Feb 07 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move gitlab build_doc target to gitlab registry
    Use the container from the kiwi-ci-containers project to
    run the build_doc target
* Fri Feb 07 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete use of ifplugd in integration tests
    ifplugd was dropped from the factory tree and that change
    needs to be addressed in the integration tests to let
    them build again
* Thu Feb 06 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added ppc integration test links
    Added ppc integration test links to the overview page of
    the kiwi documentation. Related to Issue #1325
* Thu Feb 06 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.15 → 9.19.16
* Wed Feb 05 2020 David Cassany <dcassany@suse.com>
  - Add .append file for PXE images
    This commit creates the .append file for PXE images. This file
    is only created for initrd based images and includes the
    UUID of the rootfs and any parameter added by the user within
    the 'kernelcmdline' attribute.
    Fixes #1327
* Wed Feb 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted distro provided login.defs from overlay
* Wed Feb 05 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete use of methods that are done by the builder
* Tue Feb 04 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted obsolete ifplugd from arm build test
* Mon Feb 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted obsolete ifplugd from s390 build test
* Mon Feb 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update status helper script
    Also show new ppc integration test builds
* Mon Feb 03 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added fedora ppc integration test
    Added obs integration test for building a simple disk image
    to be started in a VM on power. Related to Issue #1325
* Sun Feb 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added suse ppc integration test
    Added obs integration test for building a simple disk image
    to be started in a VM on power. Related to Issue #1325
* Sun Feb 02 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.14 → 9.19.15
* Wed Jan 29 2020 Neal Gompa <ngompa13@gmail.com>
  - Disable RPM module content validation and filtering when building in OBS
    The Open Build Service builds images by identifying the requested dependencies,
    downloading them into an isolated environment, regenerating the repository
    metadata from scratch with *only* that content, and then passing those
    new repositories to be used for building images. This enforces the
    reproducibility of the image build process.
    However, when building images for Linux distributions that have
    AppStreams/modules (such as Red Hat Enterprise Linux/CentOS 8)
    in an Open Build Service system, the repository metadata associated
    with modules is not present as OBS does not generate it.
    This causes the image build to fail because the normal module
    content filtering rules make it so that modular RPMs are disabled
    unless there is module metadata in the repository that identifies
    them and that the module has been configured to be enabled.
    As it is not possible for us to satisfy those conditions, instead
    we disable modular filtering entirely when we detect that the image
    build is occurring inside the build service, as we are reasonably
    certain that OBS will not give us bad or broken package sets.
* Tue Jan 28 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed ppc kernel lookup
    On power the kernel is named e.g vmlinux-4.12.14-197.29-default
    kiwi was missing that name match. Related to Issue #1325
* Mon Jan 27 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed sat solver flags validation
    The sat library from the python3-solv plugin does not expose
    the flags information as method. Instead the flags value is
    a variable pointing to an integer that has a name mapping
    in self.solv.Selection from the library.
* Fri Jan 24 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.13 → 9.19.14
* Wed Jan 22 2020 David Cassany <dcassany@suse.com>
  - Make use of Path.which including root_dir parameter
    This commit refactors the use of Path.which in several parts of the
    code. Since dd4d2ed78 the Path utility is capable to run Path.which
    on certain chroot env, thus no need to adapt the PATH environment
    variable.
    Fixes #1281
* Tue Jan 21 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make PXE oem deployment genericly useable
    When deploying a disk image via PXE the initrd contained a config
    file which connects it to a certain image. This has the disadvantage
    that no other image could be deployed with it. This commit changes the
    deployment code in a way that the config file is read from the
    network if the disk is deployed via PXE. The tarball created by
    kiwi provides the image connected config file but users now have
    the opportunity to create their own boot configurations which allows
    deployment of different images with the same kiwi built deployment
    initrd. This Fixes #1298 and is one first step into a more generic
    PXE support offered by kiwi.
* Mon Jan 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.12 → 9.19.13
* Mon Jan 20 2020 David Cassany <dcassany@suse.com>
  - Remove RootBind.move_to_root method
    This commit removes the RootBind.move_to_root method as this can all be
    done by using the Path.move_to_root utility method. This allows
    to drop the RootBind attribute in PackageManager classes and focus
    path manipulation methods into a common utility.
    Related to #1281
* Mon Jan 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.11 → 9.19.12
* Mon Jan 20 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed custom args check
    If a custom argument exists in the dictionary but has no value
    it should be treated as not set and initialized empty as intended
* Fri Jan 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed order of fstab entries
    If a volume manager is used the volumes are added before the
    root filesystem(/) entry in fstab. This does not hurt because
    at boot time systemd manages the mounting of the rootfs prior
    to any other information in the fstab file but it's conceptually
    broken. Users justifiably can expect the fstab entries in the
    correct order such that mounting from top to bottom leads
    to a consistent root filesystem state.
* Fri Jan 17 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.10 → 9.19.11
* Wed Jan 15 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for spare partition fs attributes
    Added new type attribute:
    ```xml
    <type ... spare_part_fs_attributes="..."/>
    ```
    which can be a comma separated list of the following currently
    supported filesystem attributes:
    * no-copy-on-write
    * synchronous-updates
    See chattr and filesystem manual pages for details on those
    attributes. More attributes for the spare part context can be
    added on request. This Fixes #1233
* Wed Jan 15 2020 David Cassany <dcassany@suse.com>
  - Allow builds without KIWI dracut modules
    This commit avoids requesting non installed dracut modules to the dracut
    creation. It bumps a warning message if the module requested by KIWI is
    not installed in the root-tree and ignores the request.
    This allows the creation of images without including KIWI dracut modules
    when the related runtime checks are disabled.
    Fixes #1300
* Mon Jan 13 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.9 → 9.19.10
* Sun Jan 12 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Follow up fix for kernel version lookup
    When using custom kiwi boot images a shell method named
    baseCreateCommonKernelFile was used to create a common
    kernel file name in the boot image to allow a simpler
    search code in the builder. The search code in the builder
    however uses the standard kernel naming schema and with
    the latest changes to the kernel version lookup the
    common name did not match the matching pattern anymore.
    The use of such a common kernel file is obsolete and
    the shell method can finally be deleted.
* Sat Jan 11 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.8 → 9.19.9
* Thu Jan 09 2020 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor kernel version lookup
    For the lookup of the kernel version kiwi provided a small
    C program that reads the first bytes of the kernel binary
    and extracts the version information. Given the various
    compression formats and also the problem of kernel files
    that contains the decompressor code which could be anything
    it has turned out to be difficult to provide a stable tool
    to read the version from the binary. Therefore the code in
    kiwi was refactored to read the version via regexp match
    from the filename which also makes kversion an obsolete
    tool. This Fixes #1308
* Thu Dec 19 2019 David Cassany <dcassany@suse.com>
  - Bump version: 9.19.7 → 9.19.8
* Thu Dec 19 2019 David Cassany <dcassany@suse.com>
  - Update libyui-ncurses-pkg10 to libyui-ncurses-pkg11
    In Tumbleweed there is no longer the libyui-ncurses-pkg10 its been
    superseded by libyui-ncurses-pkg11.
    This fixes the test-image-qcow-openstack integration test
* Thu Dec 19 2019 David Cassany <dcassany@suse.com>
  - Reference commit for SUSE maintenance
    This commit adds a reference to Issue #1301 and the report in bugzilla
    bsc#1159538. The issue was fixed in commit 7d96d19c
* Wed Dec 18 2019 David Cassany <dcassany@suse.com>
  - Fix grub2 configuration for shim fallback setup
    If shim fallback setup is enabled the grub.cfg is copied to the EFI
    partition. This commit makes sure that the grub.cfg is copied to the EFI
    partition according to the efi mount point.
    Fixes bsc#1159235
* Tue Dec 17 2019 David Cassany <dcassany@suse.com>
  - Ensure no swap volume is added on btrfs
    When the selected filesystem is btrfs the volume manager is not LVM.
    In that case the swap partition is not volume, it is a completely
    independent partition. So that we cannot add and additional volume
    for swap when swap is specified in the description file.
    This patch fixes #1301 and fulfills #1297
* Thu Dec 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed installation chapter in the documentation
    The chapter still outlines multipython support but we
    dropped support for python2 some time ago
* Tue Dec 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.6 → 9.19.7
* Sun Dec 08 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed swap setup if btrfs is used
    In case of a volume manager the simplified variant of the
    device name is used in the fstab file to reference the
    swap device. However this is only correct for the lvm
    volume management but not for btrfs. In case of btrfs
    the swap space is not a subvolume but a real partition
    and thus the simplified device spec in fstab puts in the
    loop mapped device which is wrong. This patch fixes it
* Fri Dec 06 2019 Neal Gompa <ngompa13@gmail.com>
  - Exclude 'Recommends: kiwi-man-pages' for EL7 and older in the spec
* Fri Dec 06 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed xz options syntax in default kiwi.yml
    xz options are passed as a string and splitted in code
    but not handled as yml list
* Fri Dec 06 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed scope of kiwi-man-pages sub package
    The kiwi-man-pages package provided data that belongs to
    the main package, e.g the completion as well as the
    license information. In addition kiwi-man-pages should
    not be a requirement.
* Fri Dec 06 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed result map for OEM pxe install
    The result map for OEM images with installpxe enabled
    contained a wrong file name. Thus the result bundler
    was not able to fetch the tarball
* Thu Dec 05 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Open image files in UTF-8
    Post image build metadata like the packages file which are
    created from data produced by the package manager can contain
    multibyte characters and should be written into files opened
    with the UTF-8 encoding. The same applies to the image imported
    XML description. This Fixes #1290
* Wed Dec 04 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.5 → 9.19.6
* Wed Dec 04 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixup package list for GCE integration test
    Package growpart-rootgrow does no longer exist. Will be
    replaced by a partgrow implementation
* Wed Dec 04 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed root setup when building in OBS
    When building in an OBS worker no udevd is running which prevents
    grub2-mkconfig from finding the by-* device nodes and it puts the
    local loop device in which is wrong. Therefore the patching code
    used for overlay disk configurations also applies when building
    in an OBS worker environment. This Fixes #1287
* Mon Dec 02 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.4 → 9.19.5
* Fri Nov 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed setup of default grub config
    In /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT also contained
    the root= information. If grub2-mkconfig runs with that information
    it places the root device information twice because grub2-mkconfig
    resolves this information itself. This commit prevents the root=
    information to be placed in the default grub config and
    Fixes bsc#1156908
* Wed Nov 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Lookup distribution specific grub font dir
    In addition to the generic grub font directory also lookup
    distribution specific font paths in the system and copy the
    grub unicode font into it. This Fixes #1253
* Wed Nov 27 2019 David Cassany <dcassany@suse.com>
  - Do not rsync /dev on debootstrap
    This commit does not rsync /dev on debootstrap and instead it uses
    the bind mount for /dev the same way it is done for other non apt
    based bootstrap processes.
* Wed Nov 27 2019 David Cassany <dcassany@suse.com>
  - Add new root option in Path.which method
    This commit adds to Path utility a couple of methods to manipulate
    paths. One to rebase given paths to a new root and another one to
    trim the given root path. In addition a new option in Path.which
    is added to allow searches into chroot evironments.
    Fixes #1276
* Tue Nov 26 2019 David Cassany <dcassany@suse.com>
  - Do not rsync kernel filesystems on debootstrap
    This commit ensures that /proc and /sys are not rsynched when
    debootstrapping an apt based image.
    Fixes #1270
* Tue Nov 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.3 → 9.19.4
* Tue Nov 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed condition to create swap partition
    The previous condition created the partition if swap is
    requested and no volume management is used. But this is
    wrong because if any other than the LVM volume management
    is used we want the swap space as partition. Only in case
    of LVM the swap space is a LVM volume.
* Tue Nov 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.2 → 9.19.3
* Tue Nov 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed access to device map for fstab setup
    Swap is an optional element in the device map.
    Thus access to an element of that dictionary
    should not fail
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.1 → 9.19.2
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed VolumeManager device map handling
    The former implementation builds a new device map which is
    a subset of the low level device map. However due to the
    additional swap partition the maps provided by the VolumeManager
    classes are now incomplete. Instead this commit changes the
    VolumeManager interface to receive the current low level
    device_map and merged device changes on top of it when
    needed.
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.19.0 → 9.19.1
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed runtime checks on volume label setup
    Fixed the checks for check_volume_setup_defines_reserved_labels
    and check_volume_label_used_with_lvm. Both checks needs to
    skip on the kiwi internally created volume named LVSwap
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete superfluous .osc metadata from build tests
    Not sure how and why the .osc buildservice metadata
    was added to the git but it's for sure not needed
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.35 → 9.19.0
* Mon Nov 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added check_volume_setup_defines_reserved_labels
    Check to prevent using reserved filesystem labels in LVM
    volume definitions
* Thu Nov 21 2019 David Cassany <dcassany@suse.com>
  - Include grub.cfg inside the efi partition
    This commit ensures the grub.cfg file is included within the vfat efi
    partition.
    This fixes #1271 and bsc#1157354
* Wed Nov 20 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed extending LVM volumes
    For extending the LVM volumes a resize prefix is set for each
    volume. If no extra prefix is needed it can happen that the
    former prefix setting is used which is wrong. The resize
    prefix must be reset for each new volume iteration
* Wed Nov 20 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.34 → 9.18.35
* Tue Nov 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Prevent swap partition to be the last one
    In an OEM deployment that requested the creation of a swap
    partition via <oem-swap> that swap partition was created
    at first boot and was always the last partition on the disk.
    This was required because it could not be placed before
    any other partition without destroying those partition
    contents. This process leaves the system in an inflexible
    condition if the storage device can change its geometry
    dynamicly as it's the case for SAN systems. The typical
    deployment target for OEM images are SAN storage clusters
    and it's cumbersome to resize the root partition if swap
    is last.
    This commit Fixes #1231 and changes the handling of swap if
    requested via <oem-swap> as follows:
    1. The swap space is created as part of the image build process
    and no longer on first boot of the image via dracut code.
    This increases the size of the non compressed .raw disk image
    by the configured swap space size or the default. The
    compressed versions are not affected since zero initialized
    swap space compresses to almost no space. Deployment of
    the image however also deploys the swap partition which
    increases deployment time. For big swap configurations
    it's advisable to switch off image verification via
    oem-skip-verify. For very big swap configurations it's
    also recommended to prevent kiwi from adding them as part
    of the image and let them be created on first boot via
    a systemd service that e.g places a swap file, or creates
    a swap volume when possible such that the fexibility to
    resize the rootfs is still available.
    2. The setup of the swap space is now explicit. It's no longer
    calculated by twice times RAM size because on newer machines
    this could lead to huge numbers. Either the kiwi encoded
    default swap size applies or the user configured value.
    3. LVM based oem disks creates the swap space as logical volume.
    The volume is created as part of the image build process
    and no longer on first boot. The swap volume at build time
    of the image is of a minimal size and gets resized on first
    boot.
    4. The move of the swap creation into the builder code also
    handles swap per configured device persistency schema like
    any other devices. This means by default swap is mounted
    via by-uuid name and thus also Fixes #1259
* Tue Nov 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed subsequent reboot of oem disk
    On a second reboot of an oem disk we check with gdisk's
    verification command if the disk needs to be resized.
    That command however mounts the disk in the background
    and therefore it's urgently required to mask the systemd
    rootfs service before. Otherwise systemd thinks this is
    evil and drops into a rescue shell
* Tue Nov 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Reference commit for SUSE maintenance
    This commit adds a reference to Issue #1261 and the
    report in bugzilla bsc#1157104
* Tue Nov 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.33 → 9.18.34
* Fri Nov 15 2019 David Cassany <dcassany@suse.com>
  - Start using tftp system user package
    With this commit we start requiring tftp system user package. This
    user was created and managed by multiple packages before, with the
    risk of having inconsistent criteria on its defaults. Now there there
    a system user package so whatever package that requries this user should
    just require this package and do not create or modify the tftp user.
    Related with bsc#1143454
* Fri Nov 15 2019 David Cassany <dcassany@suse.com>
  - Improve alias documentation in XML schema
    This commit aligns the documentation of the default repository alias
    with the current implementation.
    Fixes #1247
* Fri Nov 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.32 → 9.18.33
* Thu Nov 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed zipl bootloader config template
    The targetgeometry value is not allowed for SCSI and FBA
    mode. So far we handled only SCSI and failed on FBA mode.
    This commit fixes it
* Thu Nov 14 2019 David Cassany <dcassany@suse.com>
  - Allow use of relative paths for `dir:<path>` URIs
    This commit allows the use of relative paths for local URIs using the
    the following format:
    dir:<path>
    This is helpful to set in config.xml local URIs for repositories.
    Fixes #1261
* Thu Nov 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Adapt test-image-oem integration test for s390
    The test was originally designed to test for DASD 4k block
    storage. However the kpartx utility in the Leap15, TW code
    stream has issues mapping partitions if the loop device
    was setup using 4k sector size. So far we can't create
    images with 4k blocksize due to that issue. Thus the
    integration test is now adapted for an emulated DASD device
    in FBA mode which is not using 4k blocksize. Once the
    problem with kpartx is solved on s390 we will create another
    integration test to test 4k image builds
* Thu Nov 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.31 → 9.18.32
* Thu Nov 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update s390 integration tests
    Added vmx build test to run in kvm on s390. Updated the
    existing oem build test to deploy on DASD. The concept
    of the network setup invented by kiwi for s390 does no
    longer apply and was also not used on the s390 distribution
* Thu Nov 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed zipl bootloader setup for s390 images
    The preparation to call zipl and the call itself were wrong.
    For whatever reason the kernel image the initrd are moved
    to another location prior to calling zipl. That move broke
    the system because no kernel/initrd existed at the expected
    place anymore. In addition the zipl call itself was issued
    from a the wrong directory. Also no config file was written
    as an after effect of the refactoring in Issue #1194. This
    Fixes #1173 and bsc#1156694
* Wed Nov 13 2019 Dan Čermák <dcermak@suse.com>
  - Document possible values for the name attribute of package
    This fixes #1260
    Co-Authored-By: Thomas Schraitle <tom_schr@web.de>
* Thu Nov 07 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.30 → 9.18.31
* Wed Nov 06 2019 David Cassany <dcassany@suse.com>
  - Fix gitlab CI pipeline
    Ensure the gitlab CI includes make package for docs generation
* Wed Nov 06 2019 David Cassany <dcassany@suse.com>
  - Ensure grub.cfg is copied in EFI/BOOT folder
    This commit fixes the live images in efi mode. Grub configuration file
    is copied to the correct location in <boot_dir>/EFI/BOOT.
    Fixes bsc#1155815
* Thu Oct 31 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.29 → 9.18.30
* Thu Oct 31 2019 Ruediger Oertel <ro@suse.de>
  - fix kernel module handling for xz compressed modules
    and firmware files to fix issue #1256
* Tue Oct 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.28 → 9.18.29
* Tue Oct 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Host/Image support matrix
    Update documentation about the Host vs. Image support and
    compatibility matrix with regards to the SLES target.
* Mon Oct 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add default /etc/kiwi.yml file
    Provide a comment only etc/kiwi.yml file that contains all
    parameters we support so far including a short description
    This Fixes #1232
* Mon Oct 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.27 → 9.18.28
* Fri Oct 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete left over print statement from unit test
* Fri Oct 25 2019 Javier Martinez Canillas <javierm@redhat.com>
  - Enable BLS configuration if is supported
    Fedora now uses a BLS configuration by default, but this is not supported
    by all distributions. So check if is supported by the grub2-mkconfig tool
    and only enable the option if that's the case.
    Fixes: #1248
* Fri Oct 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump Fedora x86 build test to Fedora30
* Fri Oct 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.26 → 9.18.27
* Thu Oct 24 2019 David Cassany <dcassany@suse.com>
  - Fix btrfs_root_is_snapshot
    This commit makes sure the chrooted operations of over a loop device
    including btrfs subvolumes and root as an snapshot include the
    `/.snapshots` subvolume mount. This is necessary for certain operations
    that depend on the layout, e.g. grub configuration using `grub2-mkconfig`.
* Thu Oct 24 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Skip isolinux ui setup on serial terminal config
    If the attribute bootloader_console="serial" is set, the
    expectation that there is no graphics hardware available is
    valid. Thus the isolinux setup should not contain any ui
    configuration instructions because that leads to run the
    graphics initialization which blocks the system if not
    present. Please note the bootloader_console allows for
    multiple console configuration. In mixed setup the ui
    configuration still applies. This Fixes #1153
* Thu Oct 24 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added helper script to test status of test builds
    build_status fetches information from obs about the status
    of the integration test builds. It also allows an easy refresh
    of the tests regarding content changes on git when called
    with the refresh parameter: build_status refresh
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update development documentation
    With the latest change to the logger kiwi can now be better
    used as an api in other python programs
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed install_devel_packages helper
    Missing libffi and enchant devel packages. Also deleted
    trang since it's not provided by default in the distro
    and optional
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.25 → 9.18.26
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    Link paths to the integration tests has changed
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed package list for arm test builds
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move arm build tests to obsrepositories
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move s390 build tests to obsrepositories
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Reorganize build tests
    We build images against different distributions. In order to
    do that in obs we should be able to handle one prj config per
    distribution. Thus the tests move from a flat tree to a distro
    structured tree here and in obs
* Wed Oct 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move suse tests to obsrepositories
    Changes on the obs backend made this change necessary.
    The chain of process decisions is different if a repo is
    added to the prj config compared to if the repo is added
    to the kiwi XML file. It seems the preferred solution
    is the obs prj config and I'm tired running into problems
    again and again
* Tue Oct 22 2019 David Cassany <dcassany@suse.com>
  - Make home attribute optional on users definition
    This commit makes home attribute of users definition optional. This way
    the home directory is created according to the distribution defaults.
    Note that `-m` option is passed to user add, thus the home directory is
    requested to be created even without having an explicit home path
    defined.
    Fixes #1025
* Mon Oct 21 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor use of logging facility
    Use getLogger method instead of a global log object
    Also use caplog fixture to capture log messages in
    unit tests. This Fixes #1244
* Mon Oct 21 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Version 2.29.24 fixes the pattern problem
    and avoids the recursion bug
* Mon Oct 21 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed oem resize message and invokation
    The oem resize should only start if there is unallocated
    space on the disk available. If it starts the message in
    case of a not applicable resize should be more meaningful
    This commit addresses both issues and Fixes #1102
* Fri Oct 18 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - nothing provides yast2-registration
    With the move of the tests to the TW repo this package was
    no longer provided
* Fri Oct 18 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted openSUSE-release-dvd from test images
    For whatever reason the Tumbleweed repo does not provide
    this package anymore
* Fri Oct 18 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update integration tests
    OBS has changed the repo paths. openSUSE:Factory/snapshot is
    empty which resulted in any suse test to fail. This commit
    changes the repo to openSUSE:Tumbleweed/standard
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.24 → 9.18.25
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed grub mkconfig call for read-only root
    In case of an overlay root system via overlayroot="true" all parts
    of the rootfs are read-only by squashfs except for the extra boot
    partition. However tools like grub's mkconfig creates temporary
    files at call time and therefore /tmp needs to be writable during
    the call time of the tools. Related to Issue #1194
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.23 → 9.18.24
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed method header of write_meta_data
    Interface class and implementation class has to use the
    same header definitions.
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Lookup grub mkconfig tool
    In the same way as we need to lookup the name for the mkimage
    tool we also have to lookup the name of the config tool.
    That's because distributions do not handle that consistently
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.22 → 9.18.23
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed EFI path creation
    Only copy files to the EFI path on prior creation of that path
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.21 → 9.18.22
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed fallback copy of grub config file
    For ISO images that are EFI bootable as well as for EFI
    secure boot configurations that are not based on shim-install
    kiwi provides a fallback code that copies the grub config file
    to the efi/efi-vendor boot path. This fallback code was broken
    because of the recent change to let grub2 mkconfig create the
    config file. The call of grub2 mkconfig happens at a later
    stage which required an adaption of the fallback mechanism.
    This is related to Issue #1194
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.20 → 9.18.21
* Thu Oct 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed use of config_file before assignment
* Wed Oct 16 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.19 → 9.18.20
* Wed Oct 16 2019 David Cassany <dcassany@suse.com>
  - Re-structure unit tests folders
    This commit relocates unit tests to a folder structure that matches
    the source code structure.
    Fixes #1128
* Wed Oct 16 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete unused template data
    With the move to grub2 mkconfig some static template data
    became obsolete. This commit removes the unused data
* Tue Oct 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Adapted handling of initrd boot names
    Due to the change of using grub2-mkconfig the way custom kiwi
    initrd file names are handled doesn't work anymore. grub2-mkconfig
    is not able to cope with the names kiwi used when creating custom
    kiwi initrd's (initrd.vmx). Thus the same naming code as used
    for the dracut initrd system has to apply for the custom kiwi
    initrd code as well. This commit moves the name handling into
    the baseclass because the same naming schema now applies to
    both initrd systems.
* Tue Oct 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed install image setup for kiwi initrd system
    If the kiwi initrd system is used the eltorito image was
    not found because searched in the wrong place
* Mon Oct 14 2019 David Cassany <dcassany@suse.com>
  - Change kiwi-ng-3 binary references to kiwi-ng
    This commit changes from kiwi-ng-3 or kiwi to kiwi-ng the console script used
    in command line examples.
* Fri Oct 11 2019 David Cassany <dcassany@suse.com>
  - Add INFO message for primary group
    This commit adds an INFO message if the primary group is set according
    to the groups attribute in description file.
    Fixes #1059
* Fri Oct 11 2019 David Cassany <dcassany@suse.com>
  - Use kiwi-ng and kiwicompat as console_scripts
    This commit instead of installing kiwi-ng-3 and kiwicompat-3 as
    console_scripts it makes use of kiwi-ng and kiwicompat. Then all others
    are created as symlinks at rpm level in spec.
    Fixes #1226
* Thu Oct 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.18 → 9.18.19
* Tue Oct 08 2019 David Cassany <dcassany@suse.com>
  - Upadate xml_parser autogenerated code
    This commit updates xml_parser.py autogenerated code using a newer
    generateDS version. The previous generateDS version is not properly
    handling the regular expressions of some element's content.
    Fixes #1217
* Tue Oct 08 2019 David Cassany <dcassany@suse.com>
  - Remove universal flag
    kiwi is no longer an universal python module, since it does not support
    python 2 anymore. This will prevent to install future versions on
    python2 environments using pip.
    Related with #1226
* Fri Oct 04 2019 David Cassany <dcassany@suse.com>
  - Refactor patch_open use in builder's tests
    This commit removes the use of @patch_open decorator
    in favor of directly patching 'builtins.open' and use
    mock.mock_open utility to mock the context manager.
    Related to #1128
* Fri Oct 04 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Flexible use of linuxefi module
    Not all distributions provides the grub linuxefi module anymore.
    This means a static list for building an efi grub image if needed
    is no longer appropriate. This patch changes the module handling
    at the following places
    1. Use linuxefi for building custom efi modules only if present
    on the host system
    2. Use linuxefi related grub2-mkconfig variables only if the
    host grub2-mkconfig implementation supports it
    3. Prevent building custom efi image on Fedora by extending
    the search path for the distro provided efi image and also
    adapt the spec file accordingly
* Thu Oct 03 2019 David Cassany <dcassany@suse.com>
  - Fix the sha256 generated file content
    This commit makes sure the generated sha256 file in a 'kiwi result
    bundle' call includes the filename with the correct extension. For
    compressed files it was omiting the suffix that included during the
    compression.
    Fixes #1223 and related to bsc#1139915
* Wed Oct 02 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed rpmdb compat link setup
    On older versions of zypper the path /var/lib/rpm was hardcoded
    and not used from the rpm macro definition. For such systems and
    to support them properly on hosts that have the rpm database
    already moved a compat link was created. However if the host has
    the rpm database at /var/lib/rpm the link doesn't make sense.
    This patch fixes this and therefore bsc#1150190
* Tue Oct 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Complete dracut setup for luks boot
    An image that is configured with an encrypted root including /boot
    includes a /.root.keyfile in initrd to let dracut/systemd decrypt
    the root and mount it without asking the password. On rebuild of
    the initrd, dracut has no configuration that tells it to include
    the /.root.keyfile again. This patch adds that configuration and
    Fixes #1192
* Mon Sep 30 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Follow up patch for SourceType info
    The message that display the selected source type was
    using the former metalink text which is wrong. This
    patch corrects the message and only display it if a
    sourcetype was specified
* Mon Sep 30 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update contributing chapter
    Simplify the setup of a development environment and
    update the documentation appropriately
* Mon Sep 30 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support specifying the source type of repos
    Repository source paths can be more than just a baseurl.
    There is also the opportunity to point to a metalink
    file or a mirrorlist. In both cases the packagemanager
    needs to know the type of this target. Therefore a new
    attribute called sourcetype exists which allows to
    specify the type the repo path uri is associated with.
    Currently the dnf repository class is the only one that
    makes use of the information. This change is required to
    support Fedora >= 30 images. I also expect this concept
    to be used by other distributions in the future
* Mon Sep 30 2019 David Cassany <dcassany@suse.com>
  - Using the correct Tumbleweed base image
* Fri Sep 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor use of raises in unit tests
    Use raises as context manager instead of a method decorator.
    This clearly identifies which code part is expected to raise
    an exception. Related to Issue #1128
* Thu Sep 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor repository unit tests
    Refactor repository unit tests as described in Issue #1128
* Wed Sep 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.17 → 9.18.18
* Wed Sep 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed typo in message text
    Systen -> System
* Wed Sep 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed return code validation of check_filesystem
    Usually the return code from the filesystem check tools is
    simple: Non zero exit code means an error occurred. However
    in case of the extX filesystem this does not apply. This
    commit documents the possible error conditions and supplies
    a tool specific check condition. This Fixes #1209
* Wed Sep 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update dracut caller options
    No need to pass the --force option and added --verbose option
    as it provides useful information in the image log file
* Tue Sep 24 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed kiwi-live module setup
    The installation of the checkmedia tool is optional and
    and not mandatory. In addition activate the media check
    verification also through the upstream used rd.live.check
    kernel parameter. This is related to Issue #1158
* Mon Sep 23 2019 David Cassany <dcassany@suse.com>
  - Update documentation to the PXE install file names
* Mon Sep 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update kiwi live ISO chapter
    Compare overlay vs.dmsquash live ISO modules by their
    features to allow customers a proper selection of the
    module. This Fixes #1158
* Mon Sep 23 2019 David Cassany <dcassany@suse.com>
  - Add information in PXE install files
    This commmit adds additional information for the image and pxeboot files
    that are part of the install tarball in OEM PXE deployments. This way all
    files inside the install tarball include the following pattern
    <image-name>.<arch>-<version>
    at the same time anyfile prefix and suffix remains unchanged.
    Fixes #1147
* Fri Sep 20 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.16 → 9.18.17
* Wed Sep 18 2019 David Cassany <dcassany@suse.com>
  - Make kiwi-overlay module compatible with kiwi-repart
    This commit makes the modules provided by dracut-kiwi-overlay and
    dracut-kiwi-oem-repart compatible. The main idea of this commit
    is forcing the preparation of the overlay rootfs write partition
    after kiwi-repart gets into the play. Since kiwi-overlay mounts the
    write partitiontition it has to be executed after the kiwi-repart.
    For that instead of doing the job using an initqueue event added by a
    udev rule we just add the very same logic in pre-mount hook that happens
    after the kiwi-repart pre-mount hook thanks to lower priority.
    Fixes #1184
* Wed Sep 18 2019 Oluf Lorenzen <49054986+lorenzen-b1@users.noreply.github.com>
  - fix docu following schema: profile inheritance
    following the schema the "requires" element needs an attribute "profile"
* Tue Sep 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use grub2-mkconfig for writing grub config
    Instead of creating a template based grub config file, use
    grub2-mkconfig to create the config file during the build
    process. This commit changes from config template to grub2
    tooling for the disk based image types vmx and oem
    This Fixes #1194
* Tue Sep 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.15 → 9.18.16
* Tue Sep 17 2019 David Cassany <dcassany@suse.com>
  - Fix modules omission for dracut based initrds
    This commit fixes a regression introduced in 07ea23a4. In OEM images
    the dracut modules were not properly omitted as the code was evaluating
    the wrong variable.
    Fixes #1201
* Fri Sep 13 2019 David Cassany <dcassany@suse.com>
  - Fix GPT to MBR convertion
    This commit swaps the order of the command in gpt to mbr convertion
    in partitioner.gpt.set_mbr method.
    sgdisk by default converts the partition table from MBR to GPT in memory.
    The change is never applied unless you provide the -g option forcing to
    overwrite the partition table format. If sgdisk does the convertion in
    memory and the user does not provide the -g flag it returns an error
    code.
    The solution applied in this commit is to just run the GPT to MBR
    convertion as the last sgdisk command and change partition type before
    running the convertion.
* Fri Sep 13 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.14 → 9.18.15
* Fri Sep 13 2019 jpwidera <30520224+jpwidera@users.noreply.github.com>
  - Fixed user permission
    The comand was evaluated as chmod -c -R '...' . This is not the
    correct syntax. Removing quotation marks solved problem
    and Fixes #1191
* Thu Sep 12 2019 David Cassany <dcassany@suse.com>
  - Clean up openstack packages
* Thu Sep 12 2019 David Cassany <dcassany@suse.com>
  - Fix unresolves for x86 integration tests
    nfsidmap package is no longer available in TW. It's been renamed to
    libnfsidmap1, moreover this is a package already required by nfs-client
    and similar packages. Thus gets installed in the modified image
    descriptions without having to list it, as it is already a dependency of
    another required package.
* Thu Sep 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Do not require multipath in dracut-kiwi-oem-dump
    Installation of multipath tools triggers storage devices
    to be handled as multipath maps in dracut. If the deployment
    happens in a non multipath system those devices do not exist
    and the system later hangs in the dracut initqueue waiting
    for mapper devices that never appears
* Thu Sep 12 2019 jpwidera <jan.widera@posteo.de>
  - Reverting partsthat are already implemented
    This problem is discussed in #1195
* Tue Sep 10 2019 jpwidera <jan.widera@posteo.de>
  - Switched back to original root-device search
* Tue Sep 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Detect raid compound in root disk detection
    Make sure raid managed storage e.g fake raid is detected
    using the correct md device. Fixes #1181
* Tue Sep 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.13 → 9.18.14
* Fri Aug 30 2019 Jan Widera <widera@helzel.com>
  - Allows to list fake-raid partitions
    Solves problem in #1181
* Fri Aug 30 2019 David Cassany <dcassany@suse.com>
  - Add the `-wildcards` flag in mksqashfs call
    This commit ensures the `-wildcards` flag of mksquashfs is being used.
    This is related to #1184
* Fri Aug 30 2019 David Cassany <dcassany@suse.com>
  - Adding overlayroot integration test
* Thu Aug 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.12 → 9.18.13
* Thu Aug 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add --add-bootstrap-packages option
    The prepare and build commands now allows to specify additional
    packages to be installed as part of the early bootstrap phase
    This Fixes #1151
* Wed Aug 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Detect raid disks in oem dump module
    The current disk detection only takes lsblk entries into
    account that marks the device as 'disk'. However on raid
    disks like fake raid controllers the disk is mapped via
    dmraid and marked as 'raidX' device. This commit also takes
    those devices into account for deployment. Issue #1181
* Tue Aug 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix return value of is_prepared method
    The method is expected to return a bool value. In fact it
    returned a list. An empty list is evalutated as False in
    python, a list with content as True. So the way the method
    is used is correct but the return value should be a real
    bool value to match the docs and expectations. Also the
    unit test for this code was wrong. This Fixes #1175
* Mon Aug 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation regarding fstab adaptions
* Mon Aug 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add support for custom fstab script extension
    In addition to fstab append and patch features we also allow
    an fstab.script file that is called chrooted. The change is
    needed to support overlay mounting of filesystems as part
    of the initrd. If system filesystems needs to be changed in
    a way that they can be used in an overlay mount, the standard
    mount entry has to take the x-initrd.mount capability which
    requires a modification of the fstab which is cumbersome to
    handle as a patch file. This concept is currently used as
    part of the MicroOS project in SUSE and is applied in the
    integration test build maintained for this target. This
    Fixes bsc#1129566
* Fri Aug 23 2019 Neal Gompa <ngompa13@gmail.com>
  - Fix GitLab CI jobs for building on Fedora
    Mock is incorrectly using systemd sysusers now without a systemd dependency or
    working sysusers scriptlets. For now, manually create the mock group.
    In addition, let's go ahead and upgrade to a Fedora 30 chroot for the mock builds.
* Fri Aug 23 2019 David Cassany <dcassany@suse.com>
  - Avoid default installation of dracut kiwi modules
    With this commit dracut modules won't be installed by default
    in the initrd unless they are requested by the commandline calling
    dracut or by a dracut configuration file.
    Fixes bsc#1142899 bsc#1136444
    Fixes #1103
* Fri Aug 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update live iso integration test build
    Our live iso test is setup for EFI. Since the switch to grub
    no isolinux will be used with the test. Thus there is no need
    to install the gfxboot branding package anymore
* Thu Aug 22 2019 Dan Čermák <dcermak@suse.com>
  - Stop inheriting from object
    This is no longer required in Python3
* Thu Aug 22 2019 David Cassany <dcassany@suse.com>
  - Add crypt dependency to kiwi-lib dracut module
    This commit fixes the dependencies of the kiwi-lib dracut module to
    include crypt module required by kiwi-luks-lib.sh.
    In addition it also updates the check() section to return 255 instead of
    0. In check section a return code of 0 means install it, 255 install
    only if required by another module, anything else, do not install.
    Related with bsc#1142899
* Wed Aug 21 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Create ssh host keys for MicroOS test image
* Wed Aug 21 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added network setup for MicroOS test build
* Tue Aug 20 2019 Andreas Schwab <schwab@suse.de>
  - Add support for riscv64
* Tue Aug 20 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed conflict in integration build tests
    pkgconf-pkg-config conflicts with pkg-config on TW
* Tue Aug 20 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.11 → 9.18.12
* Mon Aug 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added MicroOS integration test
    The future technologies team is implementing a coreOS derivate
    based on btrfs and some overlay technology. For supporting them
    some changes were required in kiwi and thus we should add an
    integration test build which makes use of this features.
* Mon Aug 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add required cryptomount coding for EFI boot
    For non EFI boot grub2-install has code which gets activated
    through the GRUB_ENABLE_CRYPTODISK setting. However for the
    EFI boot case no installation of boot code is needed and
    therefore the grub earlyboot script has to run cryptomount
* Mon Aug 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add /mnt to list of protected paths
    On recursive removal make sure /mnt belong to the protected
    elements. This Fixes #1170
* Mon Aug 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added full encrypted image build test
* Fri Aug 16 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Extended LUKS encryption support
    We supported luks encrypted images with the exception of the
    boot partition because grub was not able to read from an
    encrypted device at that time. Since some time grub is able
    to read from an encrypted partition and this commit add
    support for it. With this patch luks encrypted images will
    no longer create an extra boot partition and the entire
    system will be encrypted. The opening of the luks container
    happens on the grub level only once. Customers can still
    specify to use an unencrypted extra boot partition with the
    bootpartition="true" flag. In this case the opening of the
    luks containers happens on the systemd level as before.
    This is related to Issue #1162
* Thu Aug 15 2019 Stefan Seyfried <stefan.seyfried@sap.com>
  - remove '-z' option from rsync local copy calls
    rsync's "compress" option just does not make any sense when rsync is
    used to copy files locally, it only increases CPU usage and slows down
    the process ;-)
* Wed Aug 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete SuSEfirewall2 from test builds
    The package seems to be no longer present on suse
* Wed Aug 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.10 → 9.18.11
* Mon Aug 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow dracut initrd to be used with pxe type
    The pxe image type builds a simple filesystem image plus a
    custom initrd. That initrd is usually build from the kiwi
    netboot image descriptions which implements a workflow to
    fetch the filesystem image and deploy it as rootfs for a
    pxe client. User who wants to implement their own handling
    of the rootfs image in e.g a custom dracut module were not
    able to build this image type because we did not allow
    the initrd_system attribute for the pxe type
* Mon Aug 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Use message variable for long message text
* Mon Aug 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed handling of bool values in initrd code
    Some values evaluated in the initrd code are created in
    the kiwi builder and passed in as a profile file. bool
    values created by kiwi for use in shell scripts takes
    the string 'true' or 'false' or are not set at all if not
    specified in the kiwi XML description. Some code paths
    in the initrd code uses the '-n' switch to check for bool
    values, however if the string 'false' is passed '-n' will
    do the wrong thing. Therefore a method for the initrd
    code has been introduced to clearly handle bool values
* Mon Aug 05 2019 David Cassany <dcassany@suse.com>
  - Bump version: 9.18.9 → 9.18.10
* Fri Aug 02 2019 David Cassany <dcassany@suse.com>
  - Align setup.py with the correct license
* Fri Aug 02 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Pass components to debootstrap call
    If repo components are specified the collective list of
    component names should be passed to the debootstrap call.
    This Fixes #1157
* Thu Aug 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update image name for s390 oem integration test
    Align image name to the schema we use for all other
    integration tests
* Thu Aug 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed zipl bootloader setup
    targetgeometry not allowed for targettype SCSI
* Fri Jul 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.8 → 9.18.9
* Fri Jul 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed left over import of six module
    The use of the six compat module was needed to support py2
    With the drop of py2 support all of six was no longer needed.
    However this one was overlooked.
* Fri Jul 26 2019 Daniel Molkentin <daniel.molkentin@suse.com>
  - 99-kiwi-lib requires rmdir, install it
    Fixes bsc#1143033
* Thu Jul 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.7 → 9.18.8
* Wed Jul 24 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added multiconsole setup to Fedora build test
* Tue Jul 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow multiple values for grub terminal setup
    With regards to the grub documentation from
    https://www.gnu.org/software/grub/manual/grub/grub.html#terminal_005finput
    multiple terminal consoles can be active. This patch allows
    to specify terminal collection between serial, console and gfxterm
    This Fixes #1123
* Tue Jul 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.6 → 9.18.7
* Mon Jul 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed use of Command calls in destructors
    The Command class creates namedtuple to store the result
    of the call. That tuple is created inside of the Command
    namespace. If called inside of a __del__ destructor which
    is often the case in kiwi classes I recently observed an
    exception from python saying:
    File "/usr/lib64/python3.6/collections/__init__.py", line 429, in namedtuple
    File "<string>", line 1, in <module>
    ModuleNotFoundError: import of builtins halted; None in sys.modules
    I do not understand why this is a problem for python now
    and only found the solution in making the command_type variable
    a global namedtuple.
* Mon Jul 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.5 → 9.18.6
* Sat Jul 20 2019 Neal Gompa <ngompa13@gmail.com>
  - Fix the pyxattr dependency to allow kiwi to function
    Most Linux distributions offer the pyxattr module, including
    openSUSE Tumbleweed. Going forward, we will use the pyxattr
    module by default as a dependency and only switch back to the
    other xattr module when on older SUSE Linux distributions that
    lack the pyxattr module.
    Note that because kiwi uses setuptools to create the CLI entry
    points, kiwi checks the Python dependencies before executing,
    so we change the dependency in the setup.py accordingly so that
    it will not fail to start.
* Fri Jul 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.4 → 9.18.5
* Fri Jul 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update spec file requirements for xattr
    On suse systems the python-xattr module is used. On any other
    distribution the python-pyxattr module is used. This commit
    modifies the spec file to reflect the Requires tag appropriately.
    On CentOS there is currently no pyxattr build available. Thus we
    provide that package for this target in the KIWI Staging area
    at Virtualization:Appliances:Staging. There is an ongoing effort
    to bring pyxattr to EPEL which would make it available on CentOS
    and would obsolete the custom build we did.
* Fri Jul 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.3 → 9.18.4
* Fri Jul 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update PXE integration test
    Move to multibuild, build one standard(uncompressed) filesystem
    image and one compressed version. In any case we expect only
    one compression process either on the filesystem file or on
    the archive creation. This is related to Issue #1039
* Fri Jul 19 2019 David Cassany <dcassany@suse.com>
  - Do not recompress PXE image if compressed flag is true
    This commit is two fold:
    * Refactor PXE builder to make use of the ArchiveTar instead of
    directly calling tar command.
    * Do not compress PXE tarball if the contained image is already
    compressed according the type's compressed attribute.
    Related to #1039
* Fri Jul 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed use of FileSystemBuilder class
    This was a broken coding for the construction of a
    FileSystemBuilder instance in the PxeBuilder implementation.
    The unit testing did not fail due to mocking code.
    Integration testing however showed it immediately
* Thu Jul 18 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added support for fscreateoptions attribute
    Along with the fsmountoptions attribute there is now also the
    fscreateoptions attribute which allows to control the options
    used for creating the filesystem. Please note, it's not kiwi's
    task to validate that the given option string is supported
    by the selected filesystem. This means providing wrong values
    here will cause the build to fail at the time the filesystem
    gets created. This Fixes #1109
* Wed Jul 17 2019 David Cassany <dcassany@suse.com>
  - Do not compress the install tarball archive
    Most of the components of the *.install.tar.xz file of a PXE install
    image are already compressed, thus it doesn't make much sense to
    recompress them again.
    Fixes #1032
* Tue Jul 16 2019 Dan Čermák <dcermak@suse.com>
  - virtual_size must be an integer in metadata.json for libvirt vagrant boxes
    vagrant-libvirt expects that the parameter virtual_size from metadata.json is an
    integer and not a string.
    Supplying a string results in a backtrace when the user provides a different
    value for libvirt.machine_virtual_size (as the integer is then compared to
    string).
* Tue Jul 16 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.2 → 9.18.3
* Mon Jul 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed ISO creation in EFI mode with cdrtools
    The changes introduced in #1113 will use the configured bootloader
    e.g grub to boot the ISO image in BIOS and EFI mode. The creation
    process works flawlessly if xorriso is used. However if cdrtools
    are configured the options passed to e.g mkisofs were wrong. In
    addition it's not possible to create a hybrid ISO based on
    isohybrid if the loader is not isolinux. If cdrtools are in use
    the process to make an ISO hybrid bootable is always based on
    isohybrid and thus only works with isolinux. This patch also
    covers this case with a warning message and the consequence that
    we have to skip the hybrid setup in this case.
* Mon Jul 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed setup of bootloader files
    The BootLoaderConfig class interface writes several files
    e.g etc/sysconfig/bootloader, boot/grub2/grub.cfg and more.
    Depending on the image type some of those files belongs
    into the root directory and some belongs into the boot
    directory. For standard images both locations points to
    the same master root entry point. However for special
    types like live systems the root tree and the boot tree
    are different targets. For example live root filesystems
    are a squashfs compressed image file whereas the plain
    booting information lives outside. Because of that this
    patch introduces a refactoring of the BootLoaderConfig
    class to allow to distinguish between root_dir and
    boot_dir paths. In addition the live image builder makes
    use of the new concept and thus Fixes #1112
* Fri Jul 12 2019 David Cassany <dcassany@suse.com>
  - Do not create a new machine-id file
    This commit ensures KIWI is not creating a new machine-id empty file
    in case it was not provided during the system installation.
    Fixes bsc#1141168
* Fri Jul 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.1 → 9.18.2
* Fri Jul 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation references
    The kiwi project has been moved into its own upstream
    organisation named OSInside. Due to the move some doc
    and README references needs to be adapted
* Fri Jul 12 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.18.0 → 9.18.1
* Thu Jul 11 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec for use with Recommends
    The Recommends tag is not known by CentOS/RHEL < v8
* Thu Jul 11 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.42 → 9.18.0
* Wed Jul 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation
    The kiwi-descriptions repository has been moved into the
    OSInside organisation
* Wed Jul 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - drop py2 variant of kiwi from completion
* Wed Jul 10 2019 Neal Gompa <ngompa13@gmail.com>
  - Simplify packaging and re-add support for building for CentOS 7
* Tue Jul 09 2019 Dan Čermák <dcermak@suse.com>
  - Don't add config.vm.base_mac to libvirt vagrant boxes
    - Refactor VagrantConfigTemplate to no longer require a base_mac by default
    - Move _random_mac() to Virtualbox subclass
    - Include config.vm.base_mac in Virtualbox boxes via
    get_additional_vagrant_config_settings()
    This fixes #1119
* Mon Jul 08 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.41 → 9.17.42
* Mon Jul 08 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed get_persistent_device_from_unix_node
    The method get_persistent_device_from_unix_node takes a device
    path and looks up it's basename to be present as persistent
    variant below the given schema, e.g by-id. However if the
    method receives an already persistent device path e.g from
    /dev/mapper the persistent schema representation will only
    match a numbered dm-N device and not the map name. The method
    then returns nothing but should return the original device
    path. This caused bad after effects like reported in
    Issue SUSE-Enceladus/azure-li-services#163
* Sun Jul 07 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Drop support for python2
    Python2 is announced to be unmaintained from Jan 2020.
    KIWI supports Python 2.7 and it should not support any python version that
    is not maintained upstream. This Fixes #1036
* Fri Jul 05 2019 Dan Čermák <dcermak@suse.com>
  - [doc] Add user documentation about the usage of the embedded Vagrantfile
    - Document the usage of the `vagrantconfig.embedded_vagrantfile` attribute
    - Remove the suggestion to generate the ssh keys during image creation (this
    results in **all** boxes having the same ssh host keys, which is pretty
    dangerous if someone would use a vagrant box in a production environment.)
    - Stop recommending veewee, this project is dead
    - Replace forgotten hard coded number with {schema_version}
* Thu Jul 04 2019 Dan Čermák <dcermak@suse.com>
  - Fix test breakage when /etc/kiwi.yml is present
    The unit test for the RuntimeConfig class are also testing the default values in
    some functions. To work around a possibly existing ~/.config/kiwi/config.yml,
    several functions change the value of HOME. This is unfortunately not
    sufficient if a /etc/kiwi.yml exists, as that one is taken as a fallback *if*
    ~/.config/kiwi/config.yml isn't present.
    This issue is fixed by creating a default_runtime_config with os.path.exists
    patched to return False. Thereby none of the runtime configuration files will be
    taken into account.
* Thu Jul 04 2019 Dan Čermák <dcermak@suse.com>
  - Add embedded_vagrantfile attribute to vagrantconfig
    This element allows the user to specify a relative path to an alternative
    Vagrantfile that will be embedded inside the finished Vagrant box.
    - update XML schema
    - add additional logic to DiskFormatVagrantBase.create_image_format
    - add unit test for the custom Vagrantfile
    - fix other vagrant unit tests
* Thu Jul 04 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.40 → 9.17.41
* Wed Jul 03 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update Boot From Hard Disk method
    Instead of searching for an efi binary to boot, use the exit method
    that exits from grub and let the firmware choose the next entry
    in the device list
* Wed Jul 03 2019 Vladimir Nadvornik <nadvornik@suse.cz>
  - Do not crash on missing HOME
* Tue Jul 02 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added live ISO integration tests for arm
* Tue Jul 02 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Consolidate syslinux file names and search paths
    Handle those file names and search path in the Defaults space
    and only once in the code
* Tue Jul 02 2019 Guillaume GARDET <guillaume.gardet@free.fr>
  - Remove '^' which break BaseStripFirmware function (boo#1132455)
* Mon Jul 01 2019 David Cassany <dcassany@suse.com>
  - Do not supress output for dracut call
    This commit adds a stderr_to_stdout option to Command.run method to
    redirect stderr to stdout.
    Additionally this commit also includes to the debug log the dracut
    call output, including both, stderr and stdout.
    Fixes #1114
* Mon Jul 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed path_test unit test
    The code there checked for the message of an exception
    but recent changes in pytest did not allow to do it that
    way anymore.
* Mon Jul 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed zipl bootloader setup
    On zipl we manually move the kernel and initrd file to the
    zipl boot path because symlinks can't be read. That move
    operation used the wrong filenames and was broken since
    baseCreateCommonKernelFile is only used in the legacy
    custom kiwi boot images but not in the dracut case.
* Fri Jun 28 2019 David Cassany <dcassany@suse.com>
  - Adding support for Pacman package manager
    This commit adds support for pacman package manager and, in
    consequence, support for Arch Linux images. It also adds
    the package definition for Arch Linux.
* Fri Jun 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - update per review by Tom
* Thu Jun 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed spec file requirement list for arm on Fedora
    The package u-boot-tools is named uboot-tools on Fedora and RHEL
* Thu Jun 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update secure boot fallback code
    With the concept of shim being an option and not mandatory
    also the fallback code has to adapt and treat the absence
    of shim.efi as not fatal. In this situation we expect the
    found grub.efi binary to be correctly signed which we can
    only assume but not prove
* Thu Jun 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make signed grub search path more generic
* Wed Jun 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update distribution support information
    Update the documentation with regards to our supported
    distribution statement. This Fixes #1108
* Wed Jun 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update signed grub.efi search path list
    On arm there is no shim package that provides a signed grub
    loader for secure boot. Instead the grub package(s) provides
    the signed loader under yet another location in the system.
    This commit adds the new search path
* Wed Jun 26 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor ISO boot, use grub in EFI mode
    Before this commit isolinux was used to boot an ISO and
    thus forms a hard requirement. isolinux however only
    exists for the x86 platform. This limitation did not
    allow to create ISO images for other platforms. With this
    commit a refactoring of the ISO boot setup is introduced.
    * isolinux is only used if the bios firmware is requested
    and the platform matches the x86 architecture. A runtime
    check will check for this condition and exits early if
    not applicable
    * in case of the EFI firmware we already used grub in
    EFI mode but still had isolinux in place for the legacy/CSM
    boot. That part is now also replaced by a platform specific
    grub eltorito image and grub's boot_hybrid.img for hybrid
    boot. On platforms that do not provide those modules the
    support for it will be skipped
    With this change in place it's possible to control the ISO
    boot layout through the firmware setup and all platform
    specific modules are handled as such. Therefore we also
    deleted the syslinux requirement. This Fixes #1092
* Tue Jun 25 2019 David Cassany <dcassany@suse.com>
  - Fix memory leak in OCI contianer tests
    This commit fixes a memory leak in container_image_oci_test caused
    by partially mocking a file opening. A ContainerImageOci instance
    tries to open and read two files: the runtime configuration, if
    present, and the `/.buildenv`, if present. In order to test the
    `/.buildenv` presence file opening is mocked causing the runtime
    configuration reading fall in an inifite loop. This commit mocks the
    the RuntimeConfig instances to avoid this issue.
    Fixes #1110
* Mon Jun 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Stabilize Gitlab rpm stage
    The rpm stage in the gitlab CI pipeline runs against a collection
    of mirror services. If those mirrors are not available the test
    fails. Such failed tests are cumbersome because they don't indicate
    an error condition we can/should fix. The openSUSE TW mirrors
    showed to be unreachable more often than others which might be
    because that target changes their content relatively often. This
    patch changes the test strategy to allow the TW rpm test to fail
    but still keep the other rpm targets mandatory as they don't show
    the connection problems.
* Fri Jun 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Provider better error message in prepare phase
    In case of an error the real valuable information is often
    somewhere in the package manager output that does not get
    exposed to the users console by default. The error message
    we provide should tell users how they can get further details
    such that they know how to find the real cause of the problem.
    This patch enhances the error message in that regard.
* Tue Jun 11 2019 David Cassany <dcassany@suse.com>
  - Make kiwi installable in a venv
    This commit sets the buildroot to the venv `sys.prefix`. This way
    all the binaries are installed in a path under the venv.
    Fixes #1022
* Fri Jun 07 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.39 → 9.17.40
* Wed Jun 05 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Decrease the default min partition size
    The default 50M as min size for a partition could be set
    to a smaller value. For now 10MB seems to be enough for
    the overhead calculation and leads to more accurate results
    on the specified size constraints
* Mon May 27 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update documentation for consistency
    Instead of hard coded names for example images and their
    versions a prolog map including placeholders has been
    added.
* Fri May 24 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.38 → 9.17.39
* Thu May 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update obs docs per review by Tom
* Wed May 22 2019 David Cassany <dcassany@suse.de>
  - Disable check-valid-until with repository_gpgcheck
    This commit is two fold:
    * From one side fixes a wrong use of the `trusted` option for
    apt repositories. `trusted=no` does not force to run the gpg checks
    it just forces the repository to be considered untrusted regardless
    the result of the security checks.
    * From the other side it disables the option `check-valid-until` in
    case gpg checks are disabled using the `repository_gpgcheck`. It
    works at repository level. This enables using unmaintained or
    expired repositories for the build.
    Fixes #1028
* Fri May 17 2019 Thomas Schraitle <toms@suse.de>
  - Simplify shell pipe expression with shell builtin
    Replace "echo $var | sed ..." expression with ${var//SEARCH/REPLACE}
    shell builtin as suggested by Codacy
* Thu May 16 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed runtime checker message
    The output of check_image_include_repos_publicly_resolvable was
    not well formatted and was also using an object address that
    is not useful for users
* Wed May 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Make mediacheck runtime check arch independent
    The check_mediacheck_only_for_x86_arch runtime check fails on
    non x86 architectures but the tagmedia toolchain exists independent
    of the platform architecture. This Fixes #1091
* Tue May 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Set home as protected path
    Along with adding home to the protection list, cleanup
    the prepare instance cleanup code in a way that it only
    runs if a root_bind object exists which needs to call
    its cleanup path
* Mon May 13 2019 Dan Čermák <dcermak@suse.com>
  - Extend docs about building multiple profiles on OBS
* Fri May 10 2019 Dan Čermák <dcermak@suse.com>
  - Remove FIXME from the runtime configuration file example
* Thu May 09 2019 Dan Čermák <dcermak@suse.com>
  - Improve the documentation about building in the Build Service
    Co-Authored-By: Thomas Schraitle <tom_schr@web.de>
* Thu May 09 2019 Dan Čermák <dcermak@suse.com>
  - Turn sphinx warnings into errors
    Modify the sphinx Makefile to treat warnings
    like undefined references as errors
* Wed May 08 2019 Alberto Planas <aplanas@gmail.com>
  - kiwi-live-lib: mount live ISO as read-only
    During the boot process of a live image, dracut shows this WARNING:
    dracut-initqueue: mount: /run/initramfs/live: WARNING: device write-protected, mounted read-only
    This is not a problem, as the live ISO image is, indeed, read-only.
    This patch fix this cosmetic issue being explicit in the mount
    options in `mountIso` function.
* Tue May 07 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Call isolinux-config only on supported archs
* Mon May 06 2019 David Cassany <dcassany@suse.de>
  - Discard default dependencies for sysroot.mount
    This commit makes default dependencies from sysroot.mount to be
    explicitly omitted. This fixes potential inconsistencies in
    ordering pre-mount.service with local-fs.target. This change is
    also applied to upstream sysroot.mount generator here:
    https://github.com/systemd/systemd/pull/12281
    Fixes #1015
* Fri May 03 2019 David Cassany <dcassany@suse.de>
  - Fix locale setting
    For pre-Leap 15 openSUSE versions KIWI >= 9.12.0 was not completely
    setting locale, as it was missingto set the RC_LANG variable from
    `/etc/sysconfig/language` file. Current commit enforces to update
    locale in `/etc/sysconfig/language` (if the file exists) at the
    same time it applies systemd-firstboot configurations.
    Fixes #1081
* Thu May 02 2019 Dan Čermák <dcermak@suse.com>
  - Cleanup TODO & FIXME from xml_description.rst
* Fri Apr 26 2019 Dan Čermák <dcermak@suse.com>
  - Add GitLab CI pipeline badge to README.rst
* Fri Apr 26 2019 Dan Čermák <dcermak@suse.com>
  - Extend the development documentation
    Co-Authored-By: Thomas Schraitle <tom_schr@web.de>
* Fri Apr 26 2019 Dan Čermák <dcermak@suse.com>
  - Log thrown exceptions in Compress.get_format()
* Fri Apr 26 2019 Dan Čermák <dcermak@suse.com>
  - Fix documentation of Compress.get_format()
* Fri Apr 26 2019 Dan Čermák <dcermak@suse.com>
  - log exception in SystemPrepare.__del__
* Fri Apr 26 2019 Dan Čermák <dcermak@suse.com>
  - Use yaml.safe_load instead of yaml.load
    yaml.load is relatively dangerous when the loaded data comes from untrusted
    sources, as it can allow for arbitrary code execution, see:
    https://pyyaml.org/wiki/PyYAMLDocumentation#LoadingYAML
    safe_load limits the created python objects to the basic Python types like
    integers and strings, which is all that we need for the runtime configuration
    file.
* Thu Apr 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixing doc source for broken refs and xml syntax
* Wed Apr 24 2019 Dan Čermák <dcermak@suse.com>
  - Document the usage of profiles via the CLI and OBS
* Wed Apr 24 2019 Tom Schraitle <tomschr@users.noreply.github.com>
  - Apply suggestions from @tomschr
    Co-Authored-By: dcermak <45594031+dcermak@users.noreply.github.com>
* Wed Apr 24 2019 Dan Čermák <dcermak@suse.com>
  - Improve the documentation of the runtime configuration file
    Co-Authored-By: Thomas Schraitle <tom_schr@web.de>
* Wed Apr 24 2019 Tom Schraitle <tomschr@users.noreply.github.com>
  - Apply suggestions from @tomschr
    Co-Authored-By: dcermak <45594031+dcermak@users.noreply.github.com>
* Wed Apr 24 2019 Dan Čermák <dcermak@suse.com>
  - Extend the documentation of Custom Disk Volumes
* Wed Apr 24 2019 Dan Čermák <dcermak@suse.com>
  - Add documentation of the XML schema in a tutorial like fashion
    Co-Authored-By: Thomas Schraitle <tom_schr@web.de>
* Wed Apr 24 2019 Dan Čermák <dcermak@suse.com>
  - Add documentation how to configure VMX build types
* Tue Apr 23 2019 Dan Čermák <dcermak@suse.com>
  - Cleanup warnings in utils/size.py
    - use a raw string for the regexp search string
    - improve the readability of the returned value
* Tue Apr 23 2019 Dan Čermák <dcermak@suse.com>
  - Make the user.password attribute mandatory
    Not providing a user password results in an error when usermod or openssl
    is later called by kiwi (depending on the value of `pwdformat`).
    This fixes #1061.
* Tue Apr 23 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed repo setup for cloud integration test builds
    Using the devel:languages:python repos leads to inconsistencies
    on the module dependencies
* Mon Apr 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.37 → 9.17.38
* Mon Apr 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete obsolete repository types
    Deleted red-carpet, slack-site, up2date-mirrors, urpmi and yast2
    from the allowed values list of the repository type attribute.
    This Fixes #1029
* Mon Apr 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed build_in_buildservice stale references
    Fixed style issues reported on sphinx build. Also deleted
    pointers to non existing references
* Mon Apr 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete suseRemovePackagesMarkedForDeletion
    Any package removal is controlled by kiwi itself. There is no
    need to provide a shell helper method that is rpm specific.
    This Fixes #1054
* Thu Apr 18 2019 Dirk Mueller <dirk@dmllr.de>
  - Preserve licenses/other txt files by baseStripFirmware (bsc#1132455) (Fixes #1063)
    LICENSES are usually not large and should be kept alongside
    of the binaries. Also some firmware files sideload additional
    txt files (like for example brcmfmac43430 needs the sdio description
    txt files). We should just always include them because they're
    not listed as needed files.
    Co-Authored-By: Dan Čermák <dcermak@suse.com>
* Tue Apr 16 2019 Dan Čermák <dcermak@suse.com>
  - Split overview/workflow.rst into multiple files
    Co-Authored-By: Thomas Schraitle <tom_schr@web.de>
* Tue Apr 16 2019 Tom Schraitle <tomschr@users.noreply.github.com>
  - Update doc/source/building/build_in_buildservice.rst
    Co-Authored-By: dcermak <45594031+dcermak@users.noreply.github.com>
* Mon Apr 15 2019 Dan Čermák <dcermak@suse.com>
  - Rework documentation about building on OBS
* Mon Apr 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added integration test guest image for OpenStack
* Sun Apr 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update suse integration tests per Factory changes
    The way plymouth themes are provided has changed on suse.
    The package plymouth-branding-openSUSE is no longer providing
    the theme named openSUSE. In fact the plan is to switch to
    the upstream bgrt theme which is provided in another package.
    This commit adapts to the changes in the distribution
* Fri Apr 12 2019 Dan Čermák <dcermak@suse.com>
  - Bump copyright year in the docs
* Thu Apr 11 2019 Dan Čermák <dcermak@suse.com>
  - Fix spelling in kiwi.rnc
* Thu Apr 11 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.36 → 9.17.37
* Wed Apr 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fix rpm metadata creation
    There are rpm versions that require access to /dev and fail
    with the error message 'Failed to initialize NSS library'
    For details see: https://bugs.centos.org/view.php?id=14767
    Due to the rpm location checkup fix from Issue #1037 this
    change impacts builds for distributions that uses an rpm
    version with the above behavior (e.g CentOS) and fails as
    consequence of the rpm call error. This commit fixes this
    in a way that we make sure the host /dev is available at
    the time of the call.
* Wed Apr 10 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.35 → 9.17.36
* Wed Apr 10 2019 David Cassany <dcassany@suse.de>
  - Fix xml syntax on documentation example
* Wed Apr 10 2019 David Cassany <dcassany@suse.de>
  - Add custom curl options docs
* Tue Apr 09 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor handling of runtime tests check dict
    Consolidate check list into CliTask base class such that we
    can avoid duplication of runtime check dicts. Only runtime
    tests that require stateful information according to the
    commandline call are handled directly in the task code
* Tue Apr 09 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Delete check_grub_efi_installed_for_efi_firmware
    The motivation is nice to check if the required grub module
    package is part of the package list if the efi firmware is
    requested, but as long as there is no distribution wide
    standard for packaging grub this check will cause more trouble
    than it is of help. Currently it failed for the arm architecture
    and the grub2-arm64-efi package. We decided to prevent checking
    against static lists and dropped this runtime check. Missing
    grub modules will be recognized at the grub stage when we
    search for them.
* Tue Apr 09 2019 David Cassany <dcassany@suse.de>
  - Adding custom curl options for dracut-kiwi-lib module
    This commit parses the `rd.kiwi.install.pxe.curl_options` argument from
    the kernel command line to read and use curl options for the
    `fetch_file` function of `kiwi-net-lib.sh` utility. Options are passed
    as comma separated values.
    Fixes #891
* Mon Apr 08 2019 David Cassany <dcassany@suse.de>
  - Update bootstrap macro management
    This commit extends the bootstrap macro management to also consider
    the case where image was already bootstrap. Note this is a common case
    for building derived container images and also the situation when
    `--allow-existing-root` flag is in use.
* Fri Apr 05 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Auto upgrade all image descriptions to v7.0 schema
* Fri Apr 05 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Deleted pxedeploy section
    There is no further demand in the client config creation for the
    legacy netboot code. Customers using the netboot initrd already
    create the client config.<MAC> file manually or through another
    system. With the next generation kiwi we also recommend the disk
    based network deployment using the dracut capabilities and marked
    the netboot code as still supported but on the legacy stream.
    Along with the deletion in the schema the following changes
    were also done:
    * Deleted use of pxedeploy section in implementation
    * Increase schema version to v7.0
    * Update documentation on schema version update
    * Added xsl stylesheet conversion from v6.9 to v7.0
    Automatic schema version upgrade from v6.9 to v7.0 deletes
    the pxedeploy section from any type specification
    This Fixes #19
* Thu Apr 04 2019 David Cassany <dcassany@suse.de>
  - Fix filesystem labels
    If multiple volumes were defined they were not properly labeled. This
    commit fixes a miss use of custom_args dictonary by the filesystem
    base class. This class was modifying the given custom_args that is
    passed by reference, thus modifiyng the custom_args instance of the
    caller. This issue was causing to propagate the modified
    create_options of a filesystem across all the volumes, causing all
    volumes to be labelled as ROOT. With this commit Filesystem class
    performs a deepcopy of the custom_args dictionary to limit the scope of
    any change inside each Filesystem instance.
    Fixes #1044
* Thu Apr 04 2019 David Cassany <dcassany@suse.de>
  - Bump version: 9.17.34 → 9.17.35
* Wed Apr 03 2019 David Cassany <dcassany@suse.de>
  - Fix regression on kiwi-repart dracut module
    There was a regression introduced in #1035 (048b5c3e). We mask
    systemd-fsck-root.service during the repart, but we are not always
    unmasking it. If the repart is not possible the service is masked but
    not unmasked, which causes the boot to fail.
    With this commit after masking the fsck service we trap EXIT and run the
    unmask command on script exit. This way we ensure the unmask command is
    always executed.
* Tue Apr 02 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Doc fix for lex literal_block as xml
* Mon Apr 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update compression flag for qcow2 format
    In case of a qcow2 format we store the result uncompressed
    Since the format conversion only takes the real bytes into
    account such that the sparseness of the raw disk will not
    result in the output format and can be taken one by one
    This Fixes bsc#1128146
    In addition the commit includes a refactoring for the
    evaluation of the compress flag in the runtime config.
    Instead of the global overwrite, the flag gets evaluated
    individually at the time the result metadata is created
* Mon Apr 01 2019 David Cassany <dcassany@suse.de>
  - Add the possibility to disable runtime checks
    This commit adds runtime configuration parameters to disable the runtime
    checks. This is specially handy if someone does not want to use the kiwi
    dracut modules and provide custom ones instead. In orde disable some
    runtime check consider a runtime config yaml like:
    runtime_checks:
    - disable:
    - check_dracut_module_for_oem_install_in_package_list
    - check_dracut_module_for_live_iso_in_package_list
    This commit fixes #893
* Mon Apr 01 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixup has_rpm method from RpmDataBase class
    The method checked for the presence of /usr/bin/rpm. But
    that binary is also provided by another toolkit named
    busybox. Thus to check if the rpm we are aiming for is
    present the check has been modified to look for /usr/bin/rpmdb
    which is exclusively provided by rpm only. This Fixes #1037
* Sun Mar 31 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed creation of image metadata files
    At the end of a build process the metadata information files .packages
    and .verified are created. On rpm based systems, rpm is invoked as
    chrooted operation inside the new root tree. For images that gets
    installed exclusively from the bootstrap phase there is no rpm inside
    of the image and the call fails. The result are empty metadata files.
    This patch prevents calling rpm inside of the image root tree if it's
    not installed and also uses the RpmDataBase interface instead of
    directly calling rpm. This Fixes #1037
* Fri Mar 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.33 → 9.17.34
* Fri Mar 29 2019 Stefan Seyfried <stefan.seyfried@sap.com>
  - kiwi-repart: avoid race between repart and fsck
    See issue #1034, this fixes non-booting CentOS-7 OEM images that fail
    during repartition / FS resize.
    Summary: all parted actions trigger a rescan of partition tables and
    this repeatedly starts / stops systemd-fsck-root.service until it
    finally fails. The workaround is to mask systemd-fsck-root.service
    during repartitioning / FS resize.
* Fri Mar 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update travis doc building target
    Disable doc test on travis, we have this in the gitlab-ci
    pipeline.
* Fri Mar 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Move sphinx config to python3
    Disable modules that have not been ported to sphinx 2.0 API
* Fri Mar 29 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Disable linkcheck/spellcheck
    The spellcheck plugin has not been moved to the sphinx 2.0 API
    and there are tons of spelling mistakes reported due to the use
    of technical terms that are unknown to spellcheck. Also disabled
    the linkcheck because it just stands more in our way than it
    reports issues that needs to be fixed.
* Thu Mar 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.32 → 9.17.33
* Thu Mar 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added integration test for bootstrap only builds
* Thu Mar 28 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed bootstrap only building
    Image descriptions that define packages in the bootstrap section
    only don't need a package manager inside of the image. However
    the code to update the location of the rpm database did not
    check the presence of rpm and failed on such image descriptions.
    This Fixes #1030
* Tue Mar 26 2019 Dan Čermák <dcermak@suse.com>
  - Extend live ISO documentation
* Tue Mar 26 2019 Alberto Planas <aplanas@gmail.com>
  - Replace @staticmethod with @classmethod when needed
    @classmethod are used in Python to represent methods that can
    query and update the class (cls parameter). Is expected to be
    used for metaprograming, or advanced techniques that require the
    access to the class itself, before we have an instance.
    @staticmethod are used to associate a function to a class. It will
    not be have access to the instance (self) not the class (cls). In
    other programming languages are known as class methods.
    This patch replace all the @classmethod with @staticmethod when
    there is not need to access to the cls parameter, because the
    intention is to be used as normal functions.
* Mon Mar 25 2019 Dan Čermák <dcermak@suse.com>
  - Minor improvements to the documentation
    - add a newline to the workflow's abstract
    - add warning to installation via the distro's package manager
    - fix package name of git
    - add marker for `Installation from OBS` section
* Mon Mar 25 2019 Dan Čermák <dcermak@suse.com>
  - Add intersphinx extension to the docs
* Mon Mar 25 2019 Dan Čermák <dcermak@suse.com>
  - New method: Path.access - thin wrapper arround os.access
    This function calls os.access, but first checks whether the input parameters are
    sane, instead of simply returning false when the file in question does not exist
    or an invalid mode was specified.
* Mon Mar 25 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Added doc chapter on Fstab modifications
* Fri Mar 22 2019 Dan Čermák <dcermak@suse.com>
  - Split code_style_plus_unit_test into two jobs for parallel runs
* Fri Mar 22 2019 Dan Čermák <dcermak@suse.com>
  - Addapt documentation to changed script calling convention
* Fri Mar 22 2019 Dan Čermák <dcermak@suse.com>
  - Only execute scripts via bash when they are not user executable
    Currently we call scripts directly through bash, which has the unfortunate
    disadvantage, that the shebang line is completely ignored.
    Now we instead check whether the owner of the script is allowed to execute it
    and if yes, we let the OS execute it (which takes the shebang into account) or
    otherwise call it through bash.
* Fri Mar 22 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Support optional fstab.patch file
    In addition to the support for fstab.append, users can now also
    provide a patch file to change the contents of the fstab file
    as it got written by kiwi. The feature is probably rarely used
    but needed in the area of suse's transactional update mechanism.
    This Fixes bsc#1129566 and Fixes #945
* Thu Mar 21 2019 Dan Čermák <dcermak@suse.com>
  - Add warning about a missing /vagrant/ folder to the documentation
* Thu Mar 21 2019 Dan Čermák <dcermak@suse.com>
  - Fix libvirt vagrant box Vagrantfile to use rsync by default
    The documentation is suggesting that rsync is used by default to synchronize the
    shared folders, yet the libvirt vagrant boxes used the system default (=nfs).
* Tue Mar 19 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.31 → 9.17.32
* Tue Mar 19 2019 Stefan Seyfried <stefan.seyfried@sap.com>
  - relax the live iso root dir permissions
    The root of the live ISO has permissions 0700, which is inconvenient if
    you mount it to explore its contents. Relax to 0755 instead.
    Without this, the mounted ISO FS can only be accessed by root.
* Mon Mar 18 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed race condition on live overlay mount
    Make sure to wait for all targets of the overlay mount
    This Fixes #1015
* Sun Mar 17 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.30 → 9.17.31
* Fri Mar 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update the documentation regarding vagrant boxes
    Extend the documentation on how to build VirtualBox vagrant boxes
    All this was done by Dan Čermák <dcermak@suse.com>
* Fri Mar 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Refactor incremental changelog update
    The creation of the package changelog is based on a reference file.
    However that reference file contained log information in a specific
    timezone which requires to hardcode the region of that timezone
    in the code to correctly run date/time calculations. This can
    be done better from a conceptual point of view. This patch changes
    the handling in a way that the reference file is a git log
    excerpt including the dates as git log lists them. The dates
    contains complete numeric time/date/zone information and can be
    used for calculations. The changelog helper tool converts the
    result data to match the requirements of rpm changelog files
    and prints the time/date information localized to the callers
    timezone or as UTC if the --utc switch is given. By default the
    user local timezone settings applies. That way the setup of
    the local timezone is immaterial to the changelog processor
    and the workaround in the gitlab-ci rpm stage can be deleted
    too.
* Fri Mar 15 2019 David Cassany <dcassany@suse.com>
  - Add buildah tool support for OCI and Docker types
    This commit adds buildah tool support for OCI and Docker types. It
    requires buildah and skopeo to be installed in the host. The use of
    umoci (kept as default choice) or buildah is configured using the
    runtime configuration file; consider the following structure:
    ```
    oci:
    - archive_tool: buildah
    ```
* Fri Mar 15 2019 David Cassany <dcassany@suse.de>
  - Fix derived docker images build
    This commit fixes the derived docker images when the base image is a
    compressed file. After the refactor in #998 the decompression of the
    base image and the skopeo call to import the decompressed image happened
    in absolutely independent scopes. NamedTemporaryFile python class by
    default deletes the created temporary file when the class instance is
    destroyed, this class is used to decompress the base image. Because of
    isolated scopes at the time skopeo was called the NamedTemporaryFile
    instance was not there anymore. This commit makes sure that the
    temporary file instance is already in memory at the time skopeo is
    called.
* Fri Mar 15 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed gitlab-ci rpm stage localtime setup
    By default the timezone of the container is set to UTC. However
    the reference changelog entries are created in the CET timezone.
    The current implementation uses dateutil.parser.parse to parse
    the reference date/time. That call takes the localtime into account
    and responds with a warning:
    + UnknownTimezoneWarning: tzname CET identified but not understood
    The current code does not convert the CET timezone into the
    localtime timezone (UTC in this case) and creates a timezone naive
    datetime object. That object however can't be used to compare
    with timezone aware datetime objects which causes a runtime
    exception. The qick fix here is to set the localtime to the
    timezone used in the reference changes file
* Thu Mar 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Limit scope of virtualbox_guest_additions_present
    This attribute is only used with the virtualbox provider.
    Added a schematron rule to limit the scope to the
    virtualbox provider only. This Fixes #1003
* Thu Mar 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Bump version: 9.17.29 → 9.17.30
* Thu Mar 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Add consistency check to update_changelog
    Don't take commits into account that are older than the
    given reference commit. This would destroy the chronological
    order. Missing commits older than the reference can be
    incorporated by rebuild_changelog_reference.sh
* Thu Mar 14 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Fixed reading of container config
    The additional_tags attribute is optional. If not set
    the container config hash does not contain this key.
    Accessing the key without the get() method leads to
    an unhandled python exception
* Wed Mar 13 2019 Stefan Seyfried <stefan.seyfried@sap.com>
  - add rd.kiwi.oem.maxdisk= boot parameter
    this limits the disks considered for oem deployment to a given size
* Wed Mar 13 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Abandon the bumpversion helper
    The bumpversion helper script updated the reference file
    with changes since the latest date of the existing reference.
    However even though the two pieces are in chronological order
    that does not mean that the concatenated version of those
    is still in chronological order. Thus that helper is deleted
    and a new helper rebuild_changelog_reference exists. That
    rebuilds the entire reference file from the history and
    makes sure it is in chronological order. The tool should
    only be called if the chronological order of the total changes
    information is violated which under normal conditions
    does not happen
* Wed Mar 13 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Allow --since|--until opts in update_changelog
    In addition to create changelog information since the
    latest date of a reference changelog, also allow to create
    changelog information until the latest data of a reference
    changelog
* Wed Mar 13 2019 Marcus Schäfer <marcus.schaefer@gmail.com>
  - Update changelog reference
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.28 → 9.17.29
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Update changelog reference
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Fixed bumpversion helper
    Make sure the commit for the changelog reference update
    and the commit for the version bump have different
    timestamps by sleeping 2sec between the two actions
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Update API documentation
    In reference to Refactor OCI images packing the difference
    between docker and OCI images is just on packing format.
    Thus the extra docker container subclass is no longer present.
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.27 → 9.17.28
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Update changelog reference
* Wed Mar 13 2019 Stefan Seyfried <seife+dev@b1-systems.com>
  - kiwi-dump-image: fix kiwi_oemdevicefilter for rd.debug
* Wed Mar 13 2019 Marcus Schäfer <ms@suse.de>
  - Added bumpversion helper
    Script that also updates the changelog reference file
    before the version bump. It's optional to use this but
    it would be handy as the commit would show the rpm
    changelog differences from one tag to the other
* Tue Mar 12 2019 Marcus Schäfer <ms@suse.de>
  - Fixed code smells on completion_generator
    Also update python interpreter to use for the completion
    and the changelog helpers
* Tue Mar 12 2019 Marcus Schäfer <ms@suse.de>
  - Update gitlab CI config
    The rpm stage needs python because the changelog script
    is now written in python
* Tue Mar 12 2019 Neal Gompa <ngompa13@gmail.com>
  - Drop duplicate EPEL7 reference in the test CentOS appliance
    We already request the standard, update, and extras repos and
    the EPEL7 repo separately. There's no reason to request the
    "centos" EPEL7 repo which combines standard+update and EPEL7
    repos already.
* Mon Mar 11 2019 Stefan Seyfried <seife+dev@b1-systems.com>
  - centos-appliance: reorder repos to fix build
    EPEL has older package versions of e.g. librepo, which breaks dnf.
    Re-prioritize to prefer the good CentOS packages instead of bad EPEL.
* Mon Mar 11 2019 Marcus Schäfer <ms@suse.de>
  - Update changelog file
    Fix changelog entries for their encoding, author name and format
    Also make sure commits are shown in reverse chronological order
    of the author date. We intentionally don't use the commit date
    because a commit can be older than the latest entry in the current
    reference file and would then not be part of the git log
    information
* Sun Mar 10 2019 Marcus Schäfer <ms@suse.de>
  - Introduce better changelog handling
    The current way of creating the changelog file for the package
    is based on reading the entire history of the git repository and
    turns that information into a changelog. The downside of this
    approach is that any change in the code that creates this changelog
    information will impact older entries and could cause a conflict
    on the changes file of the released package. This usually leads
    to declined package submissions and blocks us in fixing bugs
    in the changelog generator. This commit changes the process in
    a way that only changes related to the oldest entry of a reference
    changelog file compared to the current branch are taken into
    account. This Fixes #979
* Sun Mar 10 2019 David Cassany <dcassany@suse.de>
  - Adding a derived docker image build test
* Sun Mar 10 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.26 → 9.17.27
* Fri Mar 08 2019 Neal Gompa <ngompa13@gmail.com>
  - Use correct GRUB 2 and shim EFI packages for test CentOS 7 appliance
    CentOS 7 has inherited the changes from Fedora in how its EFI binaries
    are packaged, so we need to adapt to handle those and build the appliance
    properly.
* Fri Mar 08 2019 Marcus Schäfer <ms@suse.de>
  - Fixed evaluation of @root size setup
    The @root volume setup allows to specify a size for the root
    volume in an LVM setup. The size setting was not respected and
    the root volume was always resized to the rest space available.
    This patch fixes the read_volume_setup_all_free method
    on the dracut kiwi library to know if there is root volume
    setup and respect its contents. This Fixes #983
* Fri Mar 08 2019 Neal Gompa <ngompa13@gmail.com>
  - Update generated configuration file for DNF
    The dnf.conf file generated by KIWI contained some obsolete
    options as well as options that have been renamed.
    This change updates the options set so that they match what
    is expected by DNF and configures the appropriate behavior.
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.25 → 9.17.26
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - hotfix runtime check for count of fullsize volumes
    The check did not respect images that do not come up with
    a systemdisk section. systemdisk is an optional section and
    the test did not respect this and failed with a stack trace
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.24 → 9.17.25
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Update provider support status in vagrant docs
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Rebuild schema docs
    Create an up to date state of the oxygen schema doc in the repo
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Fixed Title underline too short warning in the doc
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Fixed permanent redirect links in documentation
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.23 → 9.17.24
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Cleanup example_dot_profile_config.xml
    Don't use multiple all size volumes
* Thu Mar 07 2019 Dan Čermák <dcermak@suse.com>
  - Add different installation methods to the documentation
* Thu Mar 07 2019 Marcus Schäfer <ms@suse.de>
  - Check for multiple allsize volumes setup
    Added runtime check check_volume_setup_defines_multiple_fullsize_volumes
    which reads the volume setup and counts the number of volumes that
    define a 'all' volume. Only one is allowed
* Wed Mar 06 2019 Marcus Schäfer <ms@suse.de>
  - Complete test coverage on iso tools testing
    If there is no mkisofs/genisoimage present on the system, the
    tests based on real example iso files are skipped. The code
    tested in this case is now covered in a mock style to run
    through the logic even without the tools in place
* Wed Mar 06 2019 Marcus Schäfer <ms@suse.de>
  - Follow up fix for zypper compat link
    Move the code handling the compat setup of the rpm database
    to the correct method of the repository API. Call the
    import of the signing keys only if there are signing
    keys
* Wed Mar 06 2019 Dan Čermák <dcermak@suse.com>
  - Fix suseRemoveYaST to work with set -e
    When the config.sh is invoked with set -e then suseRemoveYaST causes the whole
    script to fail when no yast packages are present. The problem is that `grep
    yast` returns 1 in that case.
    => Explicitly ignore the return value of grep
    Furthermore, if no YaST packages were found, we don't want to invoke rpm, as
    that would fail too (as it is called without any parameters).
* Wed Mar 06 2019 Marcus Schäfer <ms@suse.de>
  - Care for update alternatives on rpmdb move
    In set_database_to_image_path we also have to care for the
    move of the alternatives path to the new rpmdb location
* Wed Mar 06 2019 Marcus Schäfer <ms@suse.de>
  - Fixup zypper/suse link to rpm database
    The compat code generating the /var/lib/rpm link was only
    effective if a signing key was specified, however it should
    be effective in any case
* Tue Mar 05 2019 Marcus Schäfer <ms@suse.de>
  - Run cdrtools based unit tests on demand
    Only if the underlaying system provides legacy cdrtools,
    run the unit tests which actually reads the test data iso
    using those tools.
* Tue Mar 05 2019 Dan Čermák <dcermak@suse.com>
  - Add GitLab CI pipeline status to README.rst
* Mon Mar 04 2019 Marcus Schäfer <ms@suse.de>
  - Improve error messages
    The error messages for running a build against an undefined
    image definition as well as the error message to explain why
    the imageinclude attribute can only be used with public repos
    has been improved by suggestions from J. Mixer
* Mon Mar 04 2019 Stefan Seyfried <seife+dev@b1-systems.com>
  - pxe: use dracut's network code, drop own setup
* Fri Mar 01 2019 Dan Čermák <dcermak@suse.com>
  - Extend the GitLab-CI pipeline
    - build the documentation in the build_doc stage
    - run tests for all supported Python versions in tox_check
    - build an RPM for Fedora 29 & OpenSUSE Tumbleweed in RPM stage
* Fri Mar 01 2019 Neal Gompa <ngompa13@gmail.com>
  - Ensure DNF is installed for kiwi itself and the test CentOS 7 appliance
    In e33f53aa4513c38a42736c82db3ec5e0b9da41d4, we switched to DNF when requesting YUM.
    This now means we need to ensure DNF is installed for images where
    we previously used YUM for that.
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Add environment for running the unit tests with Python 3.7 to tox
    Python 3.7 does only appear to be available on Ubuntu Xenial with sudo enabled
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Extend documentation about using KIWI to build vagrant images
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Extend documentation on how to build inside OBS
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Bump required minimum disk space
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Extend index.rst by a "advertising" section
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Add url to PyPI & use https instead of http
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Extend quickstart to be more viable as a stand-alone document
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Reorder TOCs so that the most important comes first
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - (whitespace-cleanup) on doc/source/overview/workflow.rst
* Thu Feb 28 2019 Neal Gompa <ngompa13@gmail.com>
  - Rework package manager selection to use DNF when YUM is requested
    YUM v3 is no longer developed, having been superseded by DNF for
    several years. With DNF now available as a usable package manager
    in Red Hat Enterprise Linux 7 through the Extras channel and
    SUSE Linux Enterprise 15 through PackageHub, there is no reason for
    keeping support for YUM v3 around.
    We are keeping support for requesting YUM because in Red Hat Enterprise
    Linux 7, DNF is referred to as "YUM v4", and it is simply referred to
    as "YUM" in Red Hat Enterprise Linux 8. To avoid confusion from people,
    we're just going to leave it in place as an alias to the DNF package
    manager.
    As for why this is happening now, Fedora is retiring YUM v3 in
    Fedora 31, so we might as well get it over with and cut over now.
    Reference: https://fedoraproject.org/wiki/Changes/Retire_YUM_3
* Thu Feb 28 2019 Dan Čermák <dcermak@suse.com>
  - Fix some spelling mistakes & sentence order in the docs
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    Run tox targets on demand. With GitLab CI selected containers
    are small but also limited in their scope.
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - Fixed iso tools unit test
    Test was not environment independent and behaved differently
    compared to which iso tool change is installed.
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    Select 3.6 image to run the test
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - Fixed shellcheck issue on kiwi-partitions-lib.sh
    Fixup SC2046: Quote this to prevent word splitting
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    Not so easy to get pip running there. Try standard binary
    name of after pip ugrade to install the rest of the chain
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    No alternative naming for py3 commands
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    Fixed install of tox on the runner
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    Require tox to be installed on the runner
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - GitLab CI integration
    pip not installed by default on the runner
* Thu Feb 28 2019 Marcus Schäfer <ms@suse.de>
  - Looks like Travis will go away
    Try moving CI integration to GitLab
* Wed Feb 27 2019 Marcus Schäfer <ms@suse.de>
  - Write sha256sum --check compatible shasum format
    Change the output format of the bundler shasum file to be
    compatible with a 'sha256sum --check' call.
    This fixes bsc#1127173
* Wed Feb 27 2019 Marcus Schäfer <ms@suse.de>
  - Move azure integration test build to Factory repos
* Wed Feb 27 2019 Marcus Schäfer <ms@suse.de>
  - Fixed package list of azure integration test
* Wed Feb 27 2019 Marcus Schäfer <ms@suse.de>
  - Fixed repo setup from azure integration test
* Wed Feb 27 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.22 → 9.17.23
* Tue Feb 26 2019 Dan Čermák <dcermak@suse.com>
  - Allow xdist to run the tests in parallel for the Python 2.7 env
    This reverts an accidental change that was introduced with
    942ed7a8eea65f1c99b5f51a8587cfbeae73b484, which removed the {posargs} from
    tox.ini for the python 2.7 environment.
* Tue Feb 26 2019 Marcus Schäfer <ms@suse.de>
  - Added get_description method to XMLState
    In preparation to access the contents of the <description>
    section this pull requests adds a simple method to read
    the contents.
* Mon Feb 25 2019 Marcus Schäfer <ms@suse.de>
  - Update tools from strip list for oemboot
    For legacy oemboot kiwi descriptions the strip list for
    tools to keep in the initrd is still active. On s390
    required tools for dasd_configure were missing and got
    added by this commit. This Fixes #963
* Mon Feb 25 2019 Marcus Schäfer <ms@suse.de>
  - Fixed import of signing keys
    In reference to bsc#1112357 it was required to add the compat
    symlink /var/lib/rpm such that zypper can read the signing
    keys. Unfortunately zypper does not use the configured rpmdb
    from the rpm macro setup.
* Mon Feb 25 2019 Stefan Seyfried <seife+dev@b1-systems.com>
  - add rd.kiwi.install.pass.bootparam boot parameter
    if this boolean is set, most boot parameters are passed on
    to the kexec kernel on OEM image deployments
* Sat Feb 23 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.21 → 9.17.22
* Sat Feb 23 2019 Marcus Schäfer <ms@suse.de>
  - Followup fix for disk detection from root device
    No matter if one ore more devices are used in a multipath map,
    if the root device is managed by multipath kiwi has to use the
    mapped device for all operations, otherwise we run into busy
    or blocked state inside of the initrd operations. This is
    related to Issue #954 and bsc#1126283 and bsc#1126318
* Sat Feb 23 2019 Marcus Schäfer <ms@suse.de>
  - Fixed relocation of GPT
    Simplify the relocation of the GPT to the end of the current
    disk by using sgdisk -e instead of gdisk. The possitive after
    effect of this is that the broken return value handling of
    gdisk in centos will be fixed and did not harm the kiwi
    deployment anymore. This Fixes #958
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.20 → 9.17.21
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Speedup the make build target
    Activated the pytest xdist feature Dan added for the
    make build target to speedup package creation
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.19 → 9.17.20
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Update vagrant libvirt unit test
    Take extra config from DiskFormatVagrantLibVirt as base for the
    test and don't mock that information as it was done before
    in the base class
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Extend the vagrant base class test
    Take an example for additional vagrant config settings into account
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Refactor unit tests for vagrant classes
    Better use of pytest capabilities, avoid mock rewrite of
    implementation classes
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Fixed DiskFormatVagrantBase docs and behavior
    Update class docs per review by Dan, also raise on use
    of methods without proper provider implementation
* Fri Feb 22 2019 Marcus Schäfer <ms@suse.de>
  - Fixed create_box_img in DiskFormatVagrantLibVirt
    The call to create_box_img did not use the given tmpdir
    parameter but assumes an instance variable to provide this
    information
* Thu Feb 21 2019 Stefan Seyfried <seife+dev@b1-systems.com>
  - fix network failure with "BOOTIF=" parameter
    If a BOOTIF= parameter (pxelinux "IPAPPEND 2" option) is present, dracut
    handles the network already *and* overwrites the 90-net.rules that
    kiwi-*-net-genrules.sh created, thus the interface is not named "lan0"
    and ifup is destined to fail.
    Work around the issue by detecting if the interface is already handled
    by generic dracut code and just skipping the ifup call.
    Fixes / improves issue #942
* Thu Feb 21 2019 Marcus Schäfer <ms@suse.de>
  - Added some style fixes to the vagrant classes
    Adapt doc strings to match style on lists. Change variable
    names not class global to be lowercase. Use 80 chars per
    line. Don't reach code that potentially uses undefined
    variables
* Thu Feb 21 2019 Marcus Schäfer <ms@suse.de>
  - Refactor vagrant storage subformat
    In preparation to support other vagrant providers a base class
    for Vagrant operations has been created. Original Code written
    by DanČermák <dcermak@suse.com>
* Thu Feb 21 2019 Marcus Schäfer <ms@suse.de>
  - Fixed disk detection from root device
    The method lookup_disk_device_from_root assigns the disk device
    matching the root device uuid. However in a multipath environment
    multiple disk devices matches the same root device. The code to
    assign the multipath map in this case was missing in the dracut
    code base. This Fixes #954 and Fixes bsc#1126283 and bsc#1126318
* Wed Feb 20 2019 Marcus Schäfer <ms@suse.de>
  - Fixed losetup call due to move in option names
    util-linux dropped losetup-Add-support-for-setting-logical-blocksize.patch
    because different implementations exists in the new kernel, and it has
    a conflicting implementation in util-linux. This caused a change in the
    option to specify the logical sector size. The option --logical-blocksize
    was replaced by --sector-size. We adapt this now in kiwi too
* Wed Feb 20 2019 Dan Čermák <dcermak@suse.com>
  - Add pytest-xdist to dev-virtualenv to run the unit tests in parallel
    - fix CLI args not being passed to pytest by tox for unit_py3_4 and unit_py3_6
    - enable parallel run on travis
    - document how to run the unit tests in parallel
* Wed Feb 20 2019 Ruediger Oertel <ro@suse.de>
  - s390-test-image: add factory base project (same as on arm)
* Mon Feb 18 2019 Dan Čermák <dcermak@suse.com>
  - Add support to build vagrant boxes with the Virtualbox provider
    This commits adds initial support to build Vagrant boxes with the Virtualbox
    provider.
    - The attribute 'provider' of the option <vagrantconfig> now supports the option
    "virtualbox".
    - A new boolean attribute 'virtualbox_guest_additions_present' was added to
    <vagrantconfig>. When set to true, KIWI will assume that guest additions have
    been installed into the base image and configure the shared folders to use
    vboxfs, otherwise rsync will be used.
    This fixes #532 (https://github.com/SUSE/kiwi/issues/532).
* Thu Feb 14 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.18 → 9.17.19
* Thu Feb 14 2019 Marcus Schäfer <ms@suse.de>
  - Fixed isolinux fallback path
    In case isolinux-config failed or does not exist on the
    distribution a fallback path is called. That code hardlinks
    the files to the isolinux compiled in standard path. However
    due to the move of the grub unicode file for iso images
    the path contains a directory. Directories can't be hardlinked
    thus this patch uses 'cp -l' instead of the 'ln' command to
    create the linked target contents.
* Thu Feb 14 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.17 → 9.17.18
* Wed Feb 13 2019 Marcus Schäfer <ms@suse.de>
  - Fix location of grub unicode font
    This is a follow up patch for #f5bac4495d34. The change of the
    location of the font file was not applied if an iso target, live
    or install image is being built. This patch completes the change
    and Fixes bsc#1124885
* Wed Feb 13 2019 Marcus Schäfer <ms@suse.de>
  - Fix handling of zypper return codes
    The following codes should be handled as errors:
    104 - ZYPPER_EXIT_INF_CAP_NOT_FOUND
    105 - ZYPPER_EXIT_ON_SIGNAL
    106 - ZYPPER_EXIT_INF_REPOS_SKIPPED
* Tue Feb 12 2019 David Cassany <dcassany@suse.de>
  - Refactor OCI images packing
    This commit refactors the OCI images support:
    * added import_container_image and export_container_image methods
    to oci_tools classes. 'umoci' and 'buildah' consume different
    formats thus the inital skopeo call to import a container is tool
    dependent.
    * use oci-archive transport for packing the OCI images, this causes
    docker and oci operations to just diverge on transport type.
    * add_tag method no longer needed in oci_tools/base, skopeo is used
    for that matter.
    * container/docker.py class is no longer needed. The difference
    between docker and OCI images is just on packing format which is just
    a parameter in skopeo. It does not deserve a dedicated class
    * system/root_import/docker.py class no longer needed. The difference
    between OCI and Docker class was just the transport type for the
    skopeo call. It does not deserve a dedicated class
* Mon Feb 11 2019 Marcus Schäfer <ms@suse.de>
  - Sort file and dir entries in iso sortfile
* Sun Feb 10 2019 Bernhard M. Wiedemann <bwiedemann@suse.de>
  - tox: Allow to run a single test
    using
    tox -v -e unit_py2_7 -- -vv ./test/unit/iso_tools_cdrtools_test.py
* Sat Feb 09 2019 Bernhard M. Wiedemann <bwiedemann@suse.de>
  - Sort filesystem listings
    so that kiwi works in a reproducible way
    in spite of indeterministic filesystem readdir order
    and http://bugs.python.org/issue30461
    See https://reproducible-builds.org/ for why this is good.
* Sat Feb 09 2019 Marcus Schäfer <ms@suse.de>
  - Moved azure integration test to Leap15
    Factory doesn't resolve well together with Cloud:Tools.
    I'd like to have stable integration tests and not getting
    screwed with any change on Factory
* Sat Feb 09 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.16 → 9.17.17
* Fri Feb 08 2019 Marcus Schäfer <ms@suse.de>
  - Added new preferences subsection
    In the preferences section the following optional subsection
    can be configured:
    <rpm-locale-filtering>true|false</rpm-locale-filtering>
    If set to true the default locales POSIX, C, and C.UTF-8 are
    applied as rpm install_lang macro. If the locale section is
    configured in addition the list is extended by that information
    too
* Fri Feb 08 2019 Marcus Schäfer <ms@suse.de>
  - Extend the .packages file by the license field
    For rpm based builds the License field from the rpm metadata
    is extracted into the .packages file. For Debian based build
    the license information is in an extra file and not taken
    into account for the moment.
* Fri Feb 08 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.15 → 9.17.16
* Thu Feb 07 2019 Marcus Schäfer <ms@suse.de>
  - Added support for %_install_langs rpm macro
    During the image build the custom rpm macro %_install_langs
    is configured with the <locale> setup from the KIWI XML
    description. This allows to filter language specific packages
    on the rpm level and Fixes #771
* Wed Feb 06 2019 Marcus Schäfer <ms@suse.de>
  - Add API for package manager returncode validation
    Allow to validate the return code from a package manager
    operation. In case of zypper the standard UNIX return
    code validation does not apply. Return codes from zypper
    which are >= 100 are not treated as an error anymore
* Wed Feb 06 2019 Marcus Schäfer <ms@suse.de>
  - Fix Failed to cache rpm database on zypper addrepo
    Occasionally zypper fails when adding the repo with the
    rpm error message 'Failed to cache rpm database'. I was
    not able to find out why this happens and I also could
    not find a way to reproduce it safely. However this
    commit adds a workaround that seems to fix the issue
    when it happens. If the first call of zypper addrepo
    fails kiwi now issues the exact same call again and
    only if that fails too an exception is thrown
    In addition the patch changes the zypper call and avoids
    the option --type. That option is marked legacy and ignored
    by zypper but causes a misleading warning message
* Mon Feb 04 2019 Marcus Schäfer <ms@suse.de>
  - Handle location of the rpm DB on the macro level
    The location of the rpm database is no longer a standard
    path one can trust. Some distributions put it to /var/lib
    others to /usr/lib. This introduces the problem of dealing
    with different locations between the bootstrapping (host rpm)
    phase and the image installation (image rpm) phase.
    This commit implements a solution based on an intermediate
    rpm database configuration. KIWI creates the macros.kiwi file
    inside of the image root which is read by any call of rpm
    in the inner and outer system. During bootstrap phase the
    rpm dbpath from the host system is used and later in the
    install phase the dbpath from the rpm package as it was
    installed by the target image distribution is used. In case
    of a dbpath difference the database is automatically moved
    to the new location by setting the _dbpath_rebuild macro
    to the correct location. At the end the custom KIWI macro
    is deleted.
    As this process allows custom macro defintions during the
    KIWI run it also serves as the base for a solution to
    Issue #771 which will be done in a follow up request to
    this commit.
    Also the workaround for bsc#1112357 which uses a static
    dbpath to store an optionally given signing key will be
    addressed with this commit. The macro setup happens before
    the import_trusted_keys method which makes any specification
    for a strict dbpath obsolete.
    Last the implementation deletes the obsolete
    dump_reload_package_database code. rpm is able to automatically
    do the conversion of different db versions such that the code
    in kiwi is obsolete. In addition that code only worked for
    rather old db versions. The public API has not changed though,
    but the method is marked obsolete and does nothing anymore.
    In addition to the deletion of obsolete code a new API
    method post_process_install_requests_bootstrap has been
    introduced to handle actions required after bootstrap
    and before installing of packages from inside the new image
* Mon Feb 04 2019 David Cassany <dcassany@suse.de>
  - Add custom partitioning docs
    This commit adds two new documentation chapters. One covering
    custom partitioning scheme in KIWI. And another covering setting
    custom volumes in KIWI
* Thu Jan 31 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.14 → 9.17.15
* Thu Jan 31 2019 Marcus Schäfer <ms@suse.de>
  - Fixup code issues reported by new flake8 version
    Travis has updated the flake8 version which caused more
    strict issue reports on the code. This commit fixes the
    new issues reported by flake8
* Thu Jan 31 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.13 → 9.17.14
* Thu Jan 31 2019 Marcus Schäfer <ms@suse.de>
  - Changed default value for bundler compression
    If no compression is configured in the kiwi config file
    the default was set to: False. However this lead to big
    trouble on the obs side for images which has fixed
    storage disk sizes configured, e.g Azure images which
    requests 30G disk size per instance. Thus the default
    for the bundler compression has changed to be: True
* Tue Jan 29 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.12 → 9.17.13
* Tue Jan 29 2019 Marcus Schäfer <ms@suse.de>
  - Fixed grub theme lookup
    If the theme was not found at the expected place an exception
    was thrown. However the alternative lookup code in /boot was
    not reached with that exception. This commit fixes this
* Mon Jan 28 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.11 → 9.17.12
* Mon Jan 28 2019 David Cassany <dcassany@suse.de>
  - Add a runtime check for preferences metadata
    This commit adds a runtime check for preferences metadata. More
    specfic verifies there is a packagemanager defined and an image version
    defined.
    Fixes #925
* Fri Jan 25 2019 Marcus Schäfer <ms@suse.de>
  - Support alternative EFI and grub modules paths
    In SUSE products EFI binaries are historically located in
    /usr/lib*/efi. In a recent move to package grub2 as noarch
    fate#326960, a collision between x86_64 and aarch64 has been
    identified, as both place platform-specific files in the same
    spot. To rectify this, a new location was devised:
    /usr/share/efi/$(uname -m). At the same time /usr/lib/grub2 will
    move to /usr/share/grub2. This Fixes #924
* Fri Jan 25 2019 Marcus Schäfer <ms@suse.de>
  - Fixed Xen guest detection
    We only support Xen setup e.g in the Amazon Cloud for the
    x86_64 architecture. This Fixes bsc#1123186 and bsc#1123185
* Thu Jan 24 2019 Marcus Schäfer <ms@suse.de>
  - Fixed location of grub unicode font file
    grub2 is expecting the unicode font below the fonts
    directory in the /boot/grub*/ depending on how the
    distribution installs grub2. This Fixes bsc#1119416
* Thu Jan 24 2019 Marcus Schäfer <ms@suse.de>
  - Fix documentation howto delete a package
    The documentation described an invalid XML grammar
* Thu Jan 24 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.10 → 9.17.11
* Thu Jan 24 2019 Marcus Schäfer <ms@suse.de>
  - Fix package conflict for completion file
    The completion can only be provided by one package if not
    python version specific completion files are provided. Due
    to the fix in #920 the completion file must be provided by
    another sub-package. This commit moves it to the
    kiwi-man-pages package. Actually kiwi man pages provides
    more than just the man pages, but also the PDF documentation
    and I think the completion information serves the purpose of
    documentation to some degree too.
* Thu Jan 24 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.9 → 9.17.10
* Thu Jan 24 2019 Marcus Schäfer <ms@suse.de>
  - Fixed file name of completion file
    The bash completion file must match one of the alternatives links.
    Otherwise the bash completion mechanism will not match. kiwi-ng is
    the unique alternative link name compared to the still present
    legacy kiwi version and should be used preferably
* Wed Jan 23 2019 David Cassany <dcassany@suse.de>
  - Add container history metadata on umoci repack call
    This commit makes sure that `umoci repack` call includes history
    metadata and skips that in `umoci config` call.
    Fixes #918
* Thu Jan 17 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.8 → 9.17.9
* Thu Jan 17 2019 Marcus Schäfer <ms@suse.de>
  - Update schematron rule
    install_continue_on_timeout is only for oem types
* Thu Jan 17 2019 David Cassany <dcassany@suse.de>
  - Do not assume package manager is always there
    This commit modifies the dump_reload_package_database method
    for zypper to not assume rpm binary is always part of the image.
    An image could be bootstrapped only without zypper or rpm, in that
    case it does not make sense and it is not possible to dump and reload
    rpmdb.
    Fixes #915 and related to #550
* Thu Jan 17 2019 Marcus Schäfer <ms@suse.de>
  - Allow to switch off install image boot timeout
    This commit adds a new attribute called:
    <type ... install_continue_on_timeout="true|false"/>
    It allows to setup the boot timeout for install images
    build with KIWI. If not set or set to 'true' the configured
    boottimeout or its default applies to the install image
    as it was before. If set to 'false' there will be no
    timeout in the install image bootloader setup and the boot
    only continues on manual intervention.
* Fri Jan 11 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.7 → 9.17.8
* Thu Jan 10 2019 Marcus Schäfer <ms@suse.de>
  - Make result compression in the bundler optional
    Calling kiwi result bundle will take the image build results
    and bundle the relevant image files according to their image
    type. Depending on the result configuration this could instruct
    the bundler to compress one or more files from the result.
    By default this compression is switched off in the bundler but
    can be activated to save storage space and speedup download
    of the image with the following runtime configuration:
    bundle:
    - compress: true|false
    If compression is activated the result image has to be
    uncompressed before it can be used. This Fixes #901
* Mon Jan 07 2019 Marcus Schäfer <ms@suse.de>
  - Bump version: 9.17.6 → 9.17.7
* Mon Jan 07 2019 Marcus Schäfer <ms@suse.de>
  - Fix use of SysConfig objects
    objects of that class did not provide a get method but
    overload the bracket [] operator. Using the get() method
    failed. This Fixes #910
* Sat Jan 05 2019 Marcus Schäfer <ms@suse.de>
  - Use chkstat to verify and fix file permissions
    Call chkstat in system mode which reads /etc/sysconfig/security
    to determine the configured security level and applies the
    appropriate permission definitions from the /etc/permissions*
    files. It's possible to provide those files as overlay files
    in the image description to apply a certain permission setup
    when needed. Otherwise the default setup as provided on the
    package level applies. It's required that the image root system
    has chkstat installed. If not present KIWI skips this step
    and continuous with a warning. This Fixes #895

Files

No Filelist in the Package !

Generated by rpm2html 1.8.1

Fabrice Bellet, Wed Aug 3 23:46:51 2022