mirror of
https://github.com/juanfont/headscale.git
synced 2024-11-30 02:43:05 +00:00
Show namespace in node list table
This commit is contained in:
parent
4ba107a765
commit
d86de68b40
1 changed files with 17 additions and 4 deletions
|
@ -79,6 +79,12 @@ var listNodesCmd = &cobra.Command{
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Error initializing: %s", err)
|
log.Fatalf("Error initializing: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ns, err := h.GetNamespace(n)
|
||||||
|
if err != nil {
|
||||||
|
log.Fatalf("Error fetching namespace: %s", err)
|
||||||
|
}
|
||||||
|
|
||||||
machines, err := h.ListMachinesInNamespace(n)
|
machines, err := h.ListMachinesInNamespace(n)
|
||||||
if strings.HasPrefix(o, "json") {
|
if strings.HasPrefix(o, "json") {
|
||||||
JsonOutput(machines, err, o)
|
JsonOutput(machines, err, o)
|
||||||
|
@ -89,7 +95,7 @@ var listNodesCmd = &cobra.Command{
|
||||||
log.Fatalf("Error getting nodes: %s", err)
|
log.Fatalf("Error getting nodes: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
d, err := nodesToPtables(*machines)
|
d, err := nodesToPtables(*ns, *machines)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Error converting to table: %s", err)
|
log.Fatalf("Error converting to table: %s", err)
|
||||||
}
|
}
|
||||||
|
@ -145,8 +151,8 @@ var deleteNodeCmd = &cobra.Command{
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
func nodesToPtables(m []headscale.Machine) (pterm.TableData, error) {
|
func nodesToPtables(currNs headscale.Namespace, m []headscale.Machine) (pterm.TableData, error) {
|
||||||
d := pterm.TableData{{"ID", "Name", "NodeKey", "IP address", "Ephemeral", "Last seen", "Online"}}
|
d := pterm.TableData{{"ID", "Name", "NodeKey", "Namespace", "IP address", "Ephemeral", "Last seen", "Online"}}
|
||||||
|
|
||||||
for _, m := range m {
|
for _, m := range m {
|
||||||
var ephemeral bool
|
var ephemeral bool
|
||||||
|
@ -169,7 +175,14 @@ func nodesToPtables(m []headscale.Machine) (pterm.TableData, error) {
|
||||||
} else {
|
} else {
|
||||||
online = pterm.LightRed("false")
|
online = pterm.LightRed("false")
|
||||||
}
|
}
|
||||||
d = append(d, []string{strconv.FormatUint(m.ID, 10), m.Name, nodeKey.ShortString(), m.IPAddress, strconv.FormatBool(ephemeral), lastSeen.Format("2006-01-02 15:04:05"), online})
|
|
||||||
|
var namespace string
|
||||||
|
if currNs.ID == m.NamespaceID {
|
||||||
|
namespace = pterm.LightMagenta(m.Namespace.Name)
|
||||||
|
} else {
|
||||||
|
namespace = pterm.LightYellow(currNs.Name)
|
||||||
|
}
|
||||||
|
d = append(d, []string{strconv.FormatUint(m.ID, 10), m.Name, nodeKey.ShortString(), namespace, m.IPAddress, strconv.FormatBool(ephemeral), lastSeen.Format("2006-01-02 15:04:05"), online})
|
||||||
}
|
}
|
||||||
return d, nil
|
return d, nil
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue