Commit Graph

405 Commits

Author SHA256 Message Date
Dominique Leuenberger
60d7986fe3 Accepting request 1198422 from Virtualization:Appliances:Builder
- Bump version: 10.1.3 → 10.1.4

- Add note about guestOS values for vmware ovftools.

- Add note about guestOS values for vmware platform.

- Fixed resize of dos table type on s390
  On s390, parted is used to detect the partition table type.
  In contrast to blkid the name for DOS tables is reported
  as 'msdos' and not 'dos' which impacts several conditions
  in the kiwi initrd code which checks for 'dos'. This commit
  fixes the get_partition_table_type() method to return a
  consistent table name for DOS tables. This Fixes bsc#1228729

- Revert "remove dependency on /usr/bin/python"
  This reverts commit 15b450188483b567ca10bb459bf50ed90e905bb7.
  The change provided here entirely broke kiwi in OBS. With this
  patch applied every image build in OBS fails with the following
  message: 'line 1: /usr/sbin/kiwi: No such file or directory'

- Bump version: 10.1.2 → 10.1.3

- Fix bundle extension for archive types
  When bundling result files that uses an archive type like
  tbz or docker, kiwi creates them with the extension tar.xz/tar.gz
  The bundler code only uses the extension from the last tuple
  in a "." split which is wrong for "tar." filenames. This commit
  adds an exception to the prefix rule for this output filenames
  and Fixes #2628

OBS-URL: https://build.opensuse.org/request/show/1198422
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=120
2024-09-04 11:22:17 +00:00
27c02486fb - Bump version: 10.1.3 → 10.1.4
- Add note about guestOS values for vmware ovftools.

- Add note about guestOS values for vmware platform.

- Fixed resize of dos table type on s390
  On s390, parted is used to detect the partition table type.
  In contrast to blkid the name for DOS tables is reported
  as 'msdos' and not 'dos' which impacts several conditions
  in the kiwi initrd code which checks for 'dos'. This commit
  fixes the get_partition_table_type() method to return a
  consistent table name for DOS tables. This Fixes bsc#1228729

- Revert "remove dependency on /usr/bin/python"
  This reverts commit 15b450188483b567ca10bb459bf50ed90e905bb7.
  The change provided here entirely broke kiwi in OBS. With this
  patch applied every image build in OBS fails with the following
  message: 'line 1: /usr/sbin/kiwi: No such file or directory'

- Bump version: 10.1.2 → 10.1.3

- Fix bundle extension for archive types
  When bundling result files that uses an archive type like
  tbz or docker, kiwi creates them with the extension tar.xz/tar.gz
  The bundler code only uses the extension from the last tuple
  in a "." split which is wrong for "tar." filenames. This commit
  adds an exception to the prefix rule for this output filenames
  and Fixes #2628

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=261
2024-09-03 07:47:01 +00:00
Dominique Leuenberger
d141c2c4f9 Accepting request 1194146 from Virtualization:Appliances:Builder
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1194146
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=119
2024-08-16 10:22:59 +00:00
9583babeae - Bump version: 10.1.1 → 10.1.2
- Improve error reporting for remote deployment
  Add new method called show_log_and_quit which displays
  the written error log file as a file box to the user

- Update test-image-orthos integration test
  Update the test such that you can also build it locally.
  Change the remote installation target to be a ramdisk
  for easy testing of remote deployments

- Setup default minimum volume size per filesystem
  The former method provided a static value but there are huge
  differences for the minimum size requirement of a filesystem.
  For example extX is fine with 30MB whereas XFS requires 300MB.
  This commit adds a more dynamic default value based on the
  used filesystem.

- Increase default volume size
  So far 30MB was set as default volume size which is by far
  too small for a number of filesystems, e.g btrfs and also XFS.
  This commit increases the default volume size such that all
  modern filesystems builds if the default volume size is used.

- Update test-image-raid
  Apart from testing raid this integration test also tests
  a certain LVM volume setup. The test has been updated
  to use the btrfs filesystem because it has the most strict
  size requirements.

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=260
2024-08-09 08:14:17 +00:00
aaaefae804 - Bump version: 10.1.0 → 10.1.1
- Mandatory package scripts for Debian bootstrap
  Make sure to run some mandatory package pre/post scripts
  such that settings like /etc/passwd, a root user, etc..
  exists. This action can also be done in post_bootstrap.sh
  but I think it's better to do this in the core code

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=259
2024-08-06 10:10:22 +00:00
4b1cd4fd46 - Bump version: 10.0.28 → 10.1.0
- kiwi no longer uses debootstrap
  For building Debian based images we used debootstrap to
  bootstrap an empty root until apt-get could be used to
  complete the job. This has now changed such hat apt-get
  is also used for bootstrapping a new system. The concept
  and also potential alternatives to the way kiwi bootstraps
  Debian based systems can be found here:
  * https://osinside.github.io/kiwi/working_with_images/build_without_debianbootstrap.html
  Due to the drop of debootstrap it might happen that
  package lists of existing image descriptions needs to be
  extended with packages that were formerly pulled in by
  debootstrap but did not get properly pulled in with the
  new apt based bootstrap. As reference please check out the
  integration tests from here:
  * https://github.com/OSInside/kiwi/tree/main/build-tests/x86/ubuntu
  * https://github.com/OSInside/kiwi/tree/main/build-tests/x86/debian
  Thanks

- Bump version: 10.0.27 → 10.0.28

- Update documentation
  kiwi no longer uses debootstrap

- Fix test_process_result_bundle_as_rpm

- Fix Debian/Ubuntu integration tests
  Remove package hacks for debootstrap, explicitly add
  required packages and or configurations.

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=258
2024-08-05 08:01:15 +00:00
Dominique Leuenberger
fffedecc35 Accepting request 1190403 from Virtualization:Appliances:Builder
- Bump version: 10.0.26 → 10.0.27

- Fix dracut-interactive with systemd 256
  With systemd 256, /usr (and thus also /bin/) is read-only in the initrd.
  Move dracut-interactive and its .service into /run instead.

- Bump version: 10.0.25 → 10.0.26

- Revise scripts_testing.rst

- Revise schema_extensions.rst

- Pass kernel cmdline to agama
  In the agama integration test make sure to pass along
  the kernel boot parameters to allow controlling the
  behavior of agama better

- Add <file> directive to incorporate custom files
  Usually custom files are managed by placing them as overlay
  files or archives. However, overlay files must be structured
  inside of a root/ subdirectory and archive files are binary
  data. It is therefore not straight forward to just reference
  one or more files as source files to the image description
  to be placed into the image. This commit adds a new <file>
  element which allows to do this. This Fixes #1953

- kiwi_plugin_architecture.rst

- Revise kiwi_from_python.rst

OBS-URL: https://build.opensuse.org/request/show/1190403
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=118
2024-07-30 09:53:52 +00:00
671208422f - Bump version: 10.0.26 → 10.0.27
- Fix dracut-interactive with systemd 256
  With systemd 256, /usr (and thus also /bin/) is read-only in the initrd.
  Move dracut-interactive and its .service into /run instead.

- Bump version: 10.0.25 → 10.0.26

- Revise scripts_testing.rst

- Revise schema_extensions.rst

- Pass kernel cmdline to agama
  In the agama integration test make sure to pass along
  the kernel boot parameters to allow controlling the
  behavior of agama better

- Add <file> directive to incorporate custom files
  Usually custom files are managed by placing them as overlay
  files or archives. However, overlay files must be structured
  inside of a root/ subdirectory and archive files are binary
  data. It is therefore not straight forward to just reference
  one or more files as source files to the image description
  to be placed into the image. This commit adds a new <file>
  element which allows to do this. This Fixes #1953

- kiwi_plugin_architecture.rst

- Revise kiwi_from_python.rst

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=257
2024-07-30 07:49:17 +00:00
Ana Guerrero
305c666bb5 Accepting request 1188893 from Virtualization:Appliances:Builder
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1188893
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=117
2024-07-22 15:14:15 +00:00
324f3c0550 - Bump version: 10.0.24 → 10.0.25
- Fix mocking of test_process_result_bundle_as_rpm

- Fixed logging behavior of Compress::get_format
  The get_format() method allows to check which compression format
  a given input stream has. This is done by calling the supported
  compression tools in a row and let them check if they can deal
  with the provided data or not. As a result error messages are
  logged for streams that some tool doesn't understand. However,
  those error messages are no errors and only the result of the
  checking. This information in the kiwi log file is confusing
  and several users already complained when they see information
  like:
  EXEC: Failed with stderr: /usr/bin/xz: ...: File format not recognized
  This commit changes how the compression tooling is called in a
  way that no exception is raised (which leads to the above error message)
  but the result returncode is used to decide on the success or
  error of the respective compression tooling.

- Allow to set custom ISO Application ID
  Add new <type ... application_id="..."/> attribute to be set in
  the ISO header main block. The application ID was used as identifier
  in the legacy initrd code from former kiwi versions. Because of
  this there is still the compat layer which sets an App ID as MBR
  identifier string unless the new application_id overwrites it.
  This Fixes #1810

- Bump version: 10.0.23 → 10.0.24

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=256
2024-07-14 09:20:43 +00:00
Ana Guerrero
a7f08d1b1b Accepting request 1185374 from Virtualization:Appliances:Builder
- Bump version: 10.0.22 → 10.0.23

- package: Add fully qualified provides for python3-kiwi in spec
  On SUSE distributions, currently the expectation is that packages
  built against the Python interpreter should have fully qualified
  names in the form of pythonXY-<modulename>. Additionally, all other
  Linux distributions prefer something similar in the form of
  pythonX.Y-<modulename>.
  This ensures we have those names so that distribution dependency
  generation works as expected.

- Add support for arch selector on volumes
  The optional <volume ... arch=""/> attribute allows to create
  the volume only if it matches the specified host architecture.
  Multiple architecture names can be specified as comma separated
  list.

- Add rd.kiwi.oem.force_resize boot option
  Forces the disk resize process on an OEM disk image.
  If set, no sanity check for unpartitioned/free space
  is performed and also an eventually configured
  <oem-resize-once> configuration from the image description
  will not be taken into account. This Fixes bsc#1224389

- Fixed leap integration tests
  For whatever reason procps is not longer pulled in by the
  core dependencies. Thus we have to explicitly request it

- Fix potential race condition in loop detach
  The call to 'losetup -d' is in fact an async operation. Once

