Commit Graph

5355 Commits

Author SHA1 Message Date
Marcus Schäfer
97aef9904b
Update documentation about partition clones
Using the root_clone attribute comes with some requirements
and consequences. This commit documents them
2024-02-14 15:42:39 +01:00
Fabian Vogt
765c5a5e28
Improve documentation generation
With Sphinx >= 6.0.0, jQuery is no longer included but the rtd theme's search
functionality needs it. The theme was changed to load sphinxcontrib-jquery
automatically with https://github.com/readthedocs/sphinx_rtd_theme/pull/1399,
but kiwi broke this fix by loading the theme in the wrong way.
Now that the theme is loaded properly, the search functionality also works
with newer versions of sphinx again and the version pinning can be lifted.
This Fixes: #2462
2024-02-14 15:18:56 +01:00
Marcus Schäfer
3dbcdc328c
Merge pull request #2461 from OSInside/no_compliant_test_on_forks
Don't run ci-kiwi-9-compliant action on forks
2024-02-14 12:52:52 +01:00
Fabian Vogt
8064538ebf
Allow specifying the filesystem for live image, also direct squashfs
Allow specifying the filesystem for live image, also direct squashfs

By setting <type image="iso" filesystem="FSTYPE" .../> it's now possible
to specify the filesystem used for live images. By using "squashfs", the
rootfs container is skipped entirely.
2024-02-14 12:51:58 +01:00
Marcus Schäfer
3a444d9868
Don't run ci-kiwi-9-compliant action on forks 2024-02-14 09:50:08 +01:00
Dan Čermák
2675791852
Merge pull request #2458 from OSInside/move_buildah_to_context_manager
Move OCI to context manager
2024-02-14 09:08:45 +01:00
Marcus Schäfer
cd052c0558
Move OCI to context manager
Change the OCI Factory to be a context manager.
All code using OCI was updated to the following
with statement:

    with OCI(...).new as oci:
        oci.some_member()

This is related to Issue #2412
2024-02-13 22:35:52 +01:00
Neal Gompa (ニール・ゴンパ)
dfa7f2c4c9
Merge pull request #2459 from OSInside/fix_uuid_setup_for_btrfs
Fix setup of UUID for btrfs
2024-02-13 05:53:48 -05:00
Marcus Schäfer
2645225e11
Fix setup of UUID for btrfs
When setting up the UUID for a btrfs filesystem via btrfstune
it could happen that the call becomes interactive asking
a question and give a recommendation. All this is unwanted
and can be forced via the -f switch. This Fixes #2456
2024-02-13 09:27:31 +01:00
Marcus Schäfer
8c6ac25804
Fixed use of custom bootloader
In case no bootloader implementation by kiwi should be
used, users can specify the bootloader="custom" attribute.
Instead of skipping the bootloader stage in the builders
it is better to consistently create an instance of bootloader
but raise if a method of the bootloader interface is called
for which the custom bootloader has no implementation. This
commit adds the consistency bits.
2024-02-12 13:04:29 +01:00
Marcus Schäfer
bdd2746e03
Fixed scope of BootLoaderConfig instance
Due to the refactor of BootLoaderConfig into context managers
we had two instances of BootLoaderConfig. However, the first
instance holds data the second instance needs which caused an
issue. This commit makes sure there is one BootLoaderInstance
within the lifetime of required services
2024-02-12 10:37:21 +01:00
Marcus Schäfer
59fe4e48ff
Allow integration test to build outside of obs too 2024-02-12 10:36:48 +01:00
Marcus Schäfer
b781feaea0
Follow up fix for drop obsolete C tools from kiwi
The spec file make call to build the C code was forgotten
to be deleted
2024-02-12 09:54:26 +01:00
Neal Gompa (ニール・ゴンパ)
84709c26c6
Merge pull request #2448 from OSInside/no_pdf_docs
Drop PDF build of the documentation
2024-02-11 09:39:44 -05:00
Marcus Schäfer
18347989dd
Drop PDF build of the documentation
The kiwi.pdf file as provided in the kiwi-man-pages package
was never really used by our users but comes with a huge
dependency chain to LaTex. We provide the documentation
online as well as converted to DocBook from where all other
formats could be derived. Thus there is no need for us to
produce an extra PDF document which is imho never consulted.
In addition to this change also the contributing chapter has
been reworked. Due to recent changes and drop of obsolete
components from kiwi as well as the effort to move the development
setup to poetry, there is only one non python tool needed
for the development of kiwi. The check for this tool has been
moved into the Makefile and all other checks formerly done
in the helper/install_devel_packages script were deleted.
2024-02-11 15:11:39 +01:00
Neal Gompa (ニール・ゴンパ)
e91e29e61c
Merge pull request #2455 from OSInside/drop_obsolete_c_tools
Drop obsolete C tools from kiwi
2024-02-11 06:38:27 -05:00
Marcus Schäfer
c2766b23a6
Drop obsolete C tools from kiwi
For building custom initrd images kiwi provided some
optional helper tools. All these C written tools are
old and outdated and either not useful anymore or
replaced by other tools that are part of the distribution
matrix we support. Thus with the move to the next
major release those can go away. This also include the
package kiwi-tools which was used to provide them
2024-02-11 10:54:58 +01:00
Marcus Schäfer
d8e0d65549
Merge pull request #2452 from OSInside/no_del_on_bootloader_install_grub
Remove destructor from BootLoaderInstallGrub2
2024-02-09 10:30:52 +01:00
Marcus Schäfer
f6f8ecb11f
Merge pull request #2453 from OSInside/fix_docs_for_leap_use
Update documentation
2024-02-09 10:22:23 +01:00
Marcus Schäfer
571cbe401e
Update documentation
Several examples still pointed to Leap 15.3 repos, but we are
at Leap 15.5. Thus this commit shifts towards Leap 15.5
2024-02-07 10:36:34 +01:00
Marcus Schäfer
8aa517eb77
Remove destructor from BootLoaderInstallGrub2
With MountManager as context manager the BootLoaderInstallGrub2
class doesn't need a destructor anymore. This is related
to Issue #2412
2024-02-06 10:28:18 +01:00
Dan Čermák
9178edef43
Merge pull request #2451 from OSInside/no_del_on_boot_image_dracut
Remove obsolete destructor from BootImageDracut
2024-02-06 09:53:17 +01:00
Marcus Schäfer
ca334c1962
Remove obsolete destructor from BootImageDracut
With MountManager as context manager the BootImageDracut
class doesn't need a destructor anymore. This is
related to Issue #2412
2024-02-05 15:00:09 +01:00
Dan Čermák
9cf961e051
Merge pull request #2450 from OSInside/nested_build_process
Move Raid Luks and Integrity to context manager
2024-02-05 11:46:47 +01:00
Marcus Schäfer
9addfcd666
Move Raid Luks and Integrity to context manager
Change the RaidDevice, LuksDevice and IntegrityDevice classes
to context manager:

with RaidDevice(...) as raid:
    raid.some_member()

with LuksDevice(...) as luks:
    luks.some_member()

with IntegrityDevice(...) as integrity:
    integrity.some_member()

In the context of the disk builder an ExitStack is used to
handle the new context manager based classes

This is related to Issue #2412
2024-02-05 09:35:05 +01:00
Neal Gompa (ニール・ゴンパ)
bd37e2da5d
Merge pull request #2449 from OSInside/fix_error_message
Fix error message regarding ovftool
2024-02-02 08:52:12 -05:00
Marcus Schäfer
261e9d98fe
Fix error message regarding ovftool
For ova support kiwi still uses the proprietary ovftool
from VMware. The error message if the tool could not be
found was broken and the link to the VMware page was also
outdated.
2024-02-02 12:26:17 +01:00
Neal Gompa (ニール・ゴンパ)
e1230ca2b2
Merge pull request #2444 from OSInside/fix_bootloader_arguments
Only pass appropriate bootloader arguments
2024-02-02 04:56:32 -05:00
Marcus Schäfer
3846ba7051
Merge pull request #2443 from OSInside/fix_csv_reading
Fix reading of os-release file
2024-02-01 15:33:37 +01:00
Marcus Schäfer
855371c591
Merge pull request #2446 from OSInside/fix_crypto_integration_test
Fix crypto LUKS integration test
2024-02-01 09:29:53 +01:00
Dan Čermák
01acc8797b
Merge pull request #2442 from OSInside/disk_to_context_manager
Move Disk to context manager
2024-01-31 16:31:28 +01:00
Marcus Schäfer
11c16946e4
Fix crypto LUKS integration test
The integration test build also encrypts /boot which requires
grub to open the LUKS pool using cryptomount. grub does not support
the argonID salted password hashes. Thus the integration test
description configures pbkdf2 instead
2024-01-31 15:40:17 +01:00
Marcus Schäfer
c5b3c83920
Use ExitStack for MountManagers 2024-01-31 15:04:10 +01:00
Marcus Schäfer
09e4758609
Move Disk to context manager
Change the Disk class to be a context manager.
All code using Disk was updated to the following
with statement:

    with Disk(...) as disk:
        disk.some_member()

This is related to Issue #2412
2024-01-31 15:04:10 +01:00
Marcus Schäfer
53dd9d9f09
Only pass appropriate bootloader arguments
When constructing a BootLoaderConfig instance only pass
arguments appropriate to the selected bootloader. It does
not hurt but it is bad style and unnecessary data and
code points if e.g grub relevant information is passed
when we actually setup systemd-boot
2024-01-31 11:10:26 +01:00
Marcus Schäfer
d154317573
Fix reading of os-release file
If the /etc/os-release file contains comments or spaces
python's csv reader will throw an exception. Thus this
data must be ripped out prior reading
2024-01-31 10:30:22 +01:00
Marcus Schäfer
82d9a6cdcf
Allow to use Literal for all python versions 2024-01-30 17:36:28 +01:00
Marcus Schäfer
d785bd5ba9
Better error message on module import 2024-01-30 17:14:21 +01:00
Neal Gompa (ニール・ゴンパ)
a971095f1f
Merge pull request #2440 from OSInside/bootloaderconfig-to-ABC
convert BootLoaderConfig to an abstract base class
2024-01-29 08:26:38 -05:00
Dan Čermák
66747c754c
Fix invalid escape sequence 2024-01-29 14:08:13 +01:00
Dan Čermák
882fb9019a
Add missing assert call to install_test 2024-01-29 14:08:13 +01:00
Dan Čermák
410e6d9e21
Correct type hint of mbrid parameter 2024-01-29 14:08:10 +01:00
Dan Čermák
34934b2f8f
Convert BootLoaderConfigBase into an abstract base class 2024-01-29 14:07:41 +01:00
Dan Čermák
f906704ea5
Convert BootLoaderConfig to free function
The class serves really no purpose except for creating another
namespace. This function now allows us to have more stricter type checking.
2024-01-29 13:56:51 +01:00
Marcus Schäfer
bd6adefd16
Merge pull request #2439 from OSInside/drop_isolinux
Drop isolinux
2024-01-28 11:16:08 +01:00
Marcus Schäfer
8424451557
Fixed test-image-rpi for TW
No need to pull in zypper plugin that does not resolve on TW
2024-01-26 21:36:49 +01:00
Marcus Schäfer
379ccf2a82
Update documentation
drop documentation for isolinux in API and user docs
2024-01-26 21:25:37 +01:00
Marcus Schäfer
54f92d2a9f
Drop support for syslinux/isolinux
SYSLINUX has been abandoned for several years now, and it does not
even work with modern versions of the filesystems supported in kiwi.
This commit drops it and Fixes #2433
2024-01-26 21:25:37 +01:00
Marcus Schäfer
e32a8a1faa
Update build tests
Delete use of syslinux/isolinux
2024-01-26 21:25:37 +01:00
Dan Čermák
b29e491196
Merge pull request #2438 from OSInside/move_bootloader_to_context_manager
Move BootLoaderConfig to context manager
2024-01-26 10:17:42 +01:00