Commit 4ba7fd5f authored by Jason Smith's avatar Jason Smith

added serviceAccountName to field selectors

parent 337dfe0a
...@@ -162,6 +162,7 @@ func addConversionFuncs(scheme *runtime.Scheme) error { ...@@ -162,6 +162,7 @@ func addConversionFuncs(scheme *runtime.Scheme) error {
"spec.nodeName", "spec.nodeName",
"spec.restartPolicy", "spec.restartPolicy",
"spec.schedulerName", "spec.schedulerName",
"spec.serviceAccountName",
"status.phase", "status.phase",
"status.podIP", "status.podIP",
"status.nominatedNodeName": "status.nominatedNodeName":
......
...@@ -237,10 +237,11 @@ func PodToSelectableFields(pod *api.Pod) fields.Set { ...@@ -237,10 +237,11 @@ func PodToSelectableFields(pod *api.Pod) fields.Set {
// amount of allocations needed to create the fields.Set. If you add any // amount of allocations needed to create the fields.Set. If you add any
// field here or the number of object-meta related fields changes, this should // field here or the number of object-meta related fields changes, this should
// be adjusted. // be adjusted.
podSpecificFieldsSet := make(fields.Set, 8) podSpecificFieldsSet := make(fields.Set, 9)
podSpecificFieldsSet["spec.nodeName"] = pod.Spec.NodeName podSpecificFieldsSet["spec.nodeName"] = pod.Spec.NodeName
podSpecificFieldsSet["spec.restartPolicy"] = string(pod.Spec.RestartPolicy) podSpecificFieldsSet["spec.restartPolicy"] = string(pod.Spec.RestartPolicy)
podSpecificFieldsSet["spec.schedulerName"] = string(pod.Spec.SchedulerName) podSpecificFieldsSet["spec.schedulerName"] = string(pod.Spec.SchedulerName)
podSpecificFieldsSet["spec.serviceAccountName"] = string(pod.Spec.ServiceAccountName)
podSpecificFieldsSet["status.phase"] = string(pod.Status.Phase) podSpecificFieldsSet["status.phase"] = string(pod.Status.Phase)
podSpecificFieldsSet["status.podIP"] = string(pod.Status.PodIP) podSpecificFieldsSet["status.podIP"] = string(pod.Status.PodIP)
podSpecificFieldsSet["status.nominatedNodeName"] = string(pod.Status.NominatedNodeName) podSpecificFieldsSet["status.nominatedNodeName"] = string(pod.Status.NominatedNodeName)
......
...@@ -88,6 +88,20 @@ func TestMatchPod(t *testing.T) { ...@@ -88,6 +88,20 @@ func TestMatchPod(t *testing.T) {
}, },
{ {
in: &api.Pod{ in: &api.Pod{
Spec: api.PodSpec{ServiceAccountName: "serviceAccount1"},
},
fieldSelector: fields.ParseSelectorOrDie("spec.serviceAccountName=serviceAccount1"),
expectMatch: true,
},
{
in: &api.Pod{
Spec: api.PodSpec{SchedulerName: "serviceAccount1"},
},
fieldSelector: fields.ParseSelectorOrDie("spec.serviceAccountName=serviceAccount2"),
expectMatch: false,
},
{
in: &api.Pod{
Status: api.PodStatus{Phase: api.PodRunning}, Status: api.PodStatus{Phase: api.PodRunning},
}, },
fieldSelector: fields.ParseSelectorOrDie("status.phase=Running"), fieldSelector: fields.ParseSelectorOrDie("status.phase=Running"),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment