Skip to content

Commit

Permalink
add NodeList method
Browse files Browse the repository at this point in the history
returns all nodes, including the ones in the node store
  • Loading branch information
djelusic committed Mar 10, 2022
1 parent 8523c05 commit c16e9cf
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 3 deletions.
8 changes: 6 additions & 2 deletions cli/controller/aws.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,15 @@ func Nodes() error {
if err != nil {
return log.Wrap(err)
}
if len(fs.Workspace().Nodes) == 0 {
nodes, err := fs.Workspace().NodeList()
if err != nil {
return err
}
if len(nodes) == 0 {
return log.Wrap(&domain.WorkspaceNoNodesError{})
}
var data [][]string
for _, n := range fs.Workspace().Nodes {
for _, n := range nodes {
data = append(data, []string{n.Name, n.AccountID, n.Region, n.ID, n.Version})
}
ShowTable([]string{"name", "AWS Account", "AWS Region", "ID", "Version"}, data)
Expand Down
6 changes: 5 additions & 1 deletion cli/controller/stage.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,11 @@ func (s *Stage) New() (bool, error) {
}

// make sure there are nodes available for stage to be created on
if len(s.store.Workspace().Nodes) == 0 {
nodes, err := s.store.Workspace().NodeList()
if err != nil {
return false, log.Wrap(err)
}
if len(nodes) == 0 {
return false, log.Wrap(&domain.WorkspaceNoNodesError{})

}
Expand Down
12 changes: 12 additions & 0 deletions domain/workspace.go
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,18 @@ func (w *Workspace) FindNode(name string) *Node {
return w.Node(name)
}

func (w *Workspace) NodeList() ([]*Node, error) {
ns := w.Nodes
for _, ne := range w.NodeStore.Nodes {
n, err := w.NodeStore.Node(ne.Name)
if err != nil {
return nil, err
}
ns = append(ns, n)
}
return ns, nil
}

func (w *Workspace) NodeNames() []string {
var names []string
for _, n := range w.Nodes {
Expand Down

0 comments on commit c16e9cf

Please sign in to comment.