diff --git a/cmd/bootstrap-peer-server.go b/cmd/bootstrap-peer-server.go index 4e213184c..f35b44e1d 100644 --- a/cmd/bootstrap-peer-server.go +++ b/cmd/bootstrap-peer-server.go @@ -25,7 +25,6 @@ import ( "net/http" "net/url" "reflect" - "runtime" "time" "github.com/gorilla/mux" @@ -53,24 +52,22 @@ type bootstrapRESTServer struct{} // ServerSystemConfig - captures information about server configuration. type ServerSystemConfig struct { - MinioPlatform string MinioEndpoints EndpointServerPools MinioEnv map[string]string } // Diff - returns error on first difference found in two configs. func (s1 ServerSystemConfig) Diff(s2 ServerSystemConfig) error { - if s1.MinioPlatform != s2.MinioPlatform { - return fmt.Errorf("Expected platform '%s', found to be running '%s'", - s1.MinioPlatform, s2.MinioPlatform) - } - if s1.MinioEndpoints.NEndpoints() != s2.MinioEndpoints.NEndpoints() { return fmt.Errorf("Expected number of endpoints %d, seen %d", s1.MinioEndpoints.NEndpoints(), s2.MinioEndpoints.NEndpoints()) } for i, ep := range s1.MinioEndpoints { + if ep.CmdLine != s2.MinioEndpoints[i].CmdLine { + return fmt.Errorf("Expected command line argument %s, seen %s", ep.CmdLine, + s2.MinioEndpoints[i].CmdLine) + } if ep.SetCount != s2.MinioEndpoints[i].SetCount { return fmt.Errorf("Expected set count %d, seen %d", ep.SetCount, s2.MinioEndpoints[i].SetCount) @@ -79,11 +76,9 @@ func (s1 ServerSystemConfig) Diff(s2 ServerSystemConfig) error { return fmt.Errorf("Expected drives pet set %d, seen %d", ep.DrivesPerSet, s2.MinioEndpoints[i].DrivesPerSet) } - for j, endpoint := range ep.Endpoints { - if endpoint.String() != s2.MinioEndpoints[i].Endpoints[j].String() { - return fmt.Errorf("Expected endpoint %s, seen %s", endpoint, - s2.MinioEndpoints[i].Endpoints[j]) - } + if ep.Platform != s2.MinioEndpoints[i].Platform { + return fmt.Errorf("Expected platform '%s', found to be on '%s'", + ep.Platform, s2.MinioEndpoints[i].Platform) } } if !reflect.DeepEqual(s1.MinioEnv, s2.MinioEnv) { @@ -126,7 +121,6 @@ func getServerSystemCfg() ServerSystemConfig { envValues[envK] = env.Get(envK, "") } return ServerSystemConfig{ - MinioPlatform: fmt.Sprintf("OS: %s | Arch: %s", runtime.GOOS, runtime.GOARCH), MinioEndpoints: globalEndpoints, MinioEnv: envValues, } @@ -232,7 +226,7 @@ func verifyServerSystemConfig(ctx context.Context, endpointServerPools EndpointS logger.Info(fmt.Sprintf("Following servers are currently offline or unreachable %s", offlineEndpoints)) } if len(incorrectConfigs) > 0 { - logger.Info(fmt.Sprintf("Following servers mismatch in their configuration %s", incorrectConfigs)) + logger.Info(fmt.Sprintf("Following servers have mismatching configuration %s", incorrectConfigs)) } retries = 0 // reset to log again after 5 retries. } diff --git a/cmd/endpoint-ellipses.go b/cmd/endpoint-ellipses.go index ee5e77dec..c8f4a990a 100644 --- a/cmd/endpoint-ellipses.go +++ b/cmd/endpoint-ellipses.go @@ -19,6 +19,7 @@ package cmd import ( "fmt" + "runtime" "sort" "strconv" "strings" @@ -364,6 +365,7 @@ func createServerEndpoints(serverAddr string, args ...string) ( DrivesPerSet: len(setArgs[0]), Endpoints: endpointList, CmdLine: strings.Join(args, " "), + Platform: fmt.Sprintf("OS: %s | Arch: %s", runtime.GOOS, runtime.GOARCH), }) setupType = newSetupType return endpointServerPools, setupType, nil @@ -389,6 +391,7 @@ func createServerEndpoints(serverAddr string, args ...string) ( DrivesPerSet: len(setArgs[0]), Endpoints: endpointList, CmdLine: arg, + Platform: fmt.Sprintf("OS: %s | Arch: %s", runtime.GOOS, runtime.GOARCH), }); err != nil { return nil, -1, err } diff --git a/cmd/endpoint.go b/cmd/endpoint.go index e5cbe262d..0ca2aba30 100644 --- a/cmd/endpoint.go +++ b/cmd/endpoint.go @@ -203,6 +203,7 @@ type PoolEndpoints struct { DrivesPerSet int Endpoints Endpoints CmdLine string + Platform string } // EndpointServerPools - list of list of endpoints