Fix newline handling in file, softlink, and ImportLink template functions

Use state-based routing instead of sentinel strings, so whitespace-trimming
syntax (e.g. `{{- file "name" -}}`) correctly creates all named files and
symlinks.

Fixes: #2118

Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Co-authored-by: Christian Goll <cgoll@suse.com>
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
This commit is contained in:
Jonathon Anderson
2026-04-17 15:57:19 -06:00
parent eaac55a97a
commit 2bad789f4f
28 changed files with 767 additions and 256 deletions

View File

@@ -2,7 +2,7 @@
{{- range $fs := .ThisNode.FileSystemList }}
{{- if and $fs.Path (ne $fs.Format "swap") }}
{{- $abort = false }}
{{ file (print ($fs.Path | SystemdEscapePath) ".mount") }}
{{- file (print ($fs.Path | SystemdEscapePath) ".mount") -}}
[Unit]
Before=local-fs.target

View File

@@ -2,7 +2,7 @@
{{- range $fs := .ThisNode.FileSystemList }}
{{- if and $fs.Path (ne $fs.Format "swap") }}
{{- $abort = false }}
{{ file (print ($fs.Path | SystemdEscapePath) ".mount") }}
{{- file (print ($fs.Path | SystemdEscapePath) ".mount") -}}
{{ softlink (print "/etc/systemd/system/" ($fs.Path | SystemdEscapePath) ".mount") }}
{{- end }}
{{- end }}