Automatic merge from release/2.2.0 -> release/2.3.0

* commit 'fde651b32c7864928e6ef403c6851f280fa75209':
  climc: add k8s-cluster-delete-nodes
This commit is contained in:
李泽玺
2018-10-09 17:32:51 +08:00
4 changed files with 38 additions and 7 deletions
+4 -4
View File
@@ -116,13 +116,13 @@ func init() {
return doComputeEventList(s, &nargs)
})
R(&TypeEventListOptions{}, "k8s-cluster-event", "Show operation event logs of kubernetes cluster", func(s *mcclient.ClientSession, args *TypeEventListOptions) error {
nargs := EventListOptions{BaseEventListOptions: args.BaseEventListOptions, Id: args.ID, Type: []string{"cluster"}}
R(&TypeEventListOptions{}, "kube-cluster-event", "Show operation event logs of kubernetes cluster", func(s *mcclient.ClientSession, args *TypeEventListOptions) error {
nargs := EventListOptions{BaseEventListOptions: args.BaseEventListOptions, Id: args.ID, Type: []string{"kube_cluster"}}
return doK8sEventList(s, &nargs)
})
R(&TypeEventListOptions{}, "k8s-node-event", "Show operation event logs of kubernetes node", func(s *mcclient.ClientSession, args *TypeEventListOptions) error {
nargs := EventListOptions{BaseEventListOptions: args.BaseEventListOptions, Id: args.ID, Type: []string{"node"}}
R(&TypeEventListOptions{}, "kube-node-event", "Show operation event logs of kubernetes node", func(s *mcclient.ClientSession, args *TypeEventListOptions) error {
nargs := EventListOptions{BaseEventListOptions: args.BaseEventListOptions, Id: args.ID, Type: []string{"kube_node"}}
return doK8sEventList(s, &nargs)
})
}
+13
View File
@@ -129,4 +129,17 @@ func initCluster() {
printObject(ret)
return nil
})
R(&o.ClusterDeleteNodesOptions{}, cmdN("delete-nodes"), "Delete nodes in cluster", func(s *mcclient.ClientSession, args *o.ClusterDeleteNodesOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.Clusters.PerformAction(s, args.ID, "delete-nodes", params)
if err != nil {
return err
}
printObject(ret)
return nil
})
}
+6 -3
View File
@@ -35,9 +35,12 @@ func initNode() {
return nil
})
R(&o.IdentsOptions{}, cmdN("delete"), "Delete node", func(s *mcclient.ClientSession, args *o.IdentsOptions) error {
ret := k8s.Nodes.BatchDeleteWithParam(s, args.ID, nil, nil)
printBatchResults(ret, k8s.Nodes.GetColumns(s))
R(&o.IdentOptions{}, cmdN("delete"), "Delete node", func(s *mcclient.ClientSession, args *o.IdentOptions) error {
ret, err := k8s.Nodes.Delete(s, args.ID, nil)
if err != nil {
return err
}
printObject(ret)
return nil
})
+15
View File
@@ -175,3 +175,18 @@ func parseNodeAddConfigStr(config string) (nodeAddConfig, error) {
ret.Roles = roles
return ret, nil
}
type ClusterDeleteNodesOptions struct {
IdentOptions
Node []string `help:"Node id or name"`
}
func (o ClusterDeleteNodesOptions) Params() (*jsonutils.JSONDict, error) {
params := jsonutils.NewDict()
nodesArray := jsonutils.NewArray()
for _, node := range o.Node {
nodesArray.Add(jsonutils.NewString(node))
}
params.Add(nodesArray, "nodes")
return params, nil
}