climc: k8s service api

This commit is contained in:
Zexi Li
2018-12-28 14:55:13 +08:00
parent e862dd9118
commit c4e34d439a
4 changed files with 120 additions and 9 deletions
+1 -1
View File
@@ -7,7 +7,7 @@ import (
)
func initPVC() {
cmdN := NewCmdNameFactory("persistentvolumeclaim")
cmdN := NewCmdNameFactory("pvc")
pvcCmd := NewShellCommands(cmdN.Do).AddR(
NewK8sNsResourceGetCmd(cmdN, k8s.PersistentVolumeClaims),
NewK8sNsResourceDeleteCmd(cmdN, k8s.PersistentVolumeClaims),
+39 -1
View File
@@ -1,9 +1,47 @@
package k8s
import (
"yunion.io/x/onecloud/pkg/mcclient"
"yunion.io/x/onecloud/pkg/mcclient/modules/k8s"
o "yunion.io/x/onecloud/pkg/mcclient/options/k8s"
)
func initService() {
initK8sNamespaceResource("service", k8s.Services)
cmdN := NewCmdNameFactory("service")
svcCmd := NewShellCommands(cmdN.Do).AddR(
NewK8sNsResourceGetCmd(cmdN, k8s.Services),
NewK8sNsResourceDeleteCmd(cmdN, k8s.Services),
)
listCmd := NewCommand(
&o.ServiceListOptions{},
cmdN.Do("list"),
"List Services resource",
func(s *mcclient.ClientSession, args *o.ServiceListOptions) error {
ret, err := k8s.Services.List(s, args.Params())
if err != nil {
return err
}
PrintListResultTable(ret, k8s.Services, s)
return nil
},
)
createCmd := NewCommand(
&o.ServiceCreateOptions{},
cmdN.Do("create"),
"Create service resource",
func(s *mcclient.ClientSession, args *o.ServiceCreateOptions) error {
params, err := args.Params()
if err != nil {
return err
}
ret, err := k8s.Services.Create(s, params)
if err != nil {
return err
}
printObject(ret)
return nil
})
svcCmd.AddR(listCmd, createCmd)
}