From 50ee480caf08be8acdb6f9bccee02357272ad234 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=C3=ABl=20Cluseau?= Date: Wed, 16 Oct 2019 16:46:04 +1100 Subject: [PATCH] dir2config: hosts_by_group returns maps --- cmd/dkl-dir2config/render-cluster.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/cmd/dkl-dir2config/render-cluster.go b/cmd/dkl-dir2config/render-cluster.go index 735a2ed..4b227e3 100644 --- a/cmd/dkl-dir2config/render-cluster.go +++ b/cmd/dkl-dir2config/render-cluster.go @@ -38,10 +38,10 @@ func clusterFuncs(clusterSpec *clustersconfig.Cluster) map[string]interface{} { return fmt.Sprintf("{{ ca_dir %q %q }}", cluster, name), nil }, - "hosts_by_group": func(group string) (hosts []*clustersconfig.Host) { + "hosts_by_group": func(group string) (hosts []interface{}) { for _, host := range src.Hosts { if host.Group == group { - hosts = append(hosts, host) + hosts = append(hosts, asMap(host)) } } @@ -60,6 +60,8 @@ func renderClusterTemplates(cluster *clustersconfig.Cluster, setName string, clusterAsMap["kubernetes_svc_ip"] = cluster.KubernetesSvcIP().String() clusterAsMap["dns_svc_ip"] = cluster.DNSSvcIP().String() + funcs := clusterFuncs(cluster) + log.Print("rendering cluster templates with ", clusterAsMap) buf := &bytes.Buffer{} @@ -67,7 +69,7 @@ func renderClusterTemplates(cluster *clustersconfig.Cluster, setName string, for _, t := range templates { log.Print("- template: ", setName, ": ", t.Name) fmt.Fprintf(buf, "---\n# %s: %s\n", setName, t.Name) - err := t.Execute(buf, clusterAsMap, clusterFuncs(cluster)) + err := t.Execute(buf, clusterAsMap, funcs) if err != nil { log.Fatalf("cluster %q: %s: failed to render %q: %v",