Compare commits

...

3 Commits

Author SHA1 Message Date
amery f1e06b031b jpictl: initial env command [WIP]
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-22 02:01:10 +00:00
amery 2474fb534f zones: WriteEnv() [WIP]
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-22 02:01:10 +00:00
amery 06e755ecd2 zones: scan for Machine details after they've all been added
Signed-off-by: Alejandro Mery <amery@jpi.io>
2023-08-22 02:01:00 +00:00
4 changed files with 51 additions and 5 deletions
+27
View File
@@ -0,0 +1,27 @@
package main
import (
"os"
"github.com/spf13/cobra"
"git.jpi.io/amery/jpictl/pkg/zones"
)
// Command
var envCmd = &cobra.Command{
Use: "env",
Short: "generates environment variables for shell scripts",
RunE: func(_ *cobra.Command, _ []string) error {
m, err := zones.New(cfg.Base, cfg.Domain)
if err != nil {
return err
}
return m.WriteEnv(os.Stdout)
},
}
func init() {
rootCmd.AddCommand(envCmd)
}
+9
View File
@@ -0,0 +1,9 @@
// Package zones abstracts the cluster zones
package zones
import "io"
// WriteEnv generates environment variables for shell scripts
func (*Zones) WriteEnv(io.Writer) error {
return nil
}
+4
View File
@@ -24,3 +24,7 @@ func (m *Machine) updatePublicAddresses() error {
m.PublicAddresses = addrs
return nil
}
func (m *Machine) scan() error {
return m.updatePublicAddresses()
}
+11 -5
View File
@@ -43,13 +43,19 @@ func (z *Zone) scan() error {
Name: e.Name(),
}
if err := m.updatePublicAddresses(); err != nil {
return err
}
z.Machines = append(z.Machines, m)
}
}
return nil
return z.scanMachines()
}
func (z *Zone) scanMachines() error {
var err error
z.zones.ForEachMachine(func(m *Machine) {
if err == nil {
err = m.scan()
}
})
return err
}