1
0
mirror of https://github.com/rancher/steve.git synced 2025-07-15 23:46:34 +00:00
steve/pkg/resources/virtual/events/events.go
Eric Promislow 06c2eb50d1
Index more sqlite cache fields (#271)
* Add more fields to index when sql-caching is on.

Misc changes:
- Use the builtin Event class, not events.k8s.io (by looking at the dashboard client code)
- Specify full path to the management.cattle.io fields.
- Map `Event.type` to `Event._type` for indexing.

Use a compound transform-func to first check for a "signal",
and then to run all the relevant transformers until either
one fails or the list is exhausted.

- Includes moving the fakeSummaryCache type into a common area.

Use a simpler way of running transforms.

* Inline the function to get the gvk key.

* Create a '--sql-cache' flag to turn on caching for the steve CLI.

* Improve error-handling in object transformer.

* Drop the 'GetTransform' function.

* Inline the code that transforms a payload into a k8s-unstructured object.
2024-10-18 11:06:29 -07:00

17 lines
540 B
Go

// Package common provides cache.TransformFunc's for /v1 Event objects
package events
import (
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
)
// TransformEventObject does special-case handling on event objects
// 1. (only one so far): replaces the _type field with the contents of the field named "type", if it exists
func TransformEventObject(obj *unstructured.Unstructured) (*unstructured.Unstructured, error) {
currentTypeValue, ok := obj.Object["type"]
if ok {
obj.Object["_type"] = currentTypeValue
}
return obj, nil
}