OBS-URL: https://build.opensuse.org/request/show/1185374
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=116
2024-07-05 17:45:01 +00:00
6a08a3aac0 - Bump version: 10.0.22 → 10.0.23
- package: Add fully qualified provides for python3-kiwi in spec
  On SUSE distributions, currently the expectation is that packages
  built against the Python interpreter should have fully qualified
  names in the form of pythonXY-<modulename>. Additionally, all other
  Linux distributions prefer something similar in the form of
  pythonX.Y-<modulename>.
  This ensures we have those names so that distribution dependency
  generation works as expected.

- Add support for arch selector on volumes
  The optional <volume ... arch=""/> attribute allows to create
  the volume only if it matches the specified host architecture.
  Multiple architecture names can be specified as comma separated
  list.

- Add rd.kiwi.oem.force_resize boot option
  Forces the disk resize process on an OEM disk image.
  If set, no sanity check for unpartitioned/free space
  is performed and also an eventually configured
  <oem-resize-once> configuration from the image description
  will not be taken into account. This Fixes bsc#1224389

- Fixed leap integration tests
  For whatever reason procps is not longer pulled in by the
  core dependencies. Thus we have to explicitly request it

- Fix potential race condition in loop detach
  The call to 'losetup -d' is in fact an async operation. Once

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=255
2024-07-04 11:08:06 +00:00
Ana Guerrero
89dca7691b Accepting request 1179969 from Virtualization:Appliances:Builder
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1179969
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=115
2024-06-12 13:37:28 +00:00
Ana Guerrero
8e11e85d02 Accepting request 1177852 from Virtualization:Appliances:Builder
- Bump version: 10.0.18 → 10.0.19

- package: Always include patches and number all sources and patches
  This ensures that stuff is applied reliably and all sources and patches
  are included as expected.
  Then the added kiwi-revert-bls-default-for-suse.patch is applied
  conditionally for SUSE distributions.

- Bump version: 10.0.17 → 10.0.18

- package: adjust openSUSE patch

- Bump version: 10.0.16 → 10.0.17

- Fixed box plugin documentation
  The provided example was no longer correct according to
  changes on the image description referenced in the example

- Add procps to Tumbleweed integration tests

- Add procps to Tumbleweed integration tests

- Fix sdist upstream tarball contents
  The .virtualenv.dev-requirements.txt file is referenced by tox.ini
  but not put into the sdist tarball and therefore missing in the
  pypi upstream data.

- Drop use of obsolete pkg_resources
  As documented in https://setuptools.pypa.io/en/latest/pkg_resources.html
  the use of pkg_resources is obsolete and will cause issues.

OBS-URL: https://build.opensuse.org/request/show/1177852
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=114
2024-06-04 10:50:39 +00:00
7663391cc5 - Bump version: 10.0.20 → 10.0.21
- Add missing write_meta_data method to BLS base
  The standard bootloader interface class provided a method
  named write_meta_data which is expected to be implemented
  in the specialized bootloader implementation. For BLS
  bootloaders this method was missing in the BLS base class.
  write_meta_data can provide additional cmdline options
  for booting. If not covered some boot options might be
  missing. This patch fixes it

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=254
2024-06-04 09:16:14 +00:00
c492db8580 - Fix TW integration test to build outside OBS
- Make sure BootLoaderConfig fixes are effective
  The BootLoaderConfigGrub2 class has methods to fix the grub-mkconfig
  generated files. It does that by mounting the system and changing the
  respective files after the mkconfig call. However, after the change
  the class instance stays open in combination with BootLoaderInstallGrub2
  instance which itself under certain circumstances also mounts the
  system to call grub-install. At the time grub-install is called it
  cannot be guaranteed that all changes has been written unless an
  explicit umount in the BootLoaderConfigGrub2 class instance happened.
  This commit address the potential race condition.

- Bump version: 10.0.19 → 10.0.20

- Update rawhide integration test
  Use new arch attribute for testing in the repository
  element of the rawhide/test-image-live-disk integration
  test.

- Add support for arch attr in repository element
  Allow to provide different repository sections per architecture

- Add --list-profiles to image info
  Allow to list available profiles from the processed image
  description

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=253
2024-06-04 07:22:44 +00:00
d91aa3a4e8 - Bump version: 10.0.18 → 10.0.19
- package: Always include patches and number all sources and patches
  This ensures that stuff is applied reliably and all sources and patches
  are included as expected.
  Then the added kiwi-revert-bls-default-for-suse.patch is applied
  conditionally for SUSE distributions.

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=252
2024-05-31 07:39:42 +00:00
101edab20a - Bump version: 10.0.17 → 10.0.18
- package: adjust openSUSE patch

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=251
2024-05-29 16:28:19 +00:00
76dec26bf7 - Bump version: 10.0.16 → 10.0.17
- Fixed box plugin documentation
  The provided example was no longer correct according to
  changes on the image description referenced in the example

- Add procps to Tumbleweed integration tests

- Add procps to Tumbleweed integration tests

- Fix sdist upstream tarball contents
  The .virtualenv.dev-requirements.txt file is referenced by tox.ini
  but not put into the sdist tarball and therefore missing in the
  pypi upstream data.

- Drop use of obsolete pkg_resources
  As documented in https://setuptools.pypa.io/en/latest/pkg_resources.html
  the use of pkg_resources is obsolete and will cause issues.
  So happened on Debian unstable. This Fixes #2548

- RepositoryDnf5: correct defaults, set system_cachedir
  The "defaults" in `use_default_location` here are the dnf4
  defaults, not the dnf5 defaults, so let's update them. Also, for
  dnf5, we need to set `system_cachedir` instead of `cachedir` -
  see https://dnf5.readthedocs.io/en/latest/misc/caching.7.html ,
  `system_cachedir` is the cache location used when running as
  root, `cachedir` is the cache location used when running as a
  regular user.
  Signed-off-by: Adam Williamson <awilliam@redhat.com>

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=250
2024-05-29 13:23:45 +00:00
72c6b92239 - Fix spec file
Require docopt-ng for Fedora 41+

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=249
2024-05-08 12:59:40 +00:00
20b46d0ef5 OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=248 2024-05-07 14:22:19 +00:00
741950d7a8 - Bump version: 10.0.14 → 10.0.15
- Add support for stopsignal in containerconfig
  Allow to specify the stopsignal via the containerconfig
  element as the following example shows
  <type image="docker">
  <containerconfig ...>
  <stopsignal>SIGINT</stopsignal>
  </containerconfig>
  </type>
  This Fixes #2543

- Fix set_disk_password to be effective
  Since commit 8aa517eb7 it is necessary to call
  _mount_device_and_volumes() prior making any modifications
  to boot files. In addition handle potential errors
  from the grub.cfg modification better.

- Update Makefile
  Make sure custom patches are part of the package sources

- Bump version: 10.0.13 → 10.0.14

- doc: Document the bls option for the grub bootloader

- Temporarily revert grub-bls default to false for SUSE distributions
  For the time being, SUSE distributions cannot handle KIWI's default
  to use BLS with GRUB2. Until they catch up, revert this for them only.

- kiwi/bootloader: restore backward compatibility for grub2 with bls

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=247
2024-05-07 14:21:43 +00:00
Dominique Leuenberger
d1f30587f0 Accepting request 1168512 from Virtualization:Appliances:Builder
- Bump version: 10.0.11 → 10.0.12

- Drop concept of volumes_mounted_initially
  The volume mount should be the same process no matter
  if it happens for the first time or subsequently

- Fixed mountpoint to use for read-only property
  Make sure get_mountpoint() is used to retrieve the correct
  mountpoint for the root entry point. Using the self.mountpoint
  member is not always correct

- Prevent extra volume mount/umount on btrfs
  For setting up the read-only property an extra mount of the
  btrfs sub-volumes was issued. However, all volumes are mounted
  at that time. Thus it's not required to mount them again, resulting
  in a busy state because of the auto-snapshot mounts which does
  not get umounted and keeps a busy state until the lazy umount
  kicks in. This Fixes #2529

- Fix typo in documentation main page
  Superfluous format sequence

