diff --git a/charts/talm/templates/_helpers.tpl b/charts/talm/templates/_helpers.tpl index f1a9601..0876fb2 100644 --- a/charts/talm/templates/_helpers.tpl +++ b/charts/talm/templates/_helpers.tpl @@ -1,14 +1,7 @@ {{- define "talm.discovered.system_disk_name" }} -{{- $disk := "" }} -{{- range .Disks }} -{{- if eq $disk "" }} -{{- $disk = .device_name }} +{{- with (lookup "systemdisk" "" "system-disk") }} +{{ .spec.devPath }} {{- end }} -{{- if .system_disk }} -{{- $disk = .device_name }} -{{- end }} -{{- end }} -{{- $disk }} {{- end }} {{- define "talm.discovered.machinetype" }} @@ -23,28 +16,17 @@ {{- define "talm.discovered.disks_info" }} # -- Discovered disks: -{{- range .Disks }} -{{- if .wwid }} -# {{ .device_name }}: -# model: {{ .model }} -# serial: {{ .serial }} -# wwid: {{ .wwid }} -# size: {{ include "talm.human_size" .size }} +{{- range (lookup "disks" "" "").items }} +{{- if .spec.wwid }} +# {{ .spec.dev_path }}: +# model: {{ .spec.model }} +# serial: {{ .spec.serial }} +# wwid: {{ .spec.wwid }} +# size: {{ .spec.pretty_size }} {{- end }} {{- end }} {{- end }} -{{- define "talm.human_size" }} - {{- $bytes := int64 . }} - {{- if lt $bytes 1048576 }} - {{- printf "%.2f MB" (divf $bytes 1048576.0) }} - {{- else if lt $bytes 1073741824 }} - {{- printf "%.2f GB" (divf $bytes 1073741824.0) }} - {{- else }} - {{- printf "%.2f TB" (divf $bytes 1099511627776.0) }} - {{- end }} -{{- end }} - {{- define "talm.discovered.default_addresses" }} {{- with (lookup "nodeaddress" "" "default") }} {{- toJson .spec.addresses }} diff --git a/pkg/engine/engine.go b/pkg/engine/engine.go index 183d18f..2e9311e 100644 --- a/pkg/engine/engine.go +++ b/pkg/engine/engine.go @@ -151,28 +151,6 @@ func Render(ctx context.Context, c *client.Client, opts Options) ([]byte, error) if err := helpers.FailIfMultiNodes(ctx, "talm template"); err != nil { return nil, err } - - response, err := c.Disks(ctx) - if err != nil { - if response == nil { - return nil, fmt.Errorf("error getting disks: %w", err) - } - } - for _, m := range response.Messages { - for _, d := range m.Disks { - dj, err := json.Marshal(d) - if err != nil { - return nil, err - } - var disk map[string]interface{} - err = json.Unmarshal(dj, &disk) - if err != nil { - return nil, err - } - helmEngine.Disks[d.DeviceName] = disk - } - } - helmEngine.LookupFunc = newLookupFunction(ctx, c) } diff --git a/pkg/generated/presets.go b/pkg/generated/presets.go index ab2a109..b03008a 100644 --- a/pkg/generated/presets.go +++ b/pkg/generated/presets.go @@ -224,16 +224,9 @@ version: %s description: A library Talm chart for Talos Linux `, "talm/templates/_helpers.tpl": `{{- define "talm.discovered.system_disk_name" }} -{{- $disk := "" }} -{{- range .Disks }} -{{- if eq $disk "" }} -{{- $disk = .device_name }} +{{- with (lookup "systemdisk" "" "system-disk") }} +{{ .spec.devPath }} {{- end }} -{{- if .system_disk }} -{{- $disk = .device_name }} -{{- end }} -{{- end }} -{{- $disk }} {{- end }} {{- define "talm.discovered.machinetype" }} @@ -248,26 +241,15 @@ description: A library Talm chart for Talos Linux {{- define "talm.discovered.disks_info" }} # -- Discovered disks: -{{- range .Disks }} -{{- if .wwid }} -# {{ .device_name }}: -# model: {{ .model }} -# serial: {{ .serial }} -# wwid: {{ .wwid }} -# size: {{ include "talm.human_size" .size }} -{{- end }} +{{- range (lookup "disks" "" "").items }} +{{- if .spec.wwid }} +# {{ .spec.dev_path }}: +# model: {{ .spec.model }} +# serial: {{ .spec.serial }} +# wwid: {{ .spec.wwid }} +# size: {{ .spec.pretty_size }} {{- end }} {{- end }} - -{{- define "talm.human_size" }} - {{- $bytes := int64 . }} - {{- if lt $bytes 1048576 }} - {{- printf "%.2f MB" (divf $bytes 1048576.0) }} - {{- else if lt $bytes 1073741824 }} - {{- printf "%.2f GB" (divf $bytes 1073741824.0) }} - {{- else }} - {{- printf "%.2f TB" (divf $bytes 1099511627776.0) }} - {{- end }} {{- end }} {{- define "talm.discovered.default_addresses" }}