Skip to content

Commit 06a5cc2

Browse files
feat: ESeries collector infrastructure (#4088)
1 parent 3b22cef commit 06a5cc2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+14321
-7
lines changed

cmd/collectors/discovery.go

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import (
66
"time"
77

88
ciscorest "github.com/netapp/harvest/v2/cmd/collectors/cisco/rest"
9+
eseriesrest "github.com/netapp/harvest/v2/cmd/collectors/eseries/rest"
910
sgrest "github.com/netapp/harvest/v2/cmd/collectors/storagegrid/rest"
1011
"github.com/netapp/harvest/v2/cmd/tools/rest"
1112
"github.com/netapp/harvest/v2/pkg/api/ontapi/zapi"
@@ -42,6 +43,10 @@ func GatherStorageGridInfo(pollerName string, cred *auth.Credentials) (conf.Remo
4243
return checkStorageGrid(pollerName, cred)
4344
}
4445

46+
func GatherEseriesInfo(pollerName string, cred *auth.Credentials) (conf.Remote, error) {
47+
return checkEseries(pollerName, cred)
48+
}
49+
4550
func MergeRemotes(remoteZapi conf.Remote, remoteRest conf.Remote, errZapi error, errRest error) (conf.Remote, error) {
4651
remoteRest.ZAPIsExist = remoteZapi.ZAPIsExist
4752
remoteRest.ZAPIsChecked = remoteZapi.ZAPIsChecked
@@ -184,3 +189,28 @@ func checkStorageGrid(pollerName string, cred *auth.Credentials) (conf.Remote, e
184189

185190
return client.Remote, nil
186191
}
192+
193+
func checkEseries(pollerName string, cred *auth.Credentials) (conf.Remote, error) {
194+
195+
var (
196+
poller *conf.Poller
197+
client *eseriesrest.Client
198+
err error
199+
)
200+
201+
if poller, err = conf.PollerNamed(pollerName); err != nil {
202+
return conf.Remote{}, err
203+
}
204+
205+
timeout, _ := time.ParseDuration(eseriesrest.DefaultTimeout)
206+
client, err = eseriesrest.New(poller, timeout, cred, "")
207+
if err != nil {
208+
return conf.Remote{}, err
209+
}
210+
211+
if err := client.Init(1, conf.Remote{}); err != nil {
212+
return conf.Remote{}, err
213+
}
214+
215+
return client.Remote(), nil
216+
}

0 commit comments

Comments
 (0)