From 1492061ab8161d4c56c151d4b962a18d86e6dacf Mon Sep 17 00:00:00 2001 From: Alejandro Mery Date: Sat, 28 Oct 2023 20:42:16 +0000 Subject: [PATCH] jpictl: create machine directories on `jpictl write` Signed-off-by: Alejandro Mery --- pkg/cluster/sync.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkg/cluster/sync.go b/pkg/cluster/sync.go index ded0abb..7f0dd8b 100644 --- a/pkg/cluster/sync.go +++ b/pkg/cluster/sync.go @@ -3,6 +3,7 @@ package cluster // SyncAll updates all config files func (m *Cluster) SyncAll() error { for _, fn := range []func() error{ + m.SyncMkdirAll, m.SyncAllWireguard, m.SyncAllCeph, m.WriteHosts, @@ -15,6 +16,20 @@ func (m *Cluster) SyncAll() error { return nil } +// SyncMkdirAll creates the directories needed to store files +// required to represent the cluster. +func (m *Cluster) SyncMkdirAll() error { + err := m.MkdirAll(".") + if err == nil { + m.ForEachMachine(func(p *Machine) bool { + err = p.MkdirAll(".") + return err != nil + }) + } + + return err +} + // SyncAllWireguard updates all wireguard config files func (m *Cluster) SyncAllWireguard() error { var err error