// SelectableFields returns a field set that can be used for filter selection func SelectableFields(obj *api.Secret) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&obj.ObjectMeta, true) secretSpecificFieldsSet := fields.Set{ "type": string(obj.Type), } return generic.MergeFieldsSets(objectMetaFieldsSet, secretSpecificFieldsSet) }
// JobSelectableFields returns a field set that represents the object for matching purposes. func JobToSelectableFields(job *batch.Job) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&job.ObjectMeta, true) specificFieldsSet := fields.Set{ "status.successful": strconv.Itoa(int(job.Status.Succeeded)), } return generic.MergeFieldsSets(objectMetaFieldsSet, specificFieldsSet) }
// NodeToSelectableFields returns a field set that represents the object. func NodeToSelectableFields(node *api.Node) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&node.ObjectMeta, false) specificFieldsSet := fields.Set{ "spec.unschedulable": fmt.Sprint(node.Spec.Unschedulable), } return generic.MergeFieldsSets(objectMetaFieldsSet, specificFieldsSet) }
// ControllerToSelectableFields returns a field set that represents the object. func ControllerToSelectableFields(controller *api.ReplicationController) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&controller.ObjectMeta, true) controllerSpecificFieldsSet := fields.Set{ "status.replicas": strconv.Itoa(int(controller.Status.Replicas)), } return generic.MergeFieldsSets(objectMetaFieldsSet, controllerSpecificFieldsSet) }
// ReplicaSetToSelectableFields returns a field set that represents the object. func ReplicaSetToSelectableFields(rs *extensions.ReplicaSet) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&rs.ObjectMeta, true) rsSpecificFieldsSet := fields.Set{ "status.replicas": strconv.Itoa(int(rs.Status.Replicas)), } return generic.MergeFieldsSets(objectMetaFieldsSet, rsSpecificFieldsSet) }
// PersistentVolumeToSelectableFields returns a field set that represents the object func PersistentVolumeToSelectableFields(persistentvolume *api.PersistentVolume) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&persistentvolume.ObjectMeta, false) specificFieldsSet := fields.Set{ // This is a bug, but we need to support it for backward compatibility. "name": persistentvolume.Name, } return generic.MergeFieldsSets(objectMetaFieldsSet, specificFieldsSet) }
// NamespaceToSelectableFields returns a field set that represents the object func NamespaceToSelectableFields(namespace *api.Namespace) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&namespace.ObjectMeta, false) specificFieldsSet := fields.Set{ "status.phase": string(namespace.Status.Phase), // This is a bug, but we need to support it for backward compatibility. "name": namespace.Name, } return generic.MergeFieldsSets(objectMetaFieldsSet, specificFieldsSet) }
// EventToSelectableFields returns a field set that represents the object func EventToSelectableFields(event *api.Event) fields.Set { objectMetaFieldsSet := generic.ObjectMetaFieldsSet(&event.ObjectMeta, true) specificFieldsSet := fields.Set{ "involvedObject.kind": event.InvolvedObject.Kind, "involvedObject.namespace": event.InvolvedObject.Namespace, "involvedObject.name": event.InvolvedObject.Name, "involvedObject.uid": string(event.InvolvedObject.UID), "involvedObject.apiVersion": event.InvolvedObject.APIVersion, "involvedObject.resourceVersion": event.InvolvedObject.ResourceVersion, "involvedObject.fieldPath": event.InvolvedObject.FieldPath, "reason": event.Reason, "source": event.Source.Component, "type": event.Type, } return generic.MergeFieldsSets(objectMetaFieldsSet, specificFieldsSet) }