mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-28 09:01:55 +02:00
sys-apps/ignition: dropped upstreamed patches
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
This commit is contained in:
parent
d1916c2a1d
commit
c3b1c5869c
@ -1,67 +0,0 @@
|
||||
From 80acac964852b58d835be246bacc8dd8f576ab75 Mon Sep 17 00:00:00 2001
|
||||
From: Kai Lueke <kailuke@microsoft.com>
|
||||
Date: Fri, 29 Sep 2023 18:06:09 +0200
|
||||
Subject: [PATCH 21/21] sgdisk: Run partprobe after partition changes
|
||||
|
||||
The sgdisk tool does not update the kernel partition table in contrast
|
||||
to other similar tools. Often udev can detect the changes but not always
|
||||
as experienced when adding a new partition on Flatcar's boot disk.
|
||||
Instead of implicitly relying on some other component to re-read the
|
||||
kernel partition table, trigger the re-read with partprobe.
|
||||
---
|
||||
dracut/30ignition/module-setup.sh | 1 +
|
||||
internal/distro/distro.go | 2 ++
|
||||
internal/sgdisk/sgdisk.go | 5 +++++
|
||||
3 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/dracut/30ignition/module-setup.sh b/dracut/30ignition/module-setup.sh
|
||||
index 3ac9c11c..7955f8f9 100755
|
||||
--- a/dracut/30ignition/module-setup.sh
|
||||
+++ b/dracut/30ignition/module-setup.sh
|
||||
@@ -40,6 +40,7 @@ install() {
|
||||
mkfs.xfs \
|
||||
mkswap \
|
||||
sgdisk \
|
||||
+ partprobe \
|
||||
useradd \
|
||||
userdel \
|
||||
usermod \
|
||||
diff --git a/internal/distro/distro.go b/internal/distro/distro.go
|
||||
index 79fa8712..239e4268 100644
|
||||
--- a/internal/distro/distro.go
|
||||
+++ b/internal/distro/distro.go
|
||||
@@ -44,6 +44,7 @@ var (
|
||||
mdadmCmd = "mdadm"
|
||||
mountCmd = "mount"
|
||||
sgdiskCmd = "sgdisk"
|
||||
+ partprobeCmd = "partprobe"
|
||||
modprobeCmd = "modprobe"
|
||||
udevadmCmd = "udevadm"
|
||||
usermodCmd = "usermod"
|
||||
@@ -103,6 +104,7 @@ func GroupdelCmd() string { return groupdelCmd }
|
||||
func MdadmCmd() string { return mdadmCmd }
|
||||
func MountCmd() string { return mountCmd }
|
||||
func SgdiskCmd() string { return sgdiskCmd }
|
||||
+func PartprobeCmd() string { return partprobeCmd }
|
||||
func ModprobeCmd() string { return modprobeCmd }
|
||||
func UdevadmCmd() string { return udevadmCmd }
|
||||
func UsermodCmd() string { return usermodCmd }
|
||||
diff --git a/internal/sgdisk/sgdisk.go b/internal/sgdisk/sgdisk.go
|
||||
index 136aca67..5f9d399a 100644
|
||||
--- a/internal/sgdisk/sgdisk.go
|
||||
+++ b/internal/sgdisk/sgdisk.go
|
||||
@@ -121,6 +121,11 @@ func (op *Operation) Commit() error {
|
||||
if _, err := op.logger.LogCmd(cmd, "deleting %d partitions and creating %d partitions on %q", len(op.deletions), len(op.parts), op.dev); err != nil {
|
||||
return fmt.Errorf("create partitions failed: %v", err)
|
||||
}
|
||||
+ // In contrast to similar tools, sgdisk does not trigger the update of the kernel partition table
|
||||
+ cmd = exec.Command(distro.PartprobeCmd(), op.dev)
|
||||
+ if _, err := op.logger.LogCmd(cmd, "re-reading of %d deleted partitions and %d created partitions on %q", len(op.deletions), len(op.parts), op.dev); err != nil {
|
||||
+ return fmt.Errorf("re-reading partitions failed: %v", err)
|
||||
+ }
|
||||
|
||||
return nil
|
||||
}
|
||||
--
|
||||
2.43.2
|
||||
|
@ -1,48 +0,0 @@
|
||||
From c39e78052f563bbbf6ed47c4ddab597562effe87 Mon Sep 17 00:00:00 2001
|
||||
From: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
|
||||
Date: Mon, 24 Jun 2024 16:38:09 +0200
|
||||
Subject: [PATCH] akamai: fix base64 decoding
|
||||
|
||||
trailing \x00 character was making Ignition to fail parsing the config.
|
||||
It is not always the case, that is why we did not catch it earlier: when
|
||||
there is no padding in the base64 payload, everything was working.
|
||||
|
||||
https://pkg.go.dev/encoding/base64#Encoding.Decode
|
||||
|
||||
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
|
||||
---
|
||||
docs/release-notes.md | 1 +
|
||||
internal/providers/akamai/akamai.go | 5 +++--
|
||||
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/docs/release-notes.md b/docs/release-notes.md
|
||||
index a73ea2a7c..c2a35dca9 100644
|
||||
--- a/docs/release-notes.md
|
||||
+++ b/docs/release-notes.md
|
||||
@@ -14,6 +14,7 @@ nav_order: 9
|
||||
|
||||
### Bug fixes
|
||||
|
||||
+- Fixed Akamai Ignition base64 decoding
|
||||
|
||||
## Ignition 2.19.0 (2024-06-05)
|
||||
|
||||
diff --git a/internal/providers/akamai/akamai.go b/internal/providers/akamai/akamai.go
|
||||
index c7debf3b1..648be3bee 100644
|
||||
--- a/internal/providers/akamai/akamai.go
|
||||
+++ b/internal/providers/akamai/akamai.go
|
||||
@@ -86,11 +86,12 @@ func fetchConfig(f *resource.Fetcher) (types.Config, report.Report, error) {
|
||||
// The Linode Metadata Service requires userdata to be base64-encoded
|
||||
// when it is uploaded, so we will have to decode the response.
|
||||
data := make([]byte, base64.StdEncoding.DecodedLen(len(encoded)))
|
||||
- if _, err := base64.StdEncoding.Decode(data, encoded); err != nil {
|
||||
+ n, err := base64.StdEncoding.Decode(data, encoded)
|
||||
+ if err != nil {
|
||||
return types.Config{}, report.Report{}, fmt.Errorf("decode base64: %w", err)
|
||||
}
|
||||
|
||||
- return util.ParseConfig(f.Logger, data)
|
||||
+ return util.ParseConfig(f.Logger, data[:n])
|
||||
}
|
||||
|
||||
// defaultTokenTTL is the time-to-live (TTL; in seconds) for an authorization
|
@ -60,8 +60,6 @@ PATCHES=(
|
||||
"${FILESDIR}/0018-docs-Add-re-added-platforms-to-docs-to-pass-tests.patch"
|
||||
"${FILESDIR}/0019-usr-share-oem-oem.patch"
|
||||
"${FILESDIR}/0020-internal-exec-stages-mount-Mount-oem.patch"
|
||||
"${FILESDIR}/0021-sgdisk-Run-partprobe-after-partition-changes.patch"
|
||||
"${FILESDIR}/0022-akamai-fix-base64-decoding.patch"
|
||||
)
|
||||
|
||||
src_compile() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user