Skip to content

Commit

Permalink
Merge pull request #138 from masnax/refactor
Browse files Browse the repository at this point in the history
Reorganize init configuration
  • Loading branch information
tomponline authored Sep 18, 2023
2 parents f475486 + 323b25d commit c3a3820
Show file tree
Hide file tree
Showing 13 changed files with 855 additions and 673 deletions.
6 changes: 3 additions & 3 deletions microcloud/api/services.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ var ServicesCmd = func(sh *service.Handler) rest.Endpoint {
}

// servicesPut updates the cluster status of the MicroCloud peer.
func servicesPut(s *state.State, r *http.Request) response.Response {
func servicesPut(state *state.State, r *http.Request) response.Response {
// Parse the request.
req := types.ServicesPut{}

Expand All @@ -78,13 +78,13 @@ func servicesPut(s *state.State, r *http.Request) response.Response {
addr = req.Address
}

sh, err := service.NewHandler(s.Name(), addr, s.OS.StateDir, false, false, services...)
sh, err := service.NewHandler(state.Name(), addr, state.OS.StateDir, false, false, services...)
if err != nil {
return response.SmartError(err)
}

err = sh.RunConcurrent(true, true, func(s service.Service) error {
err = s.Join(joinConfigs[s.Type()])
err = s.Join(state.Context, joinConfigs[s.Type()])
if err != nil {
return fmt.Errorf("Failed to join %q cluster: %w", s.Type(), err)
}
Expand Down
18 changes: 7 additions & 11 deletions microcloud/cmd/microcloud/add.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ func (c *cmdAdd) Run(cmd *cobra.Command, args []string) error {
return fmt.Errorf("MicroCloud is uninitialized, run 'microcloud init' first")
}

addr, subnet, err := askAddress(c.flagAutoSetup, status.Address.Addr().String())
addr, subnet, err := c.common.askAddress(c.flagAutoSetup, status.Address.Addr().String())
if err != nil {
return err
}
Expand All @@ -62,7 +62,7 @@ func (c *cmdAdd) Run(cmd *cobra.Command, args []string) error {
types.MicroOVN: api.MicroOVNDir,
}

services, err = askMissingServices(services, optionalServices, c.flagAutoSetup)
services, err = c.common.askMissingServices(services, optionalServices, c.flagAutoSetup)
if err != nil {
return err
}
Expand All @@ -72,25 +72,21 @@ func (c *cmdAdd) Run(cmd *cobra.Command, args []string) error {
return err
}

peers, err := lookupPeers(s, c.flagAutoSetup, subnet)
systems := map[string]InitSystem{}
err = lookupPeers(s, c.flagAutoSetup, subnet, systems)
if err != nil {
return err
}

lxdConfig, cephDisks, err := askDisks(s, peers, false, c.flagAutoSetup, c.flagWipe)
err = c.common.askDisks(s, systems, c.flagAutoSetup, c.flagWipe)
if err != nil {
return err
}

uplinkNetworks, networkConfig, err := askNetwork(s, peers, lxdConfig, false, c.flagAutoSetup)
err = c.common.askNetwork(s, systems, c.flagAutoSetup)
if err != nil {
return err
}

err = AddPeers(s, peers, lxdConfig, cephDisks)
if err != nil {
return err
}

return postClusterSetup(false, s, peers, lxdConfig, cephDisks, uplinkNetworks, networkConfig)
return setupCluster(s, systems)
}
Loading

0 comments on commit c3a3820

Please sign in to comment.