- 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
- Fixed build_in_buildservice stale references
Fixed style issues reported on sphinx build. Also deleted
pointers to non existing references
- 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
- Update doc/source/building/build_in_buildservice.rst
Co-Authored-By: dcermak <45594031+dcermak@users.noreply.github.com>
- Rework documentation about building on OBS
- Added integration test guest image for OpenStack
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=140
- 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.
- Bump version: 9.17.35 → 9.17.36
- Fix xml syntax on documentation example
- Add custom curl options docs
- 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
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=139
- 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.
- Update travis doc building target
Disable doc test on travis, we have this in the gitlab-ci
pipeline.
- Move sphinx config to python3
Disable modules that have not been ported to sphinx 2.0 API
- 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.
- Bump version: 9.17.32 → 9.17.33
- Added integration test for bootstrap only builds
- Fixed bootstrap only building
Image descriptions that define packages in the bootstrap section
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=137
- 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>
- 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.
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=136
- 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.
- 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.
- 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
- Fixed import of signing keys
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=135
- 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
- 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
- Bump version: 9.17.20 → 9.17.21
- Speedup the make build target
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=134
- 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
- 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.
- Added support for %_install_langs rpm macro
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=133
- 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
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=132
- 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
- Bump version: 9.17.13 → 9.17.14
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=131
- 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
- Bump version: 9.17.11 → 9.17.12
- 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
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=130
- 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
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=129
- 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
- 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
- Allow setting the protocol for exposed ports
With this commit it is possible to set tcp or upd (e.g. "80/tcp") for
exposed container ports. If no protocol is provided OCI defaults are
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=128
- Allow setctsid to be part of custom boot images
- Fix disk size calculation for VMX
Disk size calculation must take into account the empty volumes that
are to be mounted in a directory that does not exist in the root tree
otherwise there is KeyError. The result of
storate/setup._calculate_volume_mbytes must be a dict including all
defined volumes.
Fixes#904
- Bump version: 9.17.4 → 9.17.5
- Make sure manual pages are part of pypi archive
As consequence of the change in the travis setup to make
use of the native 'pages' and 'pypi' providers from travis the
environment for the sdist target has changed. Within the
doc_travis tox env no manual pages was build. In combination
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=127
- Little code styling fix
- Fixed oem installer
In the implementation of the ramdisk installer from
SUSE/ramdisk_deployment(4fdeee3faa3) an error for the
standard case was introduced such that the lsblk call
was invalid. This lead to no devices being present
for the installation. This patch Fixes#877
- Fix rsync call for filesystem images
For filesystem images the rsync call was missing a finale slash for
the source path causing the sync also the containing directory. With
this change the filesystem image does not include the rootfs in any
subdirectory.
Fixes#875
- Add history metadata for container builds
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=126
- Change bundling of image formats
By default none of the image formats were stored as compressed
file. The reason behind this was the assumption that some
formats automatically makes use of compression, which is true
but only in their processing and not in their data blocks at
creation time. Storage and handling of the image file itself
becomes cumbersome and therefore we change the default bundle
setup for image formats to be compressed. This means the image
as it gets packed by KIWI needs to be uncompressed before use.
The following image formats are affected by the change in a
call of the result bundler:
kiwi result bundle ...
* qcow2 (.qcow2.xz)
* vdi (.vdi.xz)
* vhd (.vhd.xz)
* vhdx (.vhdx.xz)
* vmdk (.vmdk.xz)
All other image formats already defined a custom bundling
setup including compression and are not affected by this change.
This Fixes#650
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=125
- Bypass Jekyll processing for github pages
sphinx uses directories that start with underscores which
Jekyll considers these to be special resources and does not copy
them to the final site.
- Bump version: 9.16.34 → 9.16.35
- Revert last travis.yml change
This reverts commit 7fb7e8c39fa861b6226d54e04483be8e96a5f8be.
- Bump version: 9.16.33 → 9.16.34
- Next try to fixup pypi deployment
Reset to encrypted password hash which worked before
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=124
- Use %{ix86} rather than %ix86 in spec template
Clear macro annotation prevents clarity issues
- Fixed spec file for gfxboot requires
Require gfxboot but only for the x86 architecture
- Bump version: 9.16.25 → 9.16.26
- Move the default rpm database path into Defaults class
- Handle default uri mime type in Defaults class
- Add a hardcoded rpm database path to import trusted keys
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=123
- rebuild auto generated code with stable generateDS
For some reason the xml_parse code generated by generateDS v2.29.24
caused warnings on simple type XSD patterns. Therefore I rebuild
the code with the stable build version v2.29.14 which fixed that
issue
- Fixup README travis and codacy status badges
- Adding bugfix trace for bsc#1110869
bsc#1108508 ticket was fixed with request #831
from SUSE/fix_uri_handler
- Include livenet module with dmsquash-live support
The upstream dracut dmsquash-live module supports network
mode with the livenet module. But that module must be
explicitly included and is not fetched automatically.
This Fixes#827
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=122
- Rename private method to be more expressive
- Fixed URI handling with token query option
So far only the query format ?credentials=... was supported.
In case of ?random_token_data the returned uri was truncated
and also the format check on the query caused a python trace.
This Fixes#830 and Fixes#828
- Eliminate redundant code
Create a helper method, _create_volume_no_zero, which calls the
lvreate command with appropriate options and calls the vgscan
command immeditately afterwards to create any missing /dev nodes.
- Fixed broken link to ec2uploadimg tool
- Update contact information
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=121
- Create parent qgroup when snapper is present
This commit creates a new parent quota group (1/0) of level 1 when
btrfs_quota_groups is enabled and snapper present into the image
root tree.
Related to bsc#1093518 and #812
- Bump version: 9.16.16 → 9.16.17
- Fixup make build target
Don't include auto generated schema docs into the source
tarball. Also cleanup MANIFEST.in from files no longer
present in the repository
- Bump version: 9.16.15 → 9.16.16
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=120
- Follow up fix for skip_cleanup use
make sure doc_travis tox target has created the manual
pages such that the environment contains this data
- Bump version: 9.16.10 → 9.16.11
- Use skip_cleanup for deploy stage in travis
We need the tox build environment to run the deployment
- Bump version: 9.16.9 → 9.16.10
- Follow up fix for deploy target
Integration of man pages must be done as part of the sdist
setup because the travis pypi deployment only uses the
sdist target to bundle the sources
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=119
- Update pxe server setup documentation
Delete the suggested modifications to /etc/sysconfig/atftpd
and trust the defaults provided by the package
- Added support for system wide config file
If there is no user specific config file we are also
looking for a system wide /etc/kiwi.yml file
- use more meaningful variable names
- Fix baseStripUnusedLibs config method
This commit arguments handling of the baseStripUnusedLibs
that was not prepared to handle quoted variable containing a list.
Fixes#798
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=117
- update vagrant doc chapter per review by Tom
- Added vagrant setup chapter in the docs
Document steps to create a vagrant box for the libvirt
provider. Also provide information on provider support
This Fixes#792
- Use xattr 0.9.3
Latest xattr is broken on pip
- Fixed make obs_test_status
The helper script .obs_test_status looks up the build
results from the integration tests. With the introduction
of multibuild integration tests the script has to apply
some modifications to get the correct results
This is related to Issue #791
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=116
- Simplify configfile loading
prefix and root variables are correctly set, thus calling
the "normal" command has the same effect than the explicit
call for "configfile"
- Prevent building custom efi image
If the distribution provides a prebuilt efi image kiwi
should use it instead of building its own image.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=113
- Avoid module loading in grub config template
This patch is two fold. First part replaces the import of
dedicated video modules in the grub image by the all_video
module. Second part avoids runtime module insertion which
requires access to the boot filesystem which is not
guaranteed on sophisticated rootfs structures like btrfs
plus readonly snapshots and what not. Thus we make sure
all boot code is embedded into the grub image(s) and no
extra loading of modules at runtime will be needed.
This Fixes bsc#1096937
- Fix for bsc#1094788
This is just an empty commit to include the bugfix reference in
the repository history.
The bugfix for bsc#1094788 was actually commited in:
commit 835cebfe5c488515dfbcdf33dab6262613ca5508
Author: Marcus Schäfer <ms@suse.de>
Date: Tue May 29 16:42:55 2018 +0200
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=112
- Move fedora integration test build to fc28 distro
- Bump version: 9.15.3 → 9.15.4
- Fixup move_to_root method
move_to_root is called to check each element of a given list
and changes any path specification to a valid path if the given
root path would be it's root(/). This tranformation implied the
creation of paths containing double slashes like //foo which
was considered harmless. However it has turned out that the dnf
package manager makes a difference here which requires to fix
the resulting paths. This Fixes#761
- Adding license tag under description tag in schema
This license tag does not effect the resulting image in any way. The tag
is just included to state the license of the kiwi image sources in case
they are distributed.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=111
- Fix setup of LOADER_TYPE in sysconfig/bootloader
LOADER_TYPE value for the grub2 bootloader depends on
the use of EFI. This Fixes bsc#1094883
- Added documentation for config-cdroot archive
- Added support for config-cdroot archive
The image description now allows an optional file named:
config-cdroot.tar[.compression_postfix]. The file gets
unpacked as user data for live and install ISO images.
This allows users to add e.g license files or reference
documentation to the ISO image. This Fixes#737
- Verify file does not exist before creating symlink
- Add service dependencies in generators
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=110
- Fix zypper add lock operations
This commit fixes the arguments passed to zypper in add lock
operations.
- Add correct GPL-3.0-or-later license
Add the correct license reference in the spec License field
Fixes#732
- Make container compression a configuration option
Change the ContainerBuilder class to evaluate on the
configuration options to decide if the container archive
should be compressed or not. By default the archive will
be compressed, thus there is no change to the former behavior
but can be setup in ~/.config/kiwi/config.yml as follows:
container:
- compress: none|xz
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=108
- Add a chapter for uninstall package requests in docs (#726)
Add a chapter for uninstall package requests in docs
- Update arm integration test
Existing panda build was outdated and non functional.
Move the test to a more popular target and write the
image description to use technology matching the
suse arm development effort. Target is now Rpi(64bit)
- Use latest version of sphinx
Formerly sphinx==1.6.7 was used because travis-sphinx failed
with latest sphinx. Now travis-sphinx fails with 1.6.7 and
I hope using latest sphinx will fix that
- Bump version: 9.14.7 → 9.15.0
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=106
- Fixed check for volume group in use
The former implementation evaluates the output of the vgs
command and set the volume group as in use if one of the
listed volume groups on the host contains the group name
set by the image description. This would also match if the
group name set in the image description is e.g 'System' and
the a volume group on the host with name 'SystemVG' exists.
However a conflict only exists on exact match of the name.
The proposed fix is to use the --select feature from vgs
and let it show information on exact match of the vg_name
field. The code in kiwi then just evaluates if the selection
by vgs has a value or not. This Fixes#721
- Fix setup of kiwi_lvm profile variable
kiwi_lvm was always set to true if a volume management system
is in use. However it should only be set to true if the
selected volume management system is lvm. The same applies
to the kiwi_lvmgroup variable which also only makes sense
if the lvm volume management system is used.
This Fixes bsc#1090427
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=104
- Extend test-image-azure integration test
Use xfs as filesystem and set a tag to also test image tags
- Use /dev/zero to really write a zero byte
The cleanup of the 512 byte block for the vhdfixed tag
was based on reading from /dev/null which does effectively
nothing. As the block should be filled with zero bytes
this patch changes the source from /dev/null to /dev/zero
This was found by tests to reproduce the issue reported
in bsc#1090953 but is not causing it
- Add test for the utils class StringToSize
This commit adds a couple of unit tests for the StringToSize class.
- Bump version: 9.14.4 → 9.14.5
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=103
- Fix default initrd_system values
This commit fixes the default initrd_system value for some image
types. Since this value is included in profile and potentially
taken into account for some of the config script functions, it is
important to have consistent values even when the image type
has no initrd choice or it doesn't have initrd at all.
Related to #689
- Check partition table after cow part creation
Proceed with the persistent write partition setup only
if the cow partition could have been created successfully
- Fixed detection of disk node in live iso images
If the live iso is booted as disk the initrd code needs to
find the correct disk node pointing to the iso image. This
was formerly done by checking if the populated disk devices
contains an iso header with an application id. The information
was obtained using the isoinfo tool. isoinfo is a tool
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=101
- Fixed truncation of image when writing vhd tag
When writing the vhd tag into a vhdfixed formatted image
the image was opened with the wrong open bits 'wb' and
thus was truncated at the 64k offset. This patch fixes
the open bits to allow in-place tag writing. This
Fixes bsc#1077096
- fix vmx fileName parameter, bsc#1084157
- Update schema version in free schema doc generator
- Update schema version in headline of doc chapter
- Bump version: 9.13.9 → 9.14.0
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=100
- 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
- Fixed gce disk format
The order of the files in the tarball is important. The first
entry must be the manifest.json followed by disk.raw
- Make sure CliTask instance reads the config file
Any instance of a CliTask has to read the runtime config file
if present
- Add generic access for attributes
The layout of the yaml runtime config is based on an element
topic containing a list of attributes. For now only the xz
topic with its options attribute is in use but for the future
more elements might be supported which can use the same access
method
- Setup plymouth splash in the image prepare process
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=34
- Update rpm-check-signatures documentation
- Fix default location repository config file for apt
This commit fixes the apt config file management for default
locations. The template subsitution always needs to be executed
providing all the substitution parameters, as it does not make any
kind of default assumption when parameters are missing.
Fixes#370
- Revert "Refactor detection code for grub directory name"
The former detection of the grub directory name in boot was
correct whereas the new code introduced a problem.
This reverts commit b3e4b871d52da2b5ab579d592ccc7ae39de75339.
This Fixes#371
- Include repository_gpgcheck and package_gpgcheck documentation
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=32
- Refactor detection code for grub directory name
The method get_grub_boot_directory_name was based on checking
for the name of the grub2 install tool, but this is not always
reliable because the name of the grub2 install tool has no
direct connection to the grub2 path. The method changes in a
way that it checks for the presence of the grub2 installation
directory which is /usr/lib/grub or /usr/lib/grub2. Depending
on the result the location in boot is /boot/grub or /boot/grub2
which seems to be a more reliable check
- Fixup detection of grub directory name
In order to put grub data to boot/grub2 or boot/grub a check for
the grub2-tool vs. grub-tool name is performed. This requires
access to the image root directory on a file basis which is not always
applicable. When setting up the grub bootloader for e.g EFI boot on
an iso image the rootfs can't be directly accessed because the iso
image contains the rootfs in a compressed format. This commit
refactors the check to be generic for all image types
- Fixup EFI setup for iso images
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=31
- Make sure all required yum repo options are set
enabled and gpgcheck parameters has to be set for any
configured yum repository
- Fixup repository setup for yum
Yum cannot handle spaces between the key and the value.
This patch provides a method to tell ConfigParser to use
no spaces for the '=' delimiter and thus Fixes#357
- Reactivate warnings report in pytest
- Fixup kernel name lookup
If multiple abi compatible kernel module packages are installed
the kernel version of the boot kernel could be different from
the kernel module versions. In order to find the boot kernel
all kernel versions found must be checked. Fixes#355
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=29
- Use 'yum-deprecated' if it exists when using Yum
On Fedora and Mageia systems, the Yum package manager binary is named
'yum-deprecated', and 'yum' redirects to DNF. This is a problem for
being able to build images of Linux systems that use Yum as its package
manager, like RHEL/CentOS 7.
So, in order to ensure we use the right package manager, we check for
the 'yum-deprecated' binary and use it if it exists.
- Restructure low level topic (iso_to_usb)
The low level topic references information from the base
topic. In this case the name of the previously built image.
I think we should provide information on each low level
topic which references information from a base topic.
- Handle rpm-check-signatures flag for each package manager
This commit adds support for the rpm-check-signatures flag, which
sets the package manager to verify or not each package signature.
By default KIWI assumes no gpg checks are done.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=27
- Update build docker images documentation
This commit includes steps to install umoci and skopeo, descriptions
for the configurable metadata in KIWI and some simple style fixes.
- Fixed tox.ini doc target
location of schema docs has changed, and we better disable
the spell check as long as not all unknown technical terms
are added to the wordlist.txt
- Use correct service name variable
- Refactor documentation layout and structure
The current design of the documentation does not allow for
continous improvement and development. It's missing a basic
structure and concept for documenting step-by-step workflows
and generic explanations.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=26
- Additional container commandline options
Added --set-container-derived-from and --set-container-tag
commandline options which allows to overwrite the data set
in the XML configuration
- Implement obsrepositories source on derived_from
The following reference to a derived container:
obsrepositories:/container#latest
Will be translated into the following buildservice
local path:
/usr/src/packages/SOURCES/containers/_obsrepositories/container#latest
- Implement obs source on derived_from
The following reference to a derived container:
obs:/project/repo/container#tag
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=24
- Include '--delete' in OCI images DataSync
This commit includes #310 patch for OCI images.
It also corrects the end of line format for kiwi/container/docker.py
and test/unit/container_image_docker_test.py, so flake tests are all
green.
- Include --delete flag in DataSync for docker images
This commit includes the --delete flag in order to synchronize the
docker images. This is relevant for derived images where the new
layer might not only add files, but also remove something from the
base image.
Fixes#309
- Define correct default locations for sources-dir and preferences-dir
In order to ensure that the defined repositories in the KIWI configuration
are set to the correct places for installing into the image, the
sources-dir and preferences-dir need to be redefined to point to the
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=23
- Add warning logs for unkown base image URIs
- Update spec template for SLE13->SLE15
- Rename SLE13 to SLE15
- Follow up fix for grub2 setup in live builder
The live iso builder still used a fixed boot/grub2 path
but due to the refactoring this path is now distro dependant
and should be obtained dynamically
- Cleanup use of bootloader path in boot code
Instead of repeating the bootloader path only specify it
once per setup path
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=21
- Update development and contribution chapter
Fix some minor inconsistencies due to latest code changes
with regards to py2 and py3 compatibility and also change
the style of the chapter to be more straight forward for
people who would like to contribute from scratch
- Keep imported image in OCI format instead of docker
Kiwi always uses OCI format for container manipulations, so it is
easier to assume the image kept between prepare and create step
is also in OCI format, this way less format convertions are needed.
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=20
- Avoid GRUB_DISTRIBUTOR setup in etc/default/grub
The GRUB_DISTRIBUTOR information can't be provided in a generic
way for all distributions. The information should be either placed
by a package post script (as done by most of the distributions)
or by a custom kiwi config.sh or images.sh script. Fixes#286
Fixes (bsc#1032119)
- Fixup bootloader menu title setup
If the menu title is setup via the displayname attribute in
the XML configuration, kiwi should not change this text by
a prefix or any other style adaptions. Fixes#287
Fixes (bsc#1032118)
- Fixup copy of array in boot code
The filtered nic interface names are stored in an array
and copied back into the original array. The copy of the
array was semantically wrong
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=18
- Fixup theme setup in boot
Make sure grub theme data is populated in the boot directory.
Checking only for the presence of the theme directory is not
enough. If the theme directory in boot does not contain the
requested theme it must be provided including a warning if
the theme data could not be found in the system
- Do not change the API in an incompatible way
- Use request_package_exclusion method in prepare
- Refactor method name of package manager interface
The request_package_lock was renamed into request_package_exclusion
because that is the goal, to actually exclude(skip) a package. From
an implementation point of view this is done to set a lock in the
zypper case. However other package managers might do it differently.
The interface should stay consistent with regards to the user goal
and not with the package manager specific implementation. This
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=17
- Delete no longer needed btrfs bootpath setup
The adaption of the bootpath in the grub.cfg file with regards
to the btrfs toplevel volume named '@' was the wrong solution.
The fixes in the btrfs filesystem setup and the config files
etc/default/grub and sysconfig/bootloader caused the grub
toolchain to work properly. This Fixes (bsc#1030038)
- Convert user input to absolute paths
This commit converts the paths provided by the user with the
command line to absolute paths. The effected arguments are:
* --root
* --target-dir
* --bundle-dir
This supersedes and fixes#271
- Support editbootconfig also for the iso type
This Fixes#274
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=16
- Fixed checksum file creation
If the checksum should be created from a compressed file
it is expected that the checksum of the uncompressed file
is added to the checksum file. This is because in a pxe
deployment the uncompressed version of the file is put
on disk and compared with the reference information in
the checksum file
- Refactor ip link detection
There is no reliable way to check if a link is unplugged, thus
the code has changed into the following workflow
1. use interfaces which returns success on ip link set up
2. wait for the UP state on all of these interfaces and return
if one of them enters the UP state
3. call a fixed wait state to allow to kernel network drivers
to settle
4. run through all remaining interfaces, discover the link
state and call a DHCP discovery
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=15
- Fixup pxe builder
filesystem image rootfs was not in toplevel
- Bump version: 9.4.0 → 9.4.1
- Fixup pxe builder
Generate a tarball containing all relevant pxe boot result
files instead of a bunch of extra files. This also turns
the pxe builder to be compatible again with the legacy
kiwi pxe bundler
- Don't create shasum over an md5 file
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=13
- Allow https location as repository source
- Refactor RootImport to keep images with a default name
RootImport has been refactored so the image is kept with a known
name that can be obtained with the Defaults class.
- Added SLE13 distribution matcher
- Update distribution matcher in spec file
- Refactor ContainerBuilder
Use Checksum instance to run a checksum match
Check for existence of base image at earliest opportunity
when constructing a ContainerBuilder
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=12
- Deleted openSUSE 13.2 boot descriptions
- Refactor Uri constructor
Make repo_type an optional parameter, which is only
required if the specified uri leaves a type choice
- Fixup PyPI entry registry
The wrong project url was referenced
- Bump version: 9.3.1 → 9.3.2
- Fixed MANIFEST.in
kiwi.solver code was not included into source archive
OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=1