|
|
|
|
Changelog for kiwi-man-pages-9.23.28-lp155.3.7.x86_64.rpm :
* Mon May 03 2021 Marcus Schäfer - Bump version: 9.23.27 → 9.23.28 * Fri Apr 30 2021 David Cassany - 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 - 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 - 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 - 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 - 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 - 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 - 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 - Bump version: 9.23.26 → 9.23.27 * Mon Apr 19 2021 Marcus Schäfer - 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 - 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 - Added shadow package to pxe integration test Tools like usermod were moved from coreutils to shadow * Sun Apr 18 2021 Marcus Schäfer - Added shadow package to integration test Tools like usermod were moved from coreutils to shadow * Fri Apr 16 2021 David Cassany - 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 - 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 - 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 - Bump version: 9.23.25 → 9.23.26 * Thu Apr 15 2021 Marcus Schäfer - Fixed platform setup for vagrant unit tests * Thu Apr 15 2021 Marcus Schäfer - 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 - Bump version: 9.23.24 → 9.23.25 * Wed Apr 14 2021 Marcus Schäfer - 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 - 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 * Mon Apr 12 2021 Marcus Schäfer - 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 - Bump version: 9.23.23 → 9.23.24 * Fri Apr 09 2021 Marcus Schäfer - Decommission obsolete code reaching EOL Use the AATTdecommissioned decorator to raise for API methods that a over the obsoletion period * Fri Apr 09 2021 Marcus Schäfer - 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 - 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 - Bump version: 9.23.22 → 9.23.23 * Wed Mar 31 2021 Marcus Schäfer - 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 - Update documentation Add information about new volume filesystem_check attribute * Tue Mar 30 2021 Marcus Schäfer - Allow to enable volumes for filesystem check The new attribute 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 - Bump version: 9.23.21 → 9.23.22 * Mon Mar 22 2021 Marcus Schäfer - 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 - Bump version: 9.23.20 → 9.23.21 * Fri Mar 19 2021 Marcus Schäfer - 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 - Add Strong Typing to builder APIs * Tue Mar 16 2021 KeithMnemonic - 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 - 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 - 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 - Update unit- integration tests to schema v74 * Mon Mar 15 2021 Marcus Schäfer - 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 - 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 - Public API Strong Typing for kiwi package_manager * Thu Mar 11 2021 David Cassany - 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 - 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 - 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 - 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 - Bump version: 9.23.19 → 9.23.20 * Sat Mar 06 2021 Marcus Schäfer - 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 - Add Rawhide and Tumbleweed tests for secure boot on aarch64 * Fri Mar 05 2021 Marcus Schäfer - 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 - 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 - Bump version: 9.23.18 → 9.23.19 * Mon Mar 01 2021 Marcus Schäfer - 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 - Fail non-XML descriptions if anymarkup not available (#1742) Co-authored-by: Fergal Mc Carthy * Mon Mar 01 2021 Marcus Schäfer - Bump version: 9.23.17 → 9.23.18 * Mon Mar 01 2021 Marcus Schäfer - 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 - 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 - 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 - Bump version: 9.23.16 → 9.23.17 * Sun Feb 28 2021 Marcus Schäfer - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - Bump version: 9.23.15 → 9.23.16 * Mon Feb 15 2021 David Cassany - 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 - 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 - 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 - Add strong typing for filesystem classes This commit strong typing for FileSystem * classes. Part of #1644 * Mon Feb 15 2021 Marcus Schäfer - Update documentation The runtime config file can also be specified on the commandline * Mon Feb 15 2021 Marcus Schäfer - 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 - 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 - 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 - 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 - Bump version: 9.23.14 → 9.23.15 * Fri Feb 12 2021 Marcus Schäfer - 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 - 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 - 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 - Update build_status helper for box plugin The suse box has been renamed to tumbleweed * Fri Feb 12 2021 Marcus Schäfer - Update documentation Fixed link list to integration tests * Fri Feb 12 2021 Marcus Schäfer - Added rawhide test status to build_status helper * Fri Feb 12 2021 Marcus Schäfer - Added Fedora Rawhide integration tests * Thu Feb 11 2021 Marcus Schäfer - 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 - Fixed test-image-vagrant for Leap Use the correct release package * Thu Feb 11 2021 Marcus Schäfer - Fixed test-image-docker-derived for Leap Use the right derived from location * Thu Feb 11 2021 Marcus Schäfer - Fixed test-image-docker for Leap Nothing provides grub * Thu Feb 11 2021 Marcus Schäfer - 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 - test-image-MicroOS does not build for leap Looks like this concept is not available on Leap * Thu Feb 11 2021 Marcus Schäfer - Added integration tests for Leap * Thu Feb 11 2021 Marcus Schäfer - Update documentation Location for integration tests has changed * Thu Feb 11 2021 Marcus Schäfer - Deleted x86/suse integration tests * Thu Feb 11 2021 Marcus Schäfer - 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 - Deleted s390/suse integration tests * Thu Feb 11 2021 Marcus Schäfer - 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 - Delete ppc/suse from build_status helper * Thu Feb 11 2021 Marcus Schäfer - Deleted ppc/suse integration tests * Thu Feb 11 2021 Marcus Schäfer - 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 - Fixed Debian integration test The test was not using the Staging kiwi to build * Thu Feb 11 2021 Marcus Schäfer - Deleted arm/suse integration tests * Thu Feb 11 2021 Marcus Schäfer - 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 - Update tuples to enforce type hints * Thu Feb 11 2021 Marcus Schäfer - 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 - 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 - Moved ARM fedora integration test to latest stable * Thu Feb 11 2021 Marcus Schäfer - 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 - 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 - 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 - Bump version: 9.23.13 → 9.23.14 * Wed Feb 10 2021 David Cassany - 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 - Clean some copy and paste leftover from doc strings * Tue Feb 09 2021 Marcus Schäfer - 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 - Added dolly support Allow dolly as alternative download protocol * Tue Feb 09 2021 Marcus Schäfer - Bump version: 9.23.12 → 9.23.13 * Sun Feb 07 2021 Marcus Schäfer - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - Bump version: 9.23.11 → 9.23.12 * Mon Feb 01 2021 Marcus Schäfer - 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 - 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 - Bump version: 9.23.10 → 9.23.11 * Fri Jan 29 2021 Marcus Schäfer - 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 - Bump version: 9.23.9 → 9.23.10 * Thu Jan 28 2021 Marcus Schäfer - 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 - Added leap box to be shown by build_status helper * Wed Jan 27 2021 Marcus Schäfer - 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 - Bump version: 9.23.8 → 9.23.9 * Wed Jan 27 2021 David Cassany - 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 - 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 - Include installmedia documentation * Tue Jan 26 2021 Marcus Schäfer - Bump version: 9.23.7 → 9.23.8 * Mon Jan 25 2021 Marcus Schäfer - 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 - 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 - 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 - Add the installinitrd element This commit adds the `` 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 - 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 - Bump version: 9.23.6 → 9.23.7 * Wed Jan 20 2021 Marcus Schäfer - 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 - 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 - 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 - 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 - 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 - 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 - Bump version: 9.23.5 → 9.23.6 * Tue Jan 19 2021 Marcus Schäfer - 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 - 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 - 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 - 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 - Fixed missing systemdisk provides kiwi-systemdeps-filesystems did not provide kiwi-filesystem:ext2 * Fri Jan 15 2021 Marcus Schäfer - Bump version: 9.23.4 → 9.23.5 * Wed Jan 13 2021 Jesus Bermudez Velazquez - 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 - Update contributing link in README * Mon Jan 11 2021 Marcus Schäfer - Bump version: 9.23.3 → 9.23.4 * Sun Dec 27 2020 Josua Mayer - 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 - 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 - Bump version: 9.23.2 → 9.23.3 * Mon Dec 21 2020 David Cassany - 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 - Bump version: 9.23.1 → 9.23.2 * Fri Dec 18 2020 Marcus Schäfer - 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 - 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 - Don\'t install obsolete requires packages The derived docker build test installs obsolete kiwi requires * Thu Dec 17 2020 Marcus Schäfer - Bump version: 9.23.0 → 9.23.1 * Thu Dec 17 2020 Marcus Schäfer - Update spec file Complete and cleanup spec for drop in replacement of new systemdeps sub-packages * Thu Dec 17 2020 Marcus Schäfer - Bump version: 9.22.4 → 9.23.0 * Thu Dec 17 2020 Marcus Schäfer - 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 - Bump version: 9.22.3 → 9.22.4 * Thu Dec 17 2020 David Cassany - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - Bump version: 9.22.2 → 9.22.3 * Tue Dec 15 2020 Marcus Schäfer - 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 - Bump version: 9.22.1 → 9.22.2 * Mon Dec 14 2020 Marcus Schäfer - 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 - Delete travis setup * Mon Dec 14 2020 Marcus Schäfer - 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 - 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 - 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 - Allow to customize swap volume name Added a new element below the 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 - 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 - [doc] Clarify that suse * functions are also for openSUSE * Wed Dec 09 2020 Dan Čermák - 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 - Use DEBUG=0 by default in function Debug This avoids script failures when invoked with `set -u`. * Wed Dec 09 2020 David Cassany - 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 - 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 - 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 - 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 - Fix disk build with * 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 - Bump version: 9.22.0 → 9.22.1 * Tue Dec 08 2020 Marcus Schäfer - 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 - Added SLE15 s390 FBA integration test Build image for FBA disk * Thu Dec 03 2020 Marcus Schäfer - Bump version: 9.21.26 → 9.22.0 * Thu Dec 03 2020 Marcus Schäfer - 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 and not implicitly by the presence of tools * Wed Dec 02 2020 Marcus Schäfer - 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 - Fixed PackageManager decorator in unit test Implement patch decorators for factories consistently * Wed Nov 25 2020 Marcus Schäfer - 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 - 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 - Fixed spec file microdnf requirement SUSE/SLES doesn\'t provide microdnf within the official channels yet * Tue Nov 24 2020 Marcus Schäfer - 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 - 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 - 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 - 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 - Bump version: 9.21.25 → 9.21.26 * Thu Nov 19 2020 Marcus Schäfer - 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 - 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 - Use custom varsdir for dnf builds * Wed Nov 18 2020 Marcus Schäfer - 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 - Fixed dcounter.c flaw report Check buffer boundaries if used in a loop * Wed Nov 18 2020 Marcus Schäfer - Fixed dcounter.c flaw report Variable scope can be reduced and useless value assignment. * Wed Nov 18 2020 Marcus Schäfer - 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 - Move tools README to ReST * Tue Nov 17 2020 Marcus Schäfer - Fixed Incorrect list-item indent * Tue Nov 17 2020 Marcus Schäfer - Fixed Incorrect list-item indent Use two spaces between bullet and content * Tue Nov 17 2020 Marcus Schäfer - Update codacy configuration file Exclude .github helper scripts from the analysis * Tue Nov 17 2020 Marcus Schäfer - Update codacy configuration file Exclude doc sources and helper scripts from the analysis * Mon Nov 16 2020 Neal Gompa - 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 - 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 - 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 - Added microdnf integration test | |