Reuse GetClusterRegInfo from mc (#3270)

This commit is contained in:
Shireesh Anjal
2024-04-01 21:44:54 +05:30
committed by GitHub
parent 78a05d39c4
commit 3aac62cc81
4 changed files with 10 additions and 173 deletions

6
go.mod
View File

@@ -21,8 +21,8 @@ require (
github.com/minio/cli v1.24.2
github.com/minio/highwayhash v1.0.2
github.com/minio/kes v0.23.0
github.com/minio/madmin-go/v3 v3.0.49
github.com/minio/mc v0.0.0-20240309064306-1ec55a5178d7
github.com/minio/madmin-go/v3 v3.0.50-0.20240307075442-63b4fc3ac1fd
github.com/minio/mc v0.0.0-20240320210729-9043bbf545d2
github.com/minio/minio-go/v7 v7.0.69
github.com/minio/selfupdate v0.6.0
github.com/minio/websocket v1.6.0
@@ -43,7 +43,7 @@ require (
require (
github.com/mattn/go-ieproxy v0.0.11
github.com/minio/pkg/v2 v2.0.11
github.com/minio/pkg/v2 v2.0.13
)
require (

12
go.sum
View File

@@ -184,18 +184,18 @@ github.com/minio/kes v0.23.0 h1:T0zHtyDoI3JdKrVvzdM4xwVryYYyh5pKwNUVBoqxsNs=
github.com/minio/kes v0.23.0/go.mod h1:vvXVGcgu9mYLkbVWlEvFFl6bYR196RQlOU2Q+rHApl8=
github.com/minio/kes-go v0.2.1 h1:KnqS+p6xoSFJZbQhmJaz/PbxeA6nQyRqT/ywrn5lU2o=
github.com/minio/kes-go v0.2.1/go.mod h1:76xf7l41Wrh+IifisABXK2S8uZWYgWV1IGBKC3GdOJk=
github.com/minio/madmin-go/v3 v3.0.49 h1:Ag5eyYUf9K1MvW9hiErEJhGfqlf//pOtlhdoepb9AwY=
github.com/minio/madmin-go/v3 v3.0.49/go.mod h1:ZDF7kf5fhmxLhbGTqyq5efs4ao0v4eWf7nOuef/ljJs=
github.com/minio/mc v0.0.0-20240309064306-1ec55a5178d7 h1:3Lk0uBbXaJBtEzDi0quc2x3FdChHOiOQNdM0+L6OhJ8=
github.com/minio/mc v0.0.0-20240309064306-1ec55a5178d7/go.mod h1:p7FcVMk9MTua2cxr1vkajPj46M1PQ5u4FQQ2UI5ZtwU=
github.com/minio/madmin-go/v3 v3.0.50-0.20240307075442-63b4fc3ac1fd h1:oZycRrLgzEg4+lGZ5Tkua3BKvK7rOtDlmoOR3gq58l4=
github.com/minio/madmin-go/v3 v3.0.50-0.20240307075442-63b4fc3ac1fd/go.mod h1:ZDF7kf5fhmxLhbGTqyq5efs4ao0v4eWf7nOuef/ljJs=
github.com/minio/mc v0.0.0-20240320210729-9043bbf545d2 h1:zF4kiN6HJp4B5IFp+riDA8roY0r+UJV0RvaaVitchH4=
github.com/minio/mc v0.0.0-20240320210729-9043bbf545d2/go.mod h1:YgeY0RTYvbm/H6Gzwb+rpRsQ/XREi3NwITZUcTNATOQ=
github.com/minio/md5-simd v1.1.2 h1:Gdi1DZK69+ZVMoNHRXJyNcxrMA4dSxoYHZSQbirFg34=
github.com/minio/md5-simd v1.1.2/go.mod h1:MzdKDxYpY2BT9XQFocsiZf/NKVtR7nkE4RoEpN+20RM=
github.com/minio/minio-go/v7 v7.0.69 h1:l8AnsQFyY1xiwa/DaQskY4NXSLA2yrGsW5iD9nRPVS0=
github.com/minio/minio-go/v7 v7.0.69/go.mod h1:XAvOPJQ5Xlzk5o3o/ArO2NMbhSGkimC+bpW/ngRKDmQ=
github.com/minio/mux v1.9.0 h1:dWafQFyEfGhJvK6AwLOt83bIG5bxKxKJnKMCi0XAaoA=
github.com/minio/mux v1.9.0/go.mod h1:1pAare17ZRL5GpmNL+9YmqHoWnLmMZF9C/ioUCfy0BQ=
github.com/minio/pkg/v2 v2.0.11 h1:nlFoFrnwBaNNtVmJJBJ+t1Nzp4jbPzyqdVuc7t9clcQ=
github.com/minio/pkg/v2 v2.0.11/go.mod h1:zbVATXCinLCo+L/4vsPyqgiA4OYPXCJb+/E4KfE396A=
github.com/minio/pkg/v2 v2.0.13 h1:Tm4koPzm+gVVCU5YLPtzXzfwkCR5sd/asXCu/RABSeA=
github.com/minio/pkg/v2 v2.0.13/go.mod h1:zbVATXCinLCo+L/4vsPyqgiA4OYPXCJb+/E4KfE396A=
github.com/minio/selfupdate v0.6.0 h1:i76PgT0K5xO9+hjzKcacQtO7+MjJ4JKA8Ak8XQ9DDwU=
github.com/minio/selfupdate v0.6.0/go.mod h1:bO02GTIPCMQFTEvE5h4DjYB58bCoZ35XLeBf0buTDdM=
github.com/minio/sha256-simd v1.0.1 h1:6kaan5IFmwTNynnKKpDHe6FWHohJOHhCPchzK49dzMM=

View File

@@ -204,44 +204,7 @@ func subnetPostReq(client xhttp.ClientI, reqURL string, payload interface{}, hea
}
func GetClusterRegInfo(admInfo madmin.InfoMessage) mc.ClusterRegistrationInfo {
noOfPools := 1
noOfDrives := 0
for _, srvr := range admInfo.Servers {
if srvr.PoolNumber > noOfPools {
noOfPools = srvr.PoolNumber
}
noOfDrives += len(srvr.Disks)
}
totalSpace, usedSpace := getDriveSpaceInfo(admInfo)
return mc.ClusterRegistrationInfo{
DeploymentID: admInfo.DeploymentID,
ClusterName: admInfo.DeploymentID,
UsedCapacity: admInfo.Usage.Size,
Info: mc.ClusterInfo{
MinioVersion: admInfo.Servers[0].Version,
NoOfServerPools: noOfPools,
NoOfServers: len(admInfo.Servers),
NoOfDrives: noOfDrives,
TotalDriveSpace: totalSpace,
UsedDriveSpace: usedSpace,
NoOfBuckets: admInfo.Buckets.Count,
NoOfObjects: admInfo.Objects.Count,
},
}
}
func getDriveSpaceInfo(admInfo madmin.InfoMessage) (uint64, uint64) {
total := uint64(0)
used := uint64(0)
for _, srvr := range admInfo.Servers {
for _, d := range srvr.Disks {
total += d.TotalSpace
used += d.UsedSpace
}
}
return total, used
return mc.GetClusterRegInfo(admInfo, admInfo.DeploymentID)
}
func GetSubnetAPIKeyUsingLicense(lic string) (string, error) {

View File

@@ -21,7 +21,6 @@ import (
"reflect"
"testing"
"github.com/minio/madmin-go/v3"
"github.com/minio/mc/cmd"
)
@@ -480,128 +479,3 @@ func Test_subnetAuthHeaders(t *testing.T) {
})
}
}
func Test_getDriveSpaceInfo(t *testing.T) {
type args struct {
admInfo madmin.InfoMessage
}
tests := []struct {
name string
args args
want uint64
want1 uint64
}{
{
name: "basic",
args: args{
admInfo: madmin.InfoMessage{
Servers: []madmin.ServerProperties{
{
Disks: []madmin.Disk{
{
TotalSpace: 1,
UsedSpace: 1,
},
},
},
},
},
},
want: 1,
want1: 1,
},
{
name: "basic two disks",
args: args{
admInfo: madmin.InfoMessage{
Servers: []madmin.ServerProperties{
{
Disks: []madmin.Disk{
{
TotalSpace: 1,
UsedSpace: 1,
},
{
TotalSpace: 1,
UsedSpace: 1,
},
},
},
},
},
},
want: 2,
want1: 2,
},
{
name: "basic two servers two disks",
args: args{
admInfo: madmin.InfoMessage{
Servers: []madmin.ServerProperties{
{
Disks: []madmin.Disk{
{
TotalSpace: 1,
UsedSpace: 1,
},
{
TotalSpace: 1,
UsedSpace: 1,
},
},
},
{
Disks: []madmin.Disk{
{
TotalSpace: 1,
UsedSpace: 1,
},
{
TotalSpace: 1,
UsedSpace: 1,
},
},
},
},
},
},
want: 4,
want1: 4,
},
{
name: "no servers",
args: args{
admInfo: madmin.InfoMessage{
Servers: nil,
},
},
want: 0,
want1: 0,
},
{
name: "no disks",
args: args{
admInfo: madmin.InfoMessage{
Servers: []madmin.ServerProperties{
{
Disks: nil,
},
},
},
},
want: 0,
want1: 0,
},
}
for _, tt := range tests {
t.Run(tt.name, func(_ *testing.T) {
got, got1 := getDriveSpaceInfo(tt.args.admInfo)
if got != tt.want {
t.Errorf("getDriveSpaceInfo() got = %v, want %v", got, tt.want)
}
if got1 != tt.want1 {
t.Errorf("getDriveSpaceInfo() got1 = %v, want %v", got1, tt.want1)
}
})
}
}