Documentation
¶
Index ¶
- Variables
- func Contains(needle string, haystack []string) bool
- func ExtractClientObjectFromApplyConfiguration(obj runtime.ApplyConfiguration) (client.Object, error)
- func GetCause(err error) string
- func KindExists(config *rest.Config, groupVersionKind schema.GroupVersionKind) (bool, error)
- func MergeClientObjectIntoApplyConfiguration(clientObj client.Object, applyConfig runtime.ApplyConfiguration) error
Constants ¶
This section is empty.
Variables ¶
View Source
var EnsureCRD = func(ctx context.Context, config *rest.Config, manifest []byte, groupVersionKind schema.GroupVersionKind) error { exists, err := KindExists(config, groupVersionKind) if err != nil { return err } else if exists { return nil } err = wait.ExponentialBackoffWithContext(ctx, wait.Backoff{Duration: time.Second, Factor: 1.5, Cap: 5 * time.Minute, Steps: math.MaxInt32}, func(ctx context.Context) (bool, error) { err := applier.ApplyManifest(ctx, config, manifest) if err != nil { loghelper.Infof("Failed to apply CRD %s: %v", groupVersionKind.String(), err) return false, nil } return true, nil }) if err != nil { return fmt.Errorf("failed to apply CRD %s: %w", groupVersionKind.String(), err) } var errKindExists error err = wait.ExponentialBackoffWithContext(ctx, wait.Backoff{Duration: time.Second, Factor: 1.5, Cap: time.Minute, Steps: math.MaxInt32}, func(_ context.Context) (bool, error) { var found bool found, errKindExists = KindExists(config, groupVersionKind) return found, nil }) if err != nil { return fmt.Errorf("failed to find CRD %s: %w: %w", groupVersionKind.String(), err, errKindExists) } return nil }
EnsureCRD should be replaceable by unit tests
Functions ¶
func ExtractClientObjectFromApplyConfiguration ¶
func ExtractClientObjectFromApplyConfiguration(obj runtime.ApplyConfiguration) (client.Object, error)
ExtractClientObjectFromApplyConfiguration converts ApplyConfiguration to client.Object for efficient metadata access. It returns an unstructured.Unstructured which implements client.Object
func KindExists ¶
KindExists checks if given CRDs exist in the given group. Returns foundKinds, notFoundKinds, error
func MergeClientObjectIntoApplyConfiguration ¶
func MergeClientObjectIntoApplyConfiguration(clientObj client.Object, applyConfig runtime.ApplyConfiguration) error
MergeClientObjectIntoApplyConfiguration writes the state of the mutated client object back into the given ApplyConfiguration so that an Apply call sends the mutated content. Use this after MutateObject so that plugin hook mutations (e.g. labels/annotations) are applied to the server instead of being discarded.
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package websocketproxy is a reverse proxy for WebSocket connections.
|
Package websocketproxy is a reverse proxy for WebSocket connections. |
Click to show internal directories.
Click to hide internal directories.