From 7099b08db58b20d3f40c1fb131c3a81ceca09cff Mon Sep 17 00:00:00 2001 From: Jonathon Anderson Date: Sat, 16 Mar 2024 12:43:17 -0600 Subject: [PATCH] Replace slice in templates with sprig substr sprig replaces slice with a function that only operates on sprig lists. substr is required for use with strings. - Fixes: #1139 Signed-off-by: Jonathon Anderson --- CHANGELOG.md | 1 + .../etc/NetworkManager/system-connections/ww4-managed.ww | 2 +- overlays/wwinit/rootfs/etc/resolv.conf.ww | 2 +- overlays/wwinit/rootfs/etc/sysconfig/network-scripts/ifcfg.ww | 2 +- overlays/wwinit/rootfs/etc/systemd/system/ww4-disks.target.ww | 4 ++-- overlays/wwinit/rootfs/etc/systemd/system/ww4-mounts.ww | 2 +- 6 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8faff620..84181af4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 `/sys/firmware/devicetree/base/serial-number` - Fix `wwctl profile list -a` format when kernerargs are set - Fix a rendering bug in the documentation for GRUB boot support. #1132 +- Replace slice in templates with sprig substr. #1093 ## [4.5.0] 2024-02-08 diff --git a/overlays/wwinit/rootfs/etc/NetworkManager/system-connections/ww4-managed.ww b/overlays/wwinit/rootfs/etc/NetworkManager/system-connections/ww4-managed.ww index b8dc33eb..ea570d2e 100644 --- a/overlays/wwinit/rootfs/etc/NetworkManager/system-connections/ww4-managed.ww +++ b/overlays/wwinit/rootfs/etc/NetworkManager/system-connections/ww4-managed.ww @@ -67,7 +67,7 @@ gateway={{ $netdev.Gateway }} method=manual {{- $dns := "" }} {{range $tk, $tv := $netdev.Tags -}} -{{ $prefix := slice $tk 0 3 -}} +{{ $prefix := substr 0 3 $tk -}} {{ if eq $prefix "DNS" -}} {{ $dns = print $dns $tv ";" -}} {{ end -}} diff --git a/overlays/wwinit/rootfs/etc/resolv.conf.ww b/overlays/wwinit/rootfs/etc/resolv.conf.ww index f245b9e7..aecde584 100644 --- a/overlays/wwinit/rootfs/etc/resolv.conf.ww +++ b/overlays/wwinit/rootfs/etc/resolv.conf.ww @@ -7,7 +7,7 @@ # Source: {{ $source }} {{range $devname, $netdev := .NetDevs -}} {{range $tk, $tv := $netdev.Tags -}} -{{ $prefix := slice $tk 0 3 -}} +{{ $prefix := substr 0 3 $tk -}} {{ if eq $prefix "DNS" -}} nameserver {{ $tv }} {{ end -}} diff --git a/overlays/wwinit/rootfs/etc/sysconfig/network-scripts/ifcfg.ww b/overlays/wwinit/rootfs/etc/sysconfig/network-scripts/ifcfg.ww index 1f45ed1f..9e5cb983 100644 --- a/overlays/wwinit/rootfs/etc/sysconfig/network-scripts/ifcfg.ww +++ b/overlays/wwinit/rootfs/etc/sysconfig/network-scripts/ifcfg.ww @@ -38,7 +38,7 @@ IPV6_FAILURE_FATAL=no IPV6ADDR="{{ $netdev.Ipaddr6 }}" {{ end -}} {{range $tk, $tv := $netdev.Tags -}} -{{ $prefix := slice $tk 0 3 -}} +{{ $prefix := substr 0 3 $tk -}} {{ if eq $prefix "DNS" -}} {{ $tk }}={{ $tv }} {{ end -}} diff --git a/overlays/wwinit/rootfs/etc/systemd/system/ww4-disks.target.ww b/overlays/wwinit/rootfs/etc/systemd/system/ww4-disks.target.ww index 74f4e8ee..3d16437e 100644 --- a/overlays/wwinit/rootfs/etc/systemd/system/ww4-disks.target.ww +++ b/overlays/wwinit/rootfs/etc/systemd/system/ww4-disks.target.ww @@ -13,14 +13,14 @@ Requisite=ignition-ww4-disks.service {{- $prefix := $fsdevice }} {{- $prefix = replace "-" "\\x2d" $fsdevice }} {{- $prefix = replace "/" "-" $prefix }} -{{- $prefix = slice $prefix 1 }}{{ $suffix := "mount" }} +{{- $prefix = substr 1 -1 $prefix }}{{ $suffix := "mount" }} {{- if eq $fs.Format "swap"}} {{- $prefix = replace "/dev/disk/by-partlabel/" "dev-disk-by\\x2dpartlabel-" $fsdevice }}{{ $suffix = "swap"}} {{- else }} {{- if ne $fs.Path "" }} {{- $prefix = replace "-" "\\x2d" $fs.Path }} {{- $prefix = replace "/" "-" $prefix }} -{{- $prefix = slice $prefix 1 }} +{{- $prefix = substr 1 -1 $prefix }} {{- end }} {{- end }} Wants={{ print $prefix "." $suffix }} diff --git a/overlays/wwinit/rootfs/etc/systemd/system/ww4-mounts.ww b/overlays/wwinit/rootfs/etc/systemd/system/ww4-mounts.ww index d6343210..ad318012 100644 --- a/overlays/wwinit/rootfs/etc/systemd/system/ww4-mounts.ww +++ b/overlays/wwinit/rootfs/etc/systemd/system/ww4-mounts.ww @@ -4,7 +4,7 @@ {{- range $fsdevice,$fs := .FileSystems }} {{- $prefix := replace "-" "\\x2d" $fs.Path }} {{- $prefix = replace "/" "-" $prefix }} -{{- $prefix = slice $prefix 1 }} +{{- $prefix = substr 1 -1 $prefix }} {{ $suffix := "mount"}} {{- if $fs.Label }}{{ $prefix = $fs.Label }}{{ end }} {{- if eq $fs.Format "swap" }}{{ $prefix = replace "/dev/disk/by-partlabel/" "dev-disk-by\\x2dpartlabel-" $fsdevice }}{{ $suffix = "swap" }}{{ end }}