Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the cluster.appuio.io v1beta1 API group +kubebuilder:object:generate=true +groupName=cluster.appuio.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cluster.appuio.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 EmergencyAccount ¶
type EmergencyAccount struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec EmergencyAccountSpec `json:"spec,omitempty"`
Status EmergencyAccountStatus `json:"status,omitempty"`
}
EmergencyAccount is the Schema for the emergencyaccounts API
func (*EmergencyAccount) DeepCopy ¶
func (in *EmergencyAccount) DeepCopy() *EmergencyAccount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmergencyAccount.
func (*EmergencyAccount) DeepCopyInto ¶
func (in *EmergencyAccount) DeepCopyInto(out *EmergencyAccount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EmergencyAccount) DeepCopyObject ¶
func (in *EmergencyAccount) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EmergencyAccountList ¶
type EmergencyAccountList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []EmergencyAccount `json:"items"`
}
EmergencyAccountList contains a list of EmergencyAccount
func (*EmergencyAccountList) DeepCopy ¶
func (in *EmergencyAccountList) DeepCopy() *EmergencyAccountList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmergencyAccountList.
func (*EmergencyAccountList) DeepCopyInto ¶
func (in *EmergencyAccountList) DeepCopyInto(out *EmergencyAccountList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EmergencyAccountList) DeepCopyObject ¶
func (in *EmergencyAccountList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EmergencyAccountSpec ¶
type EmergencyAccountSpec struct {
// ValidityDuration is the duration for which the tokens are valid.
// +kubebuilder:validation:Type=string
// +kubebuilder:validation:Format=duration
// +kubebuilder:default:="720h"
ValidityDuration metav1.Duration `json:"validityDuration"`
// MinValidityDurationLeft is the minimum duration the token must be valid.
// A new token is created if the current token is not valid for this duration anymore.
// +kubebuilder:validation:Type=string
// +kubebuilder:validation:Format=duration
// +kubebuilder:default:="168h"
// +kubebuilder:validation:Optional
MinValidityDurationLeft metav1.Duration `json:"minValidityDurationLeft,omitempty"`
// CheckInterval is the interval in which the tokens are checked for validity.
// +kubebuilder:validation:Type=string
// +kubebuilder:validation:Format=duration
// +kubebuilder:default:="5m"
CheckInterval metav1.Duration `json:"checkInterval,omitempty"`
// MinRecreateInterval is the minimum interval in which a new token is created.
// +kubebuilder:validation:Type=string
// +kubebuilder:validation:Format=duration
// +kubebuilder:default:="5m"
MinRecreateInterval metav1.Duration `json:"minRecreateInterval,omitempty"`
// TokenStore defines the stores the created tokens are stored in.
// +kubebuilder:validation:MinItems=1
TokenStores []TokenStoreSpec `json:"tokenStores,omitempty"`
}
EmergencyAccountSpec defines the desired state of EmergencyAccount
func (*EmergencyAccountSpec) DeepCopy ¶
func (in *EmergencyAccountSpec) DeepCopy() *EmergencyAccountSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmergencyAccountSpec.
func (*EmergencyAccountSpec) DeepCopyInto ¶
func (in *EmergencyAccountSpec) DeepCopyInto(out *EmergencyAccountSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmergencyAccountStatus ¶
type EmergencyAccountStatus struct {
// LastTokenCreationTimestamp is the timestamp when the last token was created.
LastTokenCreationTimestamp metav1.Time `json:"lastTokenCreationTimestamp,omitempty"`
// Tokens is a list of tokens that have been created
Tokens []TokenStatus `json:"tokens,omitempty"`
}
EmergencyAccountStatus defines the observed state of EmergencyAccount
func (*EmergencyAccountStatus) DeepCopy ¶
func (in *EmergencyAccountStatus) DeepCopy() *EmergencyAccountStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmergencyAccountStatus.
func (*EmergencyAccountStatus) DeepCopyInto ¶
func (in *EmergencyAccountStatus) DeepCopyInto(out *EmergencyAccountStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogStoreSpec ¶
type LogStoreSpec struct{}
LogStoreSpec configures the log store. The log store outputs the token to the log but does not store it anywhere.
func (*LogStoreSpec) DeepCopy ¶
func (in *LogStoreSpec) DeepCopy() *LogStoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogStoreSpec.
func (*LogStoreSpec) DeepCopyInto ¶
func (in *LogStoreSpec) DeepCopyInto(out *LogStoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretStoreSpec ¶
type SecretStoreSpec struct{}
SecretStoreSpec configures the secret store. The secret store saves the tokens in a secret in the same namespace as the EmergencyAccount.
func (*SecretStoreSpec) DeepCopy ¶
func (in *SecretStoreSpec) DeepCopy() *SecretStoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretStoreSpec.
func (*SecretStoreSpec) DeepCopyInto ¶
func (in *SecretStoreSpec) DeepCopyInto(out *SecretStoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenStatus ¶
type TokenStatus struct {
// UID is the unique identifier of the token.
// Currently only used for error messages.
UID types.UID `json:"uid,omitempty"`
// Refs holds references to the token in the configured stores.
Refs []TokenStatusRef `json:"refs,omitempty"`
// ExpirationTimestamp is the timestamp when the token expires
ExpirationTimestamp metav1.Time `json:"expirationTimestamp"`
}
TokenStatus defines the observed state of the managed token
func (*TokenStatus) DeepCopy ¶
func (in *TokenStatus) DeepCopy() *TokenStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStatus.
func (*TokenStatus) DeepCopyInto ¶
func (in *TokenStatus) DeepCopyInto(out *TokenStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenStatusRef ¶
type TokenStatusRef struct {
// Ref is a reference to the token. The used storage should be able to uniquely identify the token.
// If no ref is given, the token is not checked for validity.
// +kubebuilder:validation:Optional
Ref string `json:"ref"`
// Store is the name of the store the token is stored in.
Store string `json:"store"`
}
func (*TokenStatusRef) DeepCopy ¶
func (in *TokenStatusRef) DeepCopy() *TokenStatusRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStatusRef.
func (*TokenStatusRef) DeepCopyInto ¶
func (in *TokenStatusRef) DeepCopyInto(out *TokenStatusRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenStoreSpec ¶
type TokenStoreSpec struct {
// Name is the name of the store.
// Must be unique within the EmergencyAccount
// +kubebuilder:validation:Required
Name string `json:"name"`
// Type defines the type of the store to use.
// Currently `secret“ and `log` stores are supported.
// The stores can be further configured in the corresponding storeSpec.
// +kubebuilder:validation:Required
// +kubebuilder:validation:Enum=secret;log
Type string `json:"type"`
// SecretSpec configures the secret store.
// The secret store saves the tokens in a secret in the same namespace as the EmergencyAccount.
SecretSpec SecretStoreSpec `json:"secretStore,omitempty"`
// LogSpec configures the log store.
// The log store outputs the token to the log but does not store it anywhere.
LogSpec LogStoreSpec `json:"logStore,omitempty"`
}
TokenStore defines the store the created tokens are stored in
func (*TokenStoreSpec) DeepCopy ¶
func (in *TokenStoreSpec) DeepCopy() *TokenStoreSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenStoreSpec.
func (*TokenStoreSpec) DeepCopyInto ¶
func (in *TokenStoreSpec) DeepCopyInto(out *TokenStoreSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.