Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the security v1beta1 API group +kubebuilder:object:generate=true +groupName=security.stalesecretwatch.io
Index ¶
- Variables
- type ExcludeList
- type SecretStatus
- type StaleSecretToWatch
- type StaleSecretWatch
- func (in *StaleSecretWatch) DeepCopy() *StaleSecretWatch
- func (in *StaleSecretWatch) DeepCopyInto(out *StaleSecretWatch)
- func (in *StaleSecretWatch) DeepCopyObject() runtime.Object
- func (r *StaleSecretWatch) Default()
- func (r *StaleSecretWatch) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *StaleSecretWatch) ValidateCreate() (admission.Warnings, error)
- func (r *StaleSecretWatch) ValidateDelete() (admission.Warnings, error)
- func (r *StaleSecretWatch) ValidateStaleSecretWatch() error
- func (r *StaleSecretWatch) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
- type StaleSecretWatchList
- type StaleSecretWatchSpec
- type StaleSecretWatchStatus
Constants ¶
This section is empty.
Variables ¶
var (
// GroupVersion is group version used to register these objects
GroupVersion = schema.GroupVersion{Group: "security.stalesecretwatch.io", Version: "v1beta1"}
// SchemeBuilder is used to add go types to the GroupVersionKind scheme
SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}
// AddToScheme adds the types in this group-version to the given scheme.
AddToScheme = SchemeBuilder.AddToScheme
)
Functions ¶
This section is empty.
Types ¶
type ExcludeList ¶
type ExcludeList struct {
// namespace where secret resource resides, single namespace name only
//+kubebuilder:validation:Pattern:=`^[a-zA-Z0-9-_]+$`
Namespace string `json:"namespace"`
// name of the secret resource to exclude watch, comma separated or sinlge secretName example: secret1, secret2
//+kubebuilder:validation:Pattern:=`^[a-zA-Z0-9._-]+(?:,\s*[a-zA-Z0-9._-]+)*$`
SecretName string `json:"secretName"`
}
ExcludeList is to exclude secret watch
func (*ExcludeList) DeepCopy ¶
func (in *ExcludeList) DeepCopy() *ExcludeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExcludeList.
func (*ExcludeList) DeepCopyInto ¶
func (in *ExcludeList) DeepCopyInto(out *ExcludeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretStatus ¶
type SecretStatus struct {
// Namespace of the secret being monitored.
Namespace string `json:"namespace,omitempty"`
// Name of the secret being monitored.
Name string `json:"name,omitempty"`
// Type or kind of the secret being monitored. Opaque dockerconfig etc
SecretType string `json:"secretType,omitempty"`
// Created is the timestamp of the secret created.
Created metav1.Time `json:"created,omitempty"`
// LastUpdateTime is the timestamp of the last update to the monitored secret.
LastModified metav1.Time `json:"last_modified,omitempty"`
// IsStale indicates whether the secret is stale or not.
IsStale bool `json:"isStale,omitempty"`
// Message is a human-readable message indicating details
Message string `json:"message,omitempty"`
}
SecretStatus provides detailed information about the monitored secret's status.
func (*SecretStatus) DeepCopy ¶
func (in *SecretStatus) DeepCopy() *SecretStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretStatus.
func (*SecretStatus) DeepCopyInto ¶
func (in *SecretStatus) DeepCopyInto(out *SecretStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaleSecretToWatch ¶
type StaleSecretToWatch struct {
// Namespace of the Secret resource. namespace=all or namespace=namespace1 or namespace=namespace1,namespace2 comma separated
//+kubebuilder:validation:Pattern:=`^[a-zA-Z0-9-_]+$`
Namespace string `json:"namespace"`
// exclude stale secret watch of below secrets present in namespace
ExcludeList []ExcludeList `json:"excludeList,omitempty"`
}
StaleSecretToWatch refers to the StaleSecretToWatch resource to watch for stale secrets.
func (*StaleSecretToWatch) DeepCopy ¶
func (in *StaleSecretToWatch) DeepCopy() *StaleSecretToWatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaleSecretToWatch.
func (*StaleSecretToWatch) DeepCopyInto ¶
func (in *StaleSecretToWatch) DeepCopyInto(out *StaleSecretToWatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaleSecretWatch ¶
type StaleSecretWatch struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec StaleSecretWatchSpec `json:"spec,omitempty"`
Status StaleSecretWatchStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,shortName=ssw +kubebuilder:printcolumn:name="Namespace",type="string",JSONPath=".metadata.namespace" +kubebuilder:printcolumn:name="Name",type="string",JSONPath=".metadata.name" +kubebuilder:printcolumn:name="TYPE",type="string",JSONPath=".kind" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" StaleSecretWatch is the Schema for the stalesecretwatches API
func (*StaleSecretWatch) DeepCopy ¶
func (in *StaleSecretWatch) DeepCopy() *StaleSecretWatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaleSecretWatch.
func (*StaleSecretWatch) DeepCopyInto ¶
func (in *StaleSecretWatch) DeepCopyInto(out *StaleSecretWatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StaleSecretWatch) DeepCopyObject ¶
func (in *StaleSecretWatch) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*StaleSecretWatch) Default ¶
func (r *StaleSecretWatch) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*StaleSecretWatch) SetupWebhookWithManager ¶
func (r *StaleSecretWatch) SetupWebhookWithManager(mgr ctrl.Manager) error
SetupWebhookWithManager will setup the manager to manage the webhooks
func (*StaleSecretWatch) ValidateCreate ¶
func (r *StaleSecretWatch) ValidateCreate() (admission.Warnings, error)
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*StaleSecretWatch) ValidateDelete ¶
func (r *StaleSecretWatch) ValidateDelete() (admission.Warnings, error)
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*StaleSecretWatch) ValidateStaleSecretWatch ¶
func (r *StaleSecretWatch) ValidateStaleSecretWatch() error
ValidateStaleSecretWatch validates the fields of the StaleSecretWatch instance.
func (*StaleSecretWatch) ValidateUpdate ¶
func (r *StaleSecretWatch) ValidateUpdate(old runtime.Object) (admission.Warnings, error)
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type StaleSecretWatchList ¶
type StaleSecretWatchList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []StaleSecretWatch `json:"items"`
}
StaleSecretWatchList contains a list of StaleSecretWatch
func (*StaleSecretWatchList) DeepCopy ¶
func (in *StaleSecretWatchList) DeepCopy() *StaleSecretWatchList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaleSecretWatchList.
func (*StaleSecretWatchList) DeepCopyInto ¶
func (in *StaleSecretWatchList) DeepCopyInto(out *StaleSecretWatchList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StaleSecretWatchList) DeepCopyObject ¶
func (in *StaleSecretWatchList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StaleSecretWatchSpec ¶
type StaleSecretWatchSpec struct {
// StaleSecretToWatch points to the namespace and secret to watch for stale secrets.
// +operator-sdk:csv:customresourcedefinitions:type=spec
StaleSecretToWatch StaleSecretToWatch `json:"staleSecretToWatch"`
// StaleThreshold defines the threshold (in days) beyond which a secret is considered stale.
// +operator-sdk:csv:customresourcedefinitions:type=spec
StaleThresholdInDays int `json:"staleThresholdInDays"`
// RefreshInterval is the amount of time after which the Reconciler would watch the cluster
// Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
// May be set to zero to fetch and create it once. Defaults to 1h.
// +kubebuilder:default="1h"
// +operator-sdk:csv:customresourcedefinitions:type=spec
RefreshInterval *metav1.Duration `json:"refreshInterval,omitempty"`
}
StaleSecretWatchSpec defines the desired state of StaleSecretWatch
func (*StaleSecretWatchSpec) DeepCopy ¶
func (in *StaleSecretWatchSpec) DeepCopy() *StaleSecretWatchSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaleSecretWatchSpec.
func (*StaleSecretWatchSpec) DeepCopyInto ¶
func (in *StaleSecretWatchSpec) DeepCopyInto(out *StaleSecretWatchSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StaleSecretWatchStatus ¶
type StaleSecretWatchStatus struct {
// Conditions represent the current conditions of the StaleSecretWatch resource
// +operator-sdk:csv:customresourcedefinitions:type=status
Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
// SecretStatus provides detailed information about the monitored secret's status.
// +operator-sdk:csv:customresourcedefinitions:type=status
SecretStatus []SecretStatus `json:"secretStatus,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=secretStatus"`
// StaleSecretsCount in the number of stale secret found
// +operator-sdk:csv:customresourcedefinitions:type=status
StaleSecretsCount int `json:"staleSecretCount,omitempty"`
}
StaleSecretWatchStatus defines the observed state of StaleSecretWatch
func (*StaleSecretWatchStatus) DeepCopy ¶
func (in *StaleSecretWatchStatus) DeepCopy() *StaleSecretWatchStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StaleSecretWatchStatus.
func (*StaleSecretWatchStatus) DeepCopyInto ¶
func (in *StaleSecretWatchStatus) DeepCopyInto(out *StaleSecretWatchStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.