ignition/0001-ignore-missing-qemu-blockdev.patch

30 lines
1.4 KiB
Diff
Raw Normal View History

- Update to version 2.15.0: * Features * Support offline Tang provisioning via pre-shared advertisement (3.4.0) * Allow enabling discard passthrough on LUKS devices (3.4.0) * Allow specifying arbitrary LUKS open options (3.4.0) * Ship aarch64 macOS ignition-validate binary in GitHub release artifacts * Changes * Mark the 3.4.0 config spec as stable * No longer accept configs with version 3.4.0-experimental * Create new 3.5.0-experimental config spec from 3.4.0 * Fail if files/links/dirs conflict with systemd units or dropins * Warn if template for enabled systemd instance unit has no Install section * Warn if filesystem overwrites partitioned disk * Warn if wipeTable overwrites a filesystem that would otherwise be reused * Warn if user/group specified for hard link * Install ignition-apply in /usr/libexec * Allow distros to add Ignition command-line arguments from a unit drop-in * Convert NEWS to Markdown and move to docs site * Require Go 1.18+ * Bug fixes * Don't overwrite LUKS1 volume when storage.luks.wipeVolume is false * Request network when custom Clevis config has needsNetwork set * Fix creating LUKS volume with custom Clevis config that uses TPM2 * Avoid logging spurious error when a LUKS volume wasn't previously formatted * Fix version string in ignition-validate release container * Fix reproducibility of systemd preset file in ignition-apply output * Document that user/group fields aren't applied to hard links * Clarify spec docs for files/directories/links group fields - Modified 0002-allow-multiple-mounts-of-same-device.patch to add new Ignition spec version - Add 0001-ignore-missing-qemu-blockdev.patch [bsc#1207679] to support booting without configuration device on s390x. OBS-URL: https://build.opensuse.org/package/show/devel:kubic:ignition/ignition?expand=0&rev=100
2023-03-07 16:49:53 +01:00
Author: Ignaz Forster <iforster@suse.com>
Date: Thu, 9 Feb 2023 16:05:27 +0100
Upstream: Ticket opened [gh#coreos/ignition#1556]
Continue with empty config on missing QEMU device
The two QEMU provider implementations (fwcfg for platforms with
native support and blockdev for the others) have slightly different
behaviour: If fwcfg doesn't contain any configuration, it will just
skip ("QEMU firmware config was not found. Ignoring..."). The blockdev
provider would error out if it can't read the configuration.
Change the behavior of the blockdev provider to match the fwcfg one
and continue with an empty configuration if the device is not there.
diff --git a/internal/providers/qemu/qemu_blockdev.go b/internal/providers/qemu/qemu_blockdev.go
index 911eb973..11739f3e 100644
--- a/internal/providers/qemu/qemu_blockdev.go
+++ b/internal/providers/qemu/qemu_blockdev.go
@@ -83,7 +83,8 @@ func fetchConfigFromBlockDevice(logger *log.Logger) ([]byte, error) {
return nil, err
}
case <-time.After(blockDeviceTimeout):
- return nil, fmt.Errorf("timed out after %v waiting for block device %q to appear", blockDeviceTimeout, ignitionBlockDevicePath)
+ logger.Info("timed out after %v waiting for block device %q to appear. Ignoring...", blockDeviceTimeout, ignitionBlockDevicePath)
+ return util.ParseConfig(logger, []byte{})
}
return bytes.TrimRight(data, "\x00"), nil