From 387e46e3865dae566634b1c8102a1b8729e98a3b Mon Sep 17 00:00:00 2001 From: Jonathan Lebon Date: Fri, 12 Jan 2024 15:10:38 -0500 Subject: [PATCH] 40ignition-ostree: avoid jq try-catch There seems to be a bug in jq 1.7 where `try .foo catch "" | ascii_downcase` now fails. It seems like jq implements short-circuiting boolean operators, so we can rework this to instead just use a simpler `and` operator. Reported-by: Gursewak Mangat --- .../modules.d/40ignition-ostree/ignition-ostree-transposefs.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/overlay.d/05core/usr/lib/dracut/modules.d/40ignition-ostree/ignition-ostree-transposefs.sh b/overlay.d/05core/usr/lib/dracut/modules.d/40ignition-ostree/ignition-ostree-transposefs.sh index 62fa977043..7bec45c936 100755 --- a/overlay.d/05core/usr/lib/dracut/modules.d/40ignition-ostree/ignition-ostree-transposefs.sh +++ b/overlay.d/05core/usr/lib/dracut/modules.d/40ignition-ostree/ignition-ostree-transposefs.sh @@ -36,7 +36,7 @@ query_fslabel() { # Print jq query string for partitions with type GUID $1 query_parttype() { - echo ".storage?.disks? // [] | map(.partitions?) | flatten | map(select(try .typeGuid catch \"\" | ascii_downcase == \"$1\"))" + echo ".storage?.disks? // [] | map(.partitions?) | flatten | map(select(has(\"typeGuid\") and (.typeGuid | ascii_downcase == \"$1\")))" } # Print partition labels for partitions with type GUID $1