github.com/codeready-toolchain/api@v0.0.0-20240507023248-73662d6db2c5/api/v1alpha1/usertier_types.go (about) 1 package v1alpha1 2 3 import ( 4 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" 5 ) 6 7 //+kubebuilder:object:root=true 8 9 // UserTier contains user-specific configuration 10 // +k8s:openapi-gen=true 11 // +kubebuilder:resource:scope=Namespaced 12 // +kubebuilder:validation:XPreserveUnknownFields 13 // +operator-sdk:gen-csv:customresourcedefinitions.displayName="User Tier" 14 type UserTier struct { 15 metav1.TypeMeta `json:",inline"` 16 metav1.ObjectMeta `json:"metadata,omitempty"` 17 18 Spec UserTierSpec `json:"spec,omitempty"` 19 } 20 21 // UserTierSpec defines the desired state of UserTier 22 // +k8s:openapi-gen=true 23 type UserTierSpec struct { 24 // Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file 25 // Add custom validation using kubebuilder tags: https://book.kubebuilder.io/beyond_basics/generating_crd.html 26 27 // the period (in days) after which users within the tier will be deactivated 28 // +optional 29 DeactivationTimeoutDays int `json:"deactivationTimeoutDays,omitempty"` 30 } 31 32 //+kubebuilder:object:root=true 33 34 // UserTierList contains a list of UserTier 35 type UserTierList struct { 36 metav1.TypeMeta `json:",inline"` 37 metav1.ListMeta `json:"metadata,omitempty"` 38 Items []UserTier `json:"items"` 39 } 40 41 func init() { 42 SchemeBuilder.Register(&UserTier{}, &UserTierList{}) 43 }