1
// Copyright 2018 The CubeFS Authors.
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
7
// http://www.apache.org/licenses/LICENSE-2.0
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
12
// implied. See the License for the specific language governing
13
// permissions and limitations under the License.
18
"github.com/cubefs/cubefs/proto"
19
sdk "github.com/cubefs/cubefs/sdk/master"
22
func validVols(client, complete interface{}) []string {
28
clientSdk := client.(*sdk.MasterClient)
29
completeStr := complete.(string)
30
if vols, err = clientSdk.AdminAPI().ListVols(completeStr); err != nil {
33
for _, vol := range vols {
34
validVols = append(validVols, vol.Name)
39
func validDataNodes(client *sdk.MasterClient, toComplete string) []string {
41
validDataNodes []string
42
clusterView *proto.ClusterView
46
if clusterView, err = client.AdminAPI().GetCluster(); err != nil {
49
for _, dn := range clusterView.DataNodes {
50
validDataNodes = append(validDataNodes, dn.Addr)
55
func validMetaNodes(client *sdk.MasterClient, toComplete string) []string {
57
validMetaNodes []string
58
clusterView *proto.ClusterView
61
if clusterView, err = client.AdminAPI().GetCluster(); err != nil {
64
for _, mn := range clusterView.MetaNodes {
65
validMetaNodes = append(validMetaNodes, mn.Addr)
70
func validUsers(client *sdk.MasterClient, toComplete string) []string {
73
users []*proto.UserInfo
76
if users, err = client.UserAPI().ListUsers(toComplete); err != nil {
79
for _, user := range users {
80
validUsers = append(validUsers, user.UserID)
85
func validZones(client *sdk.MasterClient, toComplete string) []string {
88
zones []*proto.ZoneView
91
if zones, err = client.AdminAPI().ListZones(); err != nil {
94
for _, zone := range zones {
95
validZones = append(validZones, zone.Name)