- Added another search path for signed EFI binaries
  Add /usr/lib/grub/*-efi-signed to search for shim signed EFI
  binaries too. This Fixes #2525

- Bump version: 10.0.10 → 10.0.11

- Add schema upgrade opportunity for old schemas
  kiwi files using a schema version < 7.4 are no longer supported

OBS-URL: https://build.opensuse.org/request/show/1168512
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=113
2024-04-17 12:45:23 +00:00
93801a42f9 - Bump version: 10.0.11 → 10.0.12
- Drop concept of volumes_mounted_initially
  The volume mount should be the same process no matter
  if it happens for the first time or subsequently

- Fixed mountpoint to use for read-only property
  Make sure get_mountpoint() is used to retrieve the correct
  mountpoint for the root entry point. Using the self.mountpoint
  member is not always correct

- Prevent extra volume mount/umount on btrfs
  For setting up the read-only property an extra mount of the
  btrfs sub-volumes was issued. However, all volumes are mounted
  at that time. Thus it's not required to mount them again, resulting
  in a busy state because of the auto-snapshot mounts which does
  not get umounted and keeps a busy state until the lazy umount
  kicks in. This Fixes #2529

- Fix typo in documentation main page
  Superfluous format sequence

- Added another search path for signed EFI binaries
  Add /usr/lib/grub/*-efi-signed to search for shim signed EFI
  binaries too. This Fixes #2525

- Bump version: 10.0.10 → 10.0.11

- Add schema upgrade opportunity for old schemas
  kiwi files using a schema version < 7.4 are no longer supported

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=246
2024-04-17 10:31:27 +00:00
Ana Guerrero
8e45216ec9 Accepting request 1164990 from Virtualization:Appliances:Builder
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1164990
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=112
2024-04-14 09:53:32 +00:00
f1486a9b09 - Bump version: 10.0.9 → 10.0.10
- Fix setup of discoverable partitions
  Make sure GUI is unique and typecode is set according to the
  standard. This Fixes #2517

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=245
2024-03-28 15:48:33 +00:00
cf9331694b - Bump version: 10.0.8 → 10.0.9
- Live ISO Wait for udev events after repart
  Make sure to wait for the event queue to become empty after
  the creation of the write partition. When kiwi calls the
  code to create the write partition this emits new udev events.
  It's important to wait for the event queue to become empty
  to avoid a potential regression on the use of the device nodes.
  In the processing of the events it can happen that a device
  gets removed and re-added. If we don't want for udev
  to process the entire queue it can happen that the
  wrong block device is used. This wrong selection is only
  possible because the way how hybrid ISOs are designed exposes
  both, the disk and the partition for the root device with
  the same label. This Fixes bsc#1213595

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=244
2024-03-27 16:47:22 +00:00
d86f5580e4 - Bump version: 10.0.7 → 10.0.8
- Fix zipl setup for use with custom btrfs root vol
  In the setup case that btrfs is used for the system and
  the root partition is on a custom named volume (not /),
  this information was not passed to the zipl bootloader
  instance and this caused the mounting of the overall
  root system to fail. This commit fixes it

- Allow ignore stanza in bootstrap
  So far the <ignore> stanza was only effective when placed
  as part of the type="image" packages section. This commit
  allows to place it also to the type="bootstrap" packages.
  This Fixes #2499

- Bump version: 10.0.6 → 10.0.7

- Add support for %v in bundle format
  Allow a placeholder for the entire version text as
  provided by the <version> section

- Allow bundle format to be set on the commandline
  The bundle format is usually specified as part of the image
  description in the bundle_format attribute. This commit also
  allows to specify/overwrite the bundle format in the kiwi
  result bundle command via the new --bundle-format option.
  This Fixes #2509

- Bump version: 10.0.5 → 10.0.6

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=243
2024-03-23 13:40:18 +00:00
7a11ce596c - Bump version: 10.0.6 → 10.0.7
- Add support for %v in bundle format
  Allow a placeholder for the entire version text as
  provided by the <version> section

- Allow bundle format to be set on the commandline
  The bundle format is usually specified as part of the image
  description in the bundle_format attribute. This commit also
  allows to specify/overwrite the bundle format in the kiwi
  result bundle command via the new --bundle-format option.
  This Fixes #2509

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=242
2024-03-20 14:19:30 +00:00
0fbec4d26f - Bump version: 10.0.5 → 10.0.6
- Fixup cleanup of zipl templates
  Make sure temporary modifications to the zipl template
  and config file are not effective in the later system.
  This Fixes bsc#1221469

- Revise system_update.rst

- Revise system_prepare.rst

- Revise system_create.rst
- Revise system_build.rst

- Temp commit


- Revise image_size, kiwi

- Revise image info

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=241
2024-03-19 07:52:30 +00:00
289b31f48b - Bump version: 10.0.4 → 10.0.5
- Followup fix for use of /boot/zipl
  The mounting of /boot/zipl is also only required if the
  bootloader is set to grub2_s390x_emu

- Update schema version in spec file

- Drop rpm-dir from allowed repository type
  Using an arbitrary list of rpm packages as repository is a zypper
  only feature, barely tested and from our pov not really needed
  as a simple createrepo call turns any custom list of packages
  into a clean rpm-md repo including metadata. This commit drops
  rpm-dir from the list of allowed repository types and auto
  converts those image descriptions which makes use of it. Please
  note this does not prevent users from using flat package
  directories with zypper, because the type argument in the
  repository section is an optional attribute. In case there is
  no type specification zypper auto-detects and handles the data
  as it handles it. This Fixes #1926

- Fixup use of /boot/zipl
  Only for the grub2_s390x_emu bootloader setup an optional boot
  partition setup must be put to /boot/zipl rather than to /boot

- Lookup distro provided BLS entries for zipl
  Check if there is already an entry file name produced by the
  distribution logic/policy. If we can find an already present
  entry name, prefer this name over the kiwi naming policy

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=240
2024-03-13 14:12:52 +00:00
40d663979f - Bump version: 10.0.3 → 10.0.4
- Delete invalid EPEL repo from rawhide tests

- Fix s390 tools and grub requirement
  On Fedora/RHEL this is named s390utils and there is no grub2

- Added rawhide integration test

- Add support for BLS zipl
  Add support for <bootloader name="zipl" .../> to support BLS
  based zipl configuration. This Fixes #2481

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=239
2024-03-10 17:01:40 +00:00
b572bff676 - Bump version: 10.0.2 → 10.0.3
- Ensure we use a compatible docopt-ng version
  To ensure our trick to switch between docopt and docopt-ng works,
  we need to have a higher minimum version for docopt-ng where
  compatibility with the original docopt was restored.

- Fixed delta_root build
  The support for delta_root allows to build a delta container
  image from a given base container. Due to the refactoring of
  the kiwi code base using context managers no explicit deletion
  of instances happens anymore. This uncovered a weakness of
  the delta root code at the level of the overlay mount. At
  the time of the umount there are still active temporary
  mount handlers which keeps the mountpoint busy. In order to
  fix this properly also the PackageManager factory is now
  a context manager and the Repository factory received a
  cleanup method which is called when the PackageManager goes
  out of scope. This refactoring also fixes the busy state
  when building deltas

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=238
2024-03-07 15:02:10 +00:00
7b6fd15588 - Bump version: 10.0.1 → 10.0.2
- Don't use poetry publish
  Publishing to pypi is done via pypa/gh-action-pypi-publish
  and the respective auth token. Calling poetry publish does
  not work because this is not authorized

- Bump version: 10.0.0 → 10.0.1

- Drop ci-kiwi-9-compliant.yml
  Delete this action as it existed in the intermediate state
  prior the new major version v10.x.x

- Add tzdata to Debian tests

- Fixed sync script for test-image-rpi on Ubuntu

- Install language-pack-en for Ubuntu arm test

- Install locales-all for Debian tests

- Install language-pack-en for Debian tests

- Fix repo setup for Ubuntu arm test

- Install network stack for Debian test

- Request util-linux explicitly for Ubuntu tests

- Add usr-is-merged to package list for bootstrap

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=237
2024-03-06 10:08:33 +00:00
Dominique Leuenberger
aaea0e3a17 Accepting request 1153889 from Virtualization:Appliances:Builder
- Fix activation of luks pool in the initrd
  kiwi called systemd-cryptsetup directly which does not take
  the settings available in /etc/crypttab into account. This
  commit changes the activation procedure in a way that the
  generator created unit file systemd-cryptsetup@... is used
  This Fixes bsc#1219009

- Set default output console to gfxterm for grub
  If no console setting is done in the image description for grub
  the default output console is set to: gfxterm and the default
  input console is set to: console. This Fixes bsc#1219074

- Allow terminal emulation setup from the cmdline
  Using rd.kiwi.term will export the TERM variable into the initrd
  environment. In case the default value for the terminal emulation
  is not appropriate rd.kiwi.term can be used to overwrite the default.
  The environment is also passed to the systemd unit which calls
  dialog based programs in kiwi dracut code, such that the TERM
  setting will be effective there too. For example:

OBS-URL: https://build.opensuse.org/request/show/1153889
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=111
2024-03-01 22:35:51 +00:00
5656d543da - Fix activation of luks pool in the initrd
kiwi called systemd-cryptsetup directly which does not take
  the settings available in /etc/crypttab into account. This
  commit changes the activation procedure in a way that the
  generator created unit file systemd-cryptsetup@... is used
  This Fixes bsc#1219009
- Allow terminal emulation setup from the cmdline
  Using rd.kiwi.term will export the TERM variable into the initrd
  environment. In case the default value for the terminal emulation
  is not appropriate rd.kiwi.term can be used to overwrite the default.
  The environment is also passed to the systemd unit which calls
  dialog based programs in kiwi dracut code, such that the TERM
  setting will be effective there too. For example:
  rd.kiwi.term=vt100
  This is related to bsc#1218095

- Followup fix for .profile.extra
  Allow to source .profile.extra such that it is possible to
  read and act on e.g cmdline parameters. This is related to
  bsc#1218095


- Add support for reading .profile.extra in initrd
  If there is the file /.profile.extra available in the
  initrd, kiwi will import this additional environment file
  after the import of the standard /.profile file.
  This is related to bsc#1218095

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=236
2024-03-01 10:54:06 +00:00
40917ce39c - Set default output console to gfxterm for grub
If no console setting is done in the image description for grub
  the default output console is set to: gfxterm and the default
  input console is set to: console. This Fixes bsc#1219074

- Follow up fix for drop of hybrid boot snippets
  The following is left over code from the drop of the hybrid
  boot templates.

- Drop hybrid boot snippets from the GRUB 2 configuration template
  Sometime between GRUB 2.04 and GRUB 2.06, it became no longer
  necessary to use "linuxefi"+"initrdefi" for UEFI boot. The
  standard "linux"+"initrd" stanzas work for both legacy BIOS boot
  and modern UEFI boot.
  Some distributions no longer support "linuxefi"+"initrdefi" at all
  anymore, so let's just use "linux"+"initrd" for everything now.

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=235
2024-02-29 13:33:23 +00:00
1d2801313f - Add changelog fix file for commit 31deb0
The commit used a wrong e-mail address which should not
  land in the created changes file for the packaging

- Apply changelog fixes by glob
  Does not require Makefile changes when maintaining branches

- Add changelog fix file for commit deb6ca
  The commit used a wrong e-mail address which should not
  land in the created changes file for the packaging

  Signed-off-by: David Cassany <dcassany@suse.com>

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=234
2024-02-29 08:54:55 +00:00
fbeba8c6fd - Include partprobe in initrd for s390
This commit includes partprobe, in addition to parted, on
  s390 based systems. Otherwise partx is used and apparently
  it does not properly support s390.
  Fixes bsc#1219798
  Signed-off-by: David Cassany <david@localhost.localdomain>

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=233
2024-02-19 12:15:37 +00:00
Dominique Leuenberger
5e35fee5eb https://bugzilla.opensuse.org/show_bug.cgi?id=1219074
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=110
2024-01-23 09:24:08 +00:00
Ana Guerrero
906b00cf8d Accepting request 1140588 from Virtualization:Appliances:Builder
- Disable workflow runs from master
  The following github actions will be disabled from master
  because they are expected to run from main:
  - ci-publish-pages.yml
  - ci-publish-to-pypi.yml
  - ci-update-build-tests.yml

- Bump version: 9.25.21 → 9.25.22

- Fixed regression in GRUB_SERIAL_COMMAND setup
  The condition to write the serial line setup was broken.
  This commit fixes it. Related to Issue #2419

- Fixed grub terminal setup
  The grub terminal setup is divided into the setting for the output
  and the input console. For both settings different parameters exists.
  So far kiwi did not differentiate between the two parts of the
  console setup and that could lead to a wrong setting if only one
  value is provided in kiwi's console= attribute which lead to the
  grub setting, GRUB_TERMINAL=value. If value is set to e.g gfxterm
  grub takes this for both input and output and it's obviously
  wrong for the input. To make this less error prune the kiwi code
  changes with this commit to set GRUB_TERMINAL_INPUT and
  GRUB_TERMINAL_OUTPUT rather than GRUB_TERMINAL and also runs sanity
  checks on the provided values if they are applicable. The information
  for setting up the console in the schema stays untouched though.
  That's because it's used for all bootloaders and also because grub
  supports multiple values for the console in/out setting in one
  GRUB_TERMINAL variable even though kiwi does no longer use it.
  To make this clear for the users also the documentation for the

OBS-URL: https://build.opensuse.org/request/show/1140588
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=109
2024-01-22 19:31:10 +00:00
429f5fcfdb - Disable workflow runs from master
The following github actions will be disabled from master
  because they are expected to run from main:
  - ci-publish-pages.yml
  - ci-publish-to-pypi.yml
  - ci-update-build-tests.yml

- Bump version: 9.25.21 → 9.25.22

- Fixed regression in GRUB_SERIAL_COMMAND setup
  The condition to write the serial line setup was broken.
  This commit fixes it. Related to Issue #2419

- Fixed grub terminal setup
  The grub terminal setup is divided into the setting for the output
  and the input console. For both settings different parameters exists.
  So far kiwi did not differentiate between the two parts of the
  console setup and that could lead to a wrong setting if only one
  value is provided in kiwi's console= attribute which lead to the
  grub setting, GRUB_TERMINAL=value. If value is set to e.g gfxterm
  grub takes this for both input and output and it's obviously
  wrong for the input. To make this less error prune the kiwi code
  changes with this commit to set GRUB_TERMINAL_INPUT and
  GRUB_TERMINAL_OUTPUT rather than GRUB_TERMINAL and also runs sanity
  checks on the provided values if they are applicable. The information
  for setting up the console in the schema stays untouched though.
  That's because it's used for all bootloaders and also because grub
  supports multiple values for the console in/out setting in one
  GRUB_TERMINAL variable even though kiwi does no longer use it.
  To make this clear for the users also the documentation for the

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=232
2024-01-19 10:29:20 +00:00
Dominique Leuenberger
cca08fec7e Accepting request 1132074 from Virtualization:Appliances:Builder
- Update test-image-MicroOS
  Incorporate latest changes from upstream MicroOS and
  also add an encrypted profile build for testing

- Bump version: 9.25.18 → 9.25.19

- Fix typo in workflow overview doc section

- Add missing documentation for oem-unattended-id

- Allow install disk overwrite from cmdline
  Add rd.kiwi.oem.installdevice=DEVICE. Configures the disk device
  that should be used in an OEM installation. This overwrites any
  other oem device setting, e.g device filter or maxdisk and just
  continues the installation on the given device. However, the
  device must exist and must be a block special.
  This Fixes jira#PED-7180

- Update mailmap

- Replace the regex-based loader entry fix with string parsing (#2388)
  A user building RHEL images ran into issues with the initrd.
  It turns out that RHEL uses some patches that mean the
  initrd/linux files in RHEL are not installed to /boot, which trips
  up the original regex. The new fix doesn't rely on matching the
  path in boot, instead just finding the initrd/linux files and rewriting
  them in place.
  This change also adds the pre-and-post fix loader entries to the debug logs.
  Reference: https://bugzilla.suse.com/1208701
  Fixes suse bsc#1208701

OBS-URL: https://build.opensuse.org/request/show/1132074
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=108
2023-12-09 21:49:09 +00:00
0d83db7c6f - Update test-image-MicroOS
Incorporate latest changes from upstream MicroOS and
  also add an encrypted profile build for testing

- Bump version: 9.25.18 → 9.25.19

- Fix typo in workflow overview doc section

- Add missing documentation for oem-unattended-id

- Allow install disk overwrite from cmdline
  Add rd.kiwi.oem.installdevice=DEVICE. Configures the disk device
  that should be used in an OEM installation. This overwrites any
  other oem device setting, e.g device filter or maxdisk and just
  continues the installation on the given device. However, the
  device must exist and must be a block special.
  This Fixes jira#PED-7180

- Update mailmap

- Replace the regex-based loader entry fix with string parsing (#2388)
  A user building RHEL images ran into issues with the initrd.
  It turns out that RHEL uses some patches that mean the
  initrd/linux files in RHEL are not installed to /boot, which trips
  up the original regex. The new fix doesn't rely on matching the
  path in boot, instead just finding the initrd/linux files and rewriting
  them in place.
  This change also adds the pre-and-post fix loader entries to the debug logs.
  Reference: https://bugzilla.suse.com/1208701
  Fixes suse bsc#1208701

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=231
2023-12-08 10:58:41 +00:00
Ana Guerrero
a35145990b Accepting request 1118210 from Virtualization:Appliances:Builder
- Bump version: 9.25.16 → 9.25.17

- Fixed argument processing of config.bootoptions
  Instead of adding an extra space to make the subsequent reading
  to work, use an awk script that does it without nasty workarounds

- Allow test-image-disk-ramdisk to be build locally

- Bump version: 9.25.15 → 9.25.16

- Fixed doc search field
  The search in the documentation is broken with the rtd
  schema and latest sphinx. Stick with sphinx 5.0.0 for the
  moment which fixes the issue

- Bump version: 9.25.14 → 9.25.15

- Make codacy happy

- Support release version in signkey URLs
  Using one of the $releasever/${releasever} variable placeholders
  in an URL as part of a <signing key="..."/> element did not replace
  the placeholder with the value of the <release-version> element.
  This commit fixes this and also makes sure that the result list
  for downloading signing keys is unique. This Fixes #2381

- Bump version: 9.25.13 → 9.25.14

- Update pypi release to trusted workflow

OBS-URL: https://build.opensuse.org/request/show/1118210
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=107
2023-10-17 18:22:36 +00:00
0ee77e4a8e - Bump version: 9.25.16 → 9.25.17
- Fixed argument processing of config.bootoptions
  Instead of adding an extra space to make the subsequent reading
  to work, use an awk script that does it without nasty workarounds

- Allow test-image-disk-ramdisk to be build locally

- Bump version: 9.25.15 → 9.25.16

- Fixed doc search field
  The search in the documentation is broken with the rtd
  schema and latest sphinx. Stick with sphinx 5.0.0 for the
  moment which fixes the issue

- Bump version: 9.25.14 → 9.25.15

- Make codacy happy

- Support release version in signkey URLs
  Using one of the $releasever/${releasever} variable placeholders
  in an URL as part of a <signing key="..."/> element did not replace
  the placeholder with the value of the <release-version> element.
  This commit fixes this and also makes sure that the result list
  for downloading signing keys is unique. This Fixes #2381

- Bump version: 9.25.13 → 9.25.14

- Update pypi release to trusted workflow

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=230
2023-10-17 07:36:08 +00:00
Ana Guerrero
cf6dfad4f3 Accepting request 1103984 from Virtualization:Appliances:Builder
- Bump version: 9.25.11 → 9.25.12

- Fix double grub entries in hybrid ISO images
  As consequence of using the "source" grub command instead
  of the "configfile" command to load the grub config we now
  see double loading of the same file on ISO media. The reason
  here is that kiwi ISO media is always hybrid which means it
  embeds an MBR into the ISO for which the "source" command now
  can read the same file through two different device paths.
  This does not happen with the "configfile" grub command.
  Thus this patch uses "configfile" if we produce an ISO image
  and "source" for all other image types. The commit also fixes
  the custom grub template used for ISO images in a way that
  we only set the "serial" command if there is a serial
  configuration provided along with the image description.

- Update x86/tumbleweed/test-image-systemd-boot
  systemd package has been splitted and provides
  systemd-boot in an extra package now

- Limit scope of grub _fix method
  Only apply _fix_grub_to_support_dynamic_efi_and_bios_boot for
  the x86_64 or ix86 architectures. This Fixes #2343

OBS-URL: https://build.opensuse.org/request/show/1103984
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=106
2023-08-16 12:16:30 +00:00
e61f301677 - Bump version: 9.25.11 → 9.25.12
- Fix double grub entries in hybrid ISO images
  As consequence of using the "source" grub command instead
  of the "configfile" command to load the grub config we now
  see double loading of the same file on ISO media. The reason
  here is that kiwi ISO media is always hybrid which means it
  embeds an MBR into the ISO for which the "source" command now
  can read the same file through two different device paths.
  This does not happen with the "configfile" grub command.
  Thus this patch uses "configfile" if we produce an ISO image
  and "source" for all other image types. The commit also fixes
  the custom grub template used for ISO images in a way that
  we only set the "serial" command if there is a serial
  configuration provided along with the image description.

- Update x86/tumbleweed/test-image-systemd-boot
  systemd package has been splitted and provides
  systemd-boot in an extra package now

- Limit scope of grub _fix method
  Only apply _fix_grub_to_support_dynamic_efi_and_bios_boot for
  the x86_64 or ix86 architectures. This Fixes #2343

- Bump version: 9.25.10 → 9.25.11

- remove trailing whitespace

- rpm spec: add missing requires of typing_extensions for python < 3.8

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=229
2023-08-15 07:18:06 +00:00
Dominique Leuenberger
b490c36052 Accepting request 1088796 from Virtualization:Appliances:Builder
Bumping to v9.24.61, this includes small spec file changes required in ALP

OBS-URL: https://build.opensuse.org/request/show/1088796
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-kiwi?expand=0&rev=105
2023-05-26 18:14:17 +00:00
2326e78b43 - Bump version: 9.24.60 → 9.24.61
- dracut: modules.d: 99kiwi-lib: add bash shebangs and dependency
  The scripts in the kiwi-lib module use bash-specific syntax like
  `function`, which causes the script to fail if another shell (like dash
  or busybox) is used to interpret the scripts. Specifically set the shebang
  to use bash as the shell interpreter and add bash as a dependency to the
  dracut module to fix this.
  This resolves the following errors which are printed at boot when
  busybox tries to interpret the scripts:
  /bin/dracut-pre-mount: 3: /lib/kiwi-filesystem-lib.sh: function: not found
  /bin/dracut-pre-mount: 15: /lib/kiwi-filesystem-lib.sh: Syntax error: "}" unexpected
  Signed-off-by: Isaac True <isaac.true@canonical.com>

- Do not depend on dnf for SUSE ALP

- Added appx-util as WSL requires for Fedora/RHEL
  Make sure the kiwi-systemdeps-containers-wsl meta package
  pulls in the required tools for Fedora/RHEL when building
  WSL containers. This is a followup to #2286

- Add cpio to core systemdeps requires list

- Bump version: 9.24.59 → 9.24.60

- Allow to create plain cpio archives
  Allow to create plain cpio archives to serve the idea
  of the mkosi initrd concept

- Fix restoration of grub2-install (bsc#1210948)

OBS-URL: https://build.opensuse.org/package/show/Virtualization:Appliances:Builder/python-kiwi?expand=0&rev=228
2023-05-24 07:43:40 +00:00