mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-21 14:19:49 +08:00
climc: add name filter to k8s list resource
This commit is contained in:
@@ -15,8 +15,9 @@ func (o ClusterBaseOptions) Params() *jsonutils.JSONDict {
|
||||
}
|
||||
|
||||
type BaseListOptions struct {
|
||||
Limit int `default:"20" help:"Page limit"`
|
||||
Offset int `default:"0" help:"page offset"`
|
||||
Limit int `default:"20" help:"Page limit"`
|
||||
Offset int `default:"0" help:"Page offset"`
|
||||
Name string `help:"Search by name"`
|
||||
}
|
||||
|
||||
func (o BaseListOptions) Params() *jsonutils.JSONDict {
|
||||
@@ -27,6 +28,9 @@ func (o BaseListOptions) Params() *jsonutils.JSONDict {
|
||||
if o.Offset > 0 {
|
||||
params.Add(jsonutils.NewInt(int64(o.Offset)), "offset")
|
||||
}
|
||||
if o.Name != "" {
|
||||
params.Add(jsonutils.NewString(o.Name), "name")
|
||||
}
|
||||
return params
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ type DeploymentCreateOptions struct {
|
||||
Image string `help:"The image for the container to run"`
|
||||
Replicas int64 `help:"Number of replicas for pods in this deployment"`
|
||||
RunAsPrivileged bool `help:"Whether to run the container as privileged user"`
|
||||
Labels string `help:"Comma separated labels to apply to the pod(s), e.g. --labels='app=hazelcast,env=prod'"`
|
||||
Label []string `help:"Labels to apply to the pod(s), e.g. 'env=prod'"`
|
||||
Env []string `help:"Environment variables to set in container"`
|
||||
Port []string `help:"Port for the service that is created, format is <protocol>:<service_port>:<container_port> e.g. tcp:80:3000"`
|
||||
Net string `help:"Network config, e.g. net1, net1:10.168.222.171"`
|
||||
@@ -62,13 +62,15 @@ func (o DeploymentCreateOptions) Params() (*jsonutils.JSONDict, error) {
|
||||
}
|
||||
params.Add(net, "networkConfig")
|
||||
}
|
||||
if o.Labels != "" {
|
||||
labels, err := parseLabels(o.Labels)
|
||||
labels := jsonutils.NewArray()
|
||||
for _, label := range o.Label {
|
||||
label, err := parseLabel(label)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
params.Add(labels, "labels")
|
||||
labels.Add(label)
|
||||
}
|
||||
params.Add(labels, "labels")
|
||||
return params, nil
|
||||
}
|
||||
|
||||
@@ -153,22 +155,6 @@ func (o DeploymentCreateFromFileOptions) Params() (*jsonutils.JSONDict, error) {
|
||||
return params, nil
|
||||
}
|
||||
|
||||
func parseLabels(labelStr string) (*jsonutils.JSONArray, error) {
|
||||
labelsStrs := strings.Split(labelStr, ",")
|
||||
ret := jsonutils.NewArray()
|
||||
if len(labelsStrs) == 0 {
|
||||
return ret, nil
|
||||
}
|
||||
for _, str := range labelsStrs {
|
||||
label, err := parseLabel(str)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
ret.Add(label)
|
||||
}
|
||||
return ret, nil
|
||||
}
|
||||
|
||||
func parseLabel(str string) (jsonutils.JSONObject, error) {
|
||||
parts := strings.Split(str, "=")
|
||||
if len(parts) != 2 {
|
||||
|
||||
Reference in New Issue
Block a user