mirror of
https://github.com/gravitl/netmaker.git
synced 2025-10-15 21:32:17 +08:00
add metrics and usergroup subcommands
This commit is contained in:
25
cli/functions/metrics.go
Normal file
25
cli/functions/metrics.go
Normal file
@@ -0,0 +1,25 @@
|
||||
package functions
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"github.com/gravitl/netmaker/models"
|
||||
)
|
||||
|
||||
// GetNodeMetrics - fetch a single node's metrics
|
||||
func GetNodeMetrics(networkName, nodeID string) *models.Metrics {
|
||||
return request[models.Metrics](http.MethodGet, fmt.Sprintf("/api/metrics/%s/%s", networkName, nodeID), nil)
|
||||
}
|
||||
|
||||
func GetNetworkNodeMetrics(networkName string) *models.NetworkMetrics {
|
||||
return request[models.NetworkMetrics](http.MethodGet, "/api/metrics/"+networkName, nil)
|
||||
}
|
||||
|
||||
func GetAllMetrics() *models.NetworkMetrics {
|
||||
return request[models.NetworkMetrics](http.MethodGet, "/api/metrics", nil)
|
||||
}
|
||||
|
||||
func GetNetworkExtMetrics(networkName string) *map[string]models.Metric {
|
||||
return request[map[string]models.Metric](http.MethodGet, "/api/metrics-ext/"+networkName, nil)
|
||||
}
|
37
cli/functions/network_user.go
Normal file
37
cli/functions/network_user.go
Normal file
@@ -0,0 +1,37 @@
|
||||
package functions
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"github.com/gravitl/netmaker/ee/ee_controllers"
|
||||
"github.com/gravitl/netmaker/models/promodels"
|
||||
)
|
||||
|
||||
func GetAllNetworkUsers() *map[string][]promodels.NetworkUser {
|
||||
return request[map[string][]promodels.NetworkUser](http.MethodGet, "/api/networkusers", nil)
|
||||
}
|
||||
|
||||
func GetNetworkUsers(networkName string) *promodels.NetworkUserMap {
|
||||
return request[promodels.NetworkUserMap](http.MethodGet, "/api/networkusers/"+networkName, nil)
|
||||
}
|
||||
|
||||
func GetNetworkUser(networkName, networkUserName string) *promodels.NetworkUser {
|
||||
return request[promodels.NetworkUser](http.MethodGet, fmt.Sprintf("/api/networkusers/%s/%s", networkName, networkUserName), nil)
|
||||
}
|
||||
|
||||
func CreateNetworkUser(networkName string, payload *promodels.NetworkUser) {
|
||||
request[any](http.MethodPost, "/api/networkusers/"+networkName, payload)
|
||||
}
|
||||
|
||||
func UpdateNetworkUser(networkName string, payload *promodels.NetworkUser) {
|
||||
request[any](http.MethodPut, "/api/networkusers/"+networkName, payload)
|
||||
}
|
||||
|
||||
func GetNetworkUserData(networkUserName string) *ee_controllers.NetworkUserDataMap {
|
||||
return request[ee_controllers.NetworkUserDataMap](http.MethodGet, fmt.Sprintf("/api/networkusers/data/%s/me", networkUserName), nil)
|
||||
}
|
||||
|
||||
func DeleteNetworkUser(networkName, networkUserName string) {
|
||||
request[any](http.MethodDelete, fmt.Sprintf("/api/networkusers/%s/%s", networkName, networkUserName), nil)
|
||||
}
|
19
cli/functions/usergroups.go
Normal file
19
cli/functions/usergroups.go
Normal file
@@ -0,0 +1,19 @@
|
||||
package functions
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gravitl/netmaker/models/promodels"
|
||||
)
|
||||
|
||||
func GetUsergroups() *promodels.UserGroups {
|
||||
return request[promodels.UserGroups](http.MethodGet, "/api/usergroups", nil)
|
||||
}
|
||||
|
||||
func CreateUsergroup(usergroupName string) {
|
||||
request[any](http.MethodPost, "/api/usergroups/"+usergroupName, nil)
|
||||
}
|
||||
|
||||
func DeleteUsergroup(usergroupName string) {
|
||||
request[any](http.MethodDelete, "/api/usergroups/"+usergroupName, nil)
|
||||
}
|
Reference in New Issue
Block a user