- Rebuild online schema documentation
- XSL Auto update descriptions due to schema change
- Delete obsolete hybrid attribute from type
Any iso image we create will be a hybrid image. That was
already the default for any install iso image and was a
configuration option for live images. The optional selection
only existed for systems which do not provide tools to
make an iso hybrid. All distributions kiwi supports provides
this capabilities and there is no good reason why a live
or install iso should not be hybrid and bootable as iso
and as disk. Also the boot in disk mode became the preferred
boot method for the majority of our users which requires
to provide a hybrid iso
- Add efiparttable type attribute
This commit allows to choose the partition table type for efi firmwares
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=98
- Bump version: 9.13.7 → 9.13.8
- Fixed base package requires
kpartx is used by kiwi but was not required in spec
- Update gitignore
Do not manage changes in .pytest_cache
- Tell plymouth to quit only if a dialog is called
In case of a dialog kiwi uses the dialog program which conflicts
with the plymouth splash system. Thus we tell plymouth to stop
This patch changes the request to be send to plymouth prior to
a dialog call and not in general
- Bump version: 9.13.6 → 9.13.7
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=97
- Fixed btrfs search path in earlyboot script
If kiwi generates its own efi image for the boot process
it does not setup the btrfs relative path setup in the
earlyboot script embedded into the generated efi image.
This has a bad impact on the file search because the
btrfs setup done in kiwi puts root below the @ volume
which we then need to specify of the relative lookup
is not activated. Fixes bsc#1082155
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=94
- Use LABEL for the swap partition
If multipath and device maps are active the fstab entry should use
the LABEL reference. Systemd calls swapon and it only works properly
with multipath devices when LABEL reference is used or calling directly
on the /dev/dm-* device file.
- Bump version: 9.13.2 → 9.13.3
- The order of the options for mkisofs matters
Setting -eltorito-platform after -b causes mkisofs to fail
- Resize partition table after image resize
The command 'kiwi image resize' allows to resize the size
of a disk image. Depending on the partition table type it
is also required to resize the partition table inside of
the image to let the file size change become effective
This Fixes#534
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=93
- Only delete sub path if not empty
- Fixed package lists for azure and ec2 build tests
- Reference commit for bugzilla
With regards to the changes done in Issue #637 this commit
just creates a reference to a related bug bsc#1082163
- Cleanup config functions shell coding
- Delete obsolete/unused methods
- Add functions.sh to shellcheck
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=91
- Fixup grub2 theme setup
The presence of a background file was mandatory for kiwi to
use the theme. But the background information is optional
- Deleted obsolete boot descriptions
The custom kiwi boot descriptions has been moved into
the kiwi-descriptions github repo and builds the compat
package kiwi-boot-descriptions from there. The build
of the boot image(initrd) is done by dracut and the
dracut module packages provided by kiwi. The classic
custom boot descriptions can still be used as alternative
method if the above package is installed. Related to
Issue #576
- Create compatible boot options
The boot option root=install:CDLABEL= is mandatory for install
images which uses the dracut initrd system. But for the custom
kiwi oemboot descriptions this is causing a problem when detecting
the install device. Thus the above boot option is only applied
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=88
- Update .virtualenv.dev-requirements.txt
sphinx 1.7.0 is not compatible with travis-sphinx
thus we stick with 1.6.7 until travis-sphinx followed
the sphinx changes
- Add restrictions to Path.remove_hierarchy
When an iso file is used as repo, this iso will be loop mounted on
the host and bind mounted into the image root as long as the image
builds. When the mount is released a recursive cleanup of the complete
path happens. This is done by calling Path.remove_hierarchy. However
if a sub path of the mount path contains a system root directory
which is mandatory for the Linux root system it is not allowed
to be deleted even if it is empty at the time of the mount cleanup.
Thus this patch adds a lookup for protected directory names and
only runs the recursive deletion as long as no protected member
is part of the path. This fixes bsc#1080301
- Initial support for building Debian/Ubuntu packages in spec
This adds support for producing the main kiwi package as well as the
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=87
- Exclude install source device from target list
- Fixed kiwi-dump timing issue
The install code needs to wait in the pre-udev phase for
the device containing the installation data to become ready
before proceeding with the actual installation code.
- Fixed dialog size of install confirmation dialog
The size was too small to show device names which causes a
line break to be displayed in the next line
- Cleanup misleading method name
- Fixed coverage report setup
Latest version of the coverage module requires a report setup
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=85
- Update per review by Tom
- Update per review by David
- Update per review by Tom
- Added chapter for live-fat-stick deployment
With the support for the iso-scan feature in KIWI live
ISO image, also the ability to deploy file based on
FAT32 usb sticks via the live-fat-stick tool exists.
This chapter describes how to do it and Fixes#521
- Update pre review by Tom
- Update per review by Tom
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=84
- Make sure there are no busy devices on reboot
If the dracut kiwi-repart module skips the repartition step
because the disk was already repartitioned it leaves devices
in busy state which leads to a rescue shell at the system
mount stage
- uboot-setup-panda.tgz was readded by mistake as boot hooks are no longer needed
- Adding opensuse ports repository
- Adding uboot-setup kiwi hooks
For some reason the uboot-setup-panda.tgz file did not get into
master branch, probably was not properly pushed in the former
include_build_tests_arm branch.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=80
- Don't lookup zImage symlink
Due to the workaround to lookup the gzip compressed variant
of a zImage to find its version, it's required to find the
full name of the zImage in order to rematch the gzip variant.
Looking at the zImage link will make this to fail because
there is no vmlinux link
- Bump version: 9.12.2 → 9.12.3
- Fixed kernel version check for zImage
kernels build as zImage contains the decompressor code
as part of the kernel image and could be therefore
compressed by any possible compression algorithm.
In this case we assume/hope that there is also a
standard gz compressed vmlinux version of the kernel
available and check this one instead of the zImage
variant. Fixes#587
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=79
- Fixed dracut-kiwi-oem-dump requires setup
on rhel/fedora multipath is provided by device-mapper-multipath
- Fix build tests to match new locale setting strategy (#586)
- Added timezone package to build tests
With the latest update on how kiwi handles the locales with
systemd-firstboot, only locales defined in timezone package can be
set, thus Europe/Berlin is not possible if timezone is not installed
- Fixed build tests for azure and ec2
Packages yast2-storage and recode no longer provided
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=78
- Update build test image descriptions
Update to latest schema by auto conversion and delete use
of oemboot kiwi code by switching to dracut
- Fixed reading device node path
lsblk should be called with -p because it's a mistake
to assume any device lives below /dev. There could also
be subtree devices in /dev/mapper or /dev/disk/..
We leave it up to lsblk to provide us the correct
information
- No need to actively stop the dialog service
- Added required packages for dmraid and multipath
- Added handling for dmraid and multipath devices
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=77
- Deleted syslinux from ppc/oemboot/suse-SLES15
syslinux is not provided for ppc. This Fixes bsc#1073310
[boot] fix double quote in grub menu which makes kernel updates for CentOS / RHEL / Fedora break grub.cfg
- Omit kiwi-repart dracut module in oemboot initrd
KIWI's oemboot initrd with initrd_system="dracut" together with
installiso="true" requires to have dracut-kiwi-oem-repart package
installed in the system, thus it ends up also being included in the
recreated dracut initrd after booting the oemboot initrd from the
installation iso. This kiwi-repart module causes a boot failure in that
case since no .profile file is present, moreover, it has no sense to
run it at that stage, since the disk is already reparted by the
oemboot code.
This commit allows installiso="true" and initrd_system="dracut" to
play well together.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=75
- Allow to choose dracut live module
There is the standard dracut dmsquash-live module based on
the device mapper technology and the kiwi-live module based
on the overlayfs technology. The setup of the live iso structure
in kiwi is compatible to both modules. Thus it makes sense
to allow to choose the technology via the flags attribute
<type image="iso" ... flags="overlay|dmsquash"/>
Please note both modules supports a different set of live
features. This Fixes#568
- Bump version: 9.11.27 → 9.11.28
- Fixed ec2 and azure test builds
cryptconfig is no longer provided
- Bump version: 9.11.26 → 9.11.27
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=74
- Fixed URL to semver.org in development guide
- Bump version: 9.11.22 → 9.11.23
- Fixed module setup for dracut-kiwi-lib
lsblk tool used in code but missing in dependencies
- Fixed test-image-azure build test
azurectl does not resolve because of missing AppScheduler
but for the integration test image we also don't need azurectl
Thus it was just deleted from the list
- Fixed test-image-azure build test
pam-modules package doesn't exist anymore
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=71
- Fixed typo in spec file
The use of the suse_version macro from the last change
introduced a syntax error which caused the package build
to fail in obs
- Bump version: 9.11.20 → 9.11.21
- package: Prepare for Tumbleweed moving to suse_version 1550
- Bump version: 9.11.19 → 9.11.20
- Only add package manager on image package requests (#550)
If an image description only contains package requests
from a bootstrap section but no image packages, it's not
required to install a package manager package into the
system
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=70
- Update gfxboot.cfg for iso images
Don't move down one menu entry the first time a F-key is used
This Fixes bsc#1068790
- Adding quotes to ensure '%_dbpath' is treated as string
- Fixed ec2 integration test
requirements for unneeded crash package broken
- Fixed ec2 integration test
nothing provides pam-modules
- Removes the hardcoded path of the rpm database
With this commit the rpmdb path is evaluated from the %_dbpath
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=68
- Delete atftp from SLE15 boot descriptions
atftp will not be part of SLE15 per fate#323633.
This Fixes#543
- Fixed blocksize setup in losetup
The -L option was used to set the blocksize value for losetup
However there is an option name clash between suse util-linux
and upstream which now leads to the problem that option -L
has changed its meaning and actually means --nooverlap which
completely breaks the call in kiwi. This patch changes the
call to use the long form --logical-blocksize.
This Fixes bsc#1066873
- Code cleaning and enhancing variables names
- Use usr/lib/rpm if present instead of var/lib/rpm
With this commit OEM recovery tries to backup usr/lib/rpm if present,
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=66
- Fixed validation of isohybrid warnings
The list of warning messages is evaluated line by line
and those not matching the ignore warnings list are treated
as errors. However if an empty line exists it did not match
the ignore warnings list but is also not an error. This
patch makes sure only non empty warning information has
an effect
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=63
- Cleanup SLE boot image descriptions
Don't use packages which does not exist on SLE, Fixes#523
- Improve coding style to make flake8 happy
This commit includes the exact Exception class that the 'except' statement
catches. According to the new flake8 3.5.0 version it should be explicit
rather than implicit.
- Add OCI reference in skopeo copy call and umoci config call
Skopeo, since v1.24, does no longer assume 'latest' as the default
tag/reference and requires explicit tag or reference in skopeo
call. In KIWI the default was only used to import the base rootfs,
with this commit the imported container is tagged as 'base_layer'.
The current patch works for all skopeo versions.
- Update hooks documentation
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=60
- Cleanup boot descriptions
The still existing kiwi boot descriptions contained wrong
information about no longer existing packages and many
other obsolete information.
- Bump version: 9.11.8 → 9.11.9
- Prefer image packages section for bootincludes
If a package is marked bootinclude prefer <packages type="image">
section in the target XML as primary target and only if no such
section exists put the package in the <packages type="bootstrap">
section
- Keep NVMe drivers in the initrd
Support systems with the root filesystem on a NVMe device
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=59
- Make sure xz options are used with pxe tarball
The tar command used in the pxe builder did not utilize threading
and/or the xz options provided by an optional kiwi config file.
This Fixes#507
- Move depmod into baseUpdateModuleDependencies
Kernel module dependencies should be resolved after kiwi has
called all the stripping functions and not as part of the
baseCreateCommonKernelFile which runs before.
This Fixes#508
- Fixed order of volume mount list
re-order mount_list by mountpoint hierarchy. This is needed
because the handling of the fullsize volume and all other
volumes is outside of the canonical order. If the fullsize
volume forms a nested structure together with another
volume the volume mount list must be re-ordered to avoid
mounting the volumes in the wrong order
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=55
- Rebuild schema documentation
- Show results in a dialog
- Improve display of runMediaCheck results
The splash screen should be switched off in order to let the
user see the mediacheck results as well as a delay timeout
before the boot continues or stops is useful
- Call plymouth default theme setup in build command
Make sure plymouth-set-default-theme is called as part
of the system build command and not only as part of the
system prepare command
- Fixed package requires for dracut-kiwi-live
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=54
- Added disk format="vhdx" support
Support dynamic VHDX (gen2) image format for Hyper-V.
This Fixes#490
- Added additional required attr schematron rule
The new rule allows to check for required attributes for a specific
image type and is used for the filesystem attribute which is required
for the image type oem, vmx and pxe. This Fixes#476
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=52
- Rebuild online schema documentation
- Bump version: 9.11.0 → 9.11.1
- Fixed kernelList function
The kernelList function searches for the installed kernels
and applies the corresponding initrd name. The information the
method provides is used in case of a custom initrd which should
be used instead of the result of dracut. When requesting the use
of the kiwi firsboot initrd also in the system via the
<oem-kiwi-initrd> element, the information from the list is
used to correctly link the kiwi initrd named initrd.vmx to the
expected name of the system as dracut would create it. The
creation of the list was broken which lead to an empty list
and the after effect that the system was not able to reboot.
This Fixes#483
- Update oemboot/rhel-07.0 due to isolinux changes
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=51
- Added boot descriptions for SLE15 on ppc
- Added boot descriptions for SLE15 on s390
- Bump version: 9.10.4 → 9.10.5
- Added handling of formatoptions attribute
Custom disk format options passed in the formatoptions
attribute were not handled. In addition options with a
value passed to qemu were handled in the wrong way.
This commit addresses both problems and Fixes#463
- s/sles/openSUSE/
- copy SLE15 files for Leap 15
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=50
- Fixed resize if all free volume in oemboot/repart
- Fix space calculation for lvm volumes
It is required to take the other configured volumes into
account in order to solve the problem of nested volumes.
The size of e.g the root volume must be reduced by the size
other volumes inside of the root volume needs. This is
especially required if the root volume is not the fullsize
volume
- Fixed setup.py requirements record
PyYAML is required by KIWI
- Add description of Overlay Files to Terminology
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=49
- Export *.verified also for images based on apt-get
This commit includes support in system/setup.py to run a package
verification also for images based in apt-get package-manger
Related to #457
- Include .packages file for apt-get based images
This commit renames export_rpm_packages_list method to
export_packages_list and it includes support for listing
debian packages if apt-get package manager is used.
Fixes#457
- Fix calculation of needed disk space for oem types
The calculation did not include the minimum volume requirements
if a volume setup exists
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=48
- Fixup XSL stylesheet v6.7
Apply templates matching all processing instructions in
order to match <section>text</section>
- Rebuild schema documentation
- Remove xml_state.get_build_type_mediacheck method
The method was not needed since a direct call to
xml_state.build_type.get_mediacheck was already producing an
equivalent output (True, False or None), where 'None' can be
easily treated in the same way as False.
- Add runtimecheck for mediacheck attribute on non x86 hosts
This commit rearranges some method and variable names and includes
a new runtimecheck to ensure the mediacheck attribute is not set
when building non x86 images.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=47
- Add LVM overhead for lvm based images
LVM itself requires metadata stored in the metadata block
kiwi did not take a size value for this data into account
- Use dmsetup to cleanup device maps
Instead of the broken kpartx -d we use dmsetup remove
directly on the maps kiwi has created
- Evaluate file strip before kernel strip
Information from the optional <strip type="delete"> section
was handled as part of the suseStripInitrd method which is
called after suseStripKernel. However if a request to delete
a driver file is part of the above mentioned strip section
the checks for the driver dependency and also for potential
superfluous firmware is not applied. Thus the evaluation of
the <strip type="delete"> section happens earlier in the
suseStripKernel method. Fixes#442
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=46
- Include default container name
This commit includes a default container name for KIWI container
images. This makes possible to create OCI and Docker containers
without forcing the user to include a <contaierconfig> section in
the description file.
- Refactor code which deals with Xen
Provide two methods is_xen_guest and is_xen_server which
are used instead of the former machine domain and firmware
processing. Issue #429
- Apply schema v6.6 stylesheet to XML descriptions
Updates all XML descriptions to latest schema version and
also includes adaptions to the test XML descriptions for
testing the new Xen guest and server setup
- Fixup shell test condition
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=45
- Added s390 tumbleweed boot descriptions
- Exclude kiwi files from images
This commit from one hand includes a
get_exclude_list_for_root_data_sync method in Defaults which returns
a list of the files used by KIWI that should not be part of the
resulting image. From the other hand makes use of the exclusion
default list in live, archive and container images, it fixes#423.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=44
- Revert "Include .buildenv file inside the buildroot"
This reverts commit d30bf4a19ff11f7132c9a31528ddfa103e01b299.
This also includes the get_buildservice_env_name method in Defaults
to centralize '.buildenv' occurrences.
- Fixup helper/kiwi-boot-packages
Make sure the code also works in python2
- Search for python interpreter in path
Allow more flexible path spec to find python interpreter
- More comfort in calling with compat arguments
In addition to the 'kiwi --compat -- ...' style we also support calling
the kiwi compat mode as a service via 'kiwi compat ...' The preferred
way of calling kiwi with legacy options is via the new compat service.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=42
- Refactor Uri is_public method
Don't call a nested is_remote from is_public, instead the method
was rewritten to explicitly cover the responsibility to check
under which conditions we treat an uri as publicly available
or not
- Fixed Uri is_remote method
If called inside of the buildservice the obs uri type is not
a remote uri because the translation ends in a local path
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=41
- Update doc string for Uri::translate method
The method was missing doc info about the check_build_environment
parameter and the return type of the method
- Delete obsolete --obs-repo-internal switch
- Create obs project download link like obs does it
In reference to _download_repository_link.html.erb from
https://github.com/openSUSE/open-build-service, we use the
same mechanism to create the download link from an obs://
project definition
- Fixup unit test for help command
- Follow up fix for man page move
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=39
- Add unit tests for compat mode
- Do not translate obs scheme to suse scheme for imageonly repos
Fixes#404
- Fixed compat setup for upgrade command
Value for --root option was added after other options
- Translate obs to suse derived from image uris
This commit performs a translation from obs scheme to suse
scheme for derived from image uris when kiwi is running in a
buildservice worker.
Fixes#399
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=38
- Fix content layout of zypper credentials file
Missing line break for entries in zypper credentials file
- Allow imageinclude repositories inside the build service
Fixes#397
- Fixed doc_travis tox target
using shell syntax requires calling a shell process
- Allow imageinclude in add|set-repo commandline
The --set-repo and --add-repo commandline options now allows
additionally to specify a true|false value to indicate if the
repository should be part of the system image repository
setup or not. This Fixes#398
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=37
- Fixed setup_plymouth_splash
The schema generated get_bootsplash_theme() method returns a list
because it's section content. The return value of the method was
used as a string which caused a runtime error
- Add package manager in image info task solving process
This commit includes the package manager package in the packages
list to be solved in image info task.
- Include patternType information to resolv packages in image info task
This commit includes ingore_recommended flag in the Sat.solve method.
This way if the description file states to include only required
packages (without recommendations) it is respected and taken into
account to resolv the packages list.
Fixes#381
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=35