Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the daemons v1alpha1 API group +kubebuilder:object:generate=true +groupName=daemons.redhat.com
Index ¶
Constants ¶
const ( NoError TangServerStatusError = "No" CreateError TangServerStatusError = "Unable to create pod" ActiveKeysError TangServerStatusError = "Zero active keys read" ActiveKeyNotFoundError TangServerStatusError = "Active key not found" DefaultTestName string = "tangserver-test" DefaultTestNameNoUID string = "tangserver-test-nouid" DefaultActiveKeyPairs uint32 = 1 // TODO: test why it can not be tested in non default namespace DefaultTestNamespace string = "default" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "daemons.redhat.com", Version: "v1alpha1"} // 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 ResourcesLimit ¶
type ResourcesLimit struct { Cpu string `json:"cpu,omitempty"` Memory string `json:"memory,omitempty"` }
ResourcesLimit contains the struct to provide resources limit to Tang Server
func (*ResourcesLimit) DeepCopy ¶
func (in *ResourcesLimit) DeepCopy() *ResourcesLimit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcesLimit.
func (*ResourcesLimit) DeepCopyInto ¶
func (in *ResourcesLimit) DeepCopyInto(out *ResourcesLimit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourcesRequest ¶
type ResourcesRequest struct { Cpu string `json:"cpu,omitempty"` Memory string `json:"memory,omitempty"` }
ResourcesRequest contains the struct to provide resources requests to Tang Server
func (*ResourcesRequest) DeepCopy ¶
func (in *ResourcesRequest) DeepCopy() *ResourcesRequest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcesRequest.
func (*ResourcesRequest) DeepCopyInto ¶
func (in *ResourcesRequest) DeepCopyInto(out *ResourcesRequest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TangServer ¶
type TangServer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TangServerSpec `json:"spec,omitempty"` Status TangServerStatus `json:"status,omitempty"` }
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="KeyPath",type="string",JSONPath=".spec.keypath",description="Directory to use for key generation" +kubebuilder:printcolumn:name="Replicas",type="integer",JSONPath=".spec.replicas",description="Replicas to launch for a particular deployment" +kubebuilder:printcolumn:name="Image",type="string",JSONPath=".spec.replicas",description="Container Image to use" +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version",description="Version of the Container Image to use" +kubebuilder:printcolumn:name="HealthScript",type="string",JSONPath=".spec.healthscript",description="Health Script to execute" +kubebuilder:printcolumn:name="PodListenPort",type="integer",JSONPath=".spec.podlistenport",description="Port where each Pod will listen" +kubebuilder:printcolumn:name="Secret",type="string",JSONPath=".spec.secret",description="Secret name to use in case it is necessary" +kubebuilder:printcolumn:name="ServiceListenPort",type="integer",JSONPath=".spec.podlistenport",description="Port where each Service will listen" TangServer is the Schema for the tangservers API
func (*TangServer) DeepCopy ¶
func (in *TangServer) DeepCopy() *TangServer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TangServer.
func (*TangServer) DeepCopyInto ¶
func (in *TangServer) DeepCopyInto(out *TangServer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TangServer) DeepCopyObject ¶
func (in *TangServer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TangServerActiveKeys ¶
type TangServerActiveKeys struct { // Active Key sha1 // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Active Key SHA1" // +optional Sha1 string `json:"sha1,omitempty"` // Active Key sha256 // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Active Key SHA256" // +optional Sha256 string `json:"sha256,omitempty"` // Active Key Generation Time // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Active Key Generation Time" Generated string `json:"generated,omitempty"` // FileName provides information about the file name corresponding to the key // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Active Key file name" // +optional FileName string `json:"fileName,omitempty"` }
TangServerActiveKeys defines the active keys in a Tang Server
func (*TangServerActiveKeys) DeepCopy ¶
func (in *TangServerActiveKeys) DeepCopy() *TangServerActiveKeys
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TangServerActiveKeys.
func (*TangServerActiveKeys) DeepCopyInto ¶
func (in *TangServerActiveKeys) DeepCopyInto(out *TangServerActiveKeys)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TangServerHiddenKeys ¶
type TangServerHiddenKeys struct { // Hidden Key sha1 // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Hidden Key SHA1" // +optional Sha1 string `json:"sha1,omitempty"` // Hidden Key sha256 // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Hidden Key SHA256" // +optional Sha256 string `json:"sha256,omitempty"` // Hidden Key Hiding Time // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Hidden Key Generation Time" Generated string `json:"generated,omitempty"` // Hidden Key Generation Time // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Hidden Key Hidden Time" Hidden string `json:"hidden,omitempty"` // FileName provides information about the file name corresponding to the key // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Hidden Key file name" // +optional FileName string `json:"fileName,omitempty"` }
TangServerHiddenKeys defines the hidden keys in a Tang Server
func (*TangServerHiddenKeys) DeepCopy ¶
func (in *TangServerHiddenKeys) DeepCopy() *TangServerHiddenKeys
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TangServerHiddenKeys.
func (*TangServerHiddenKeys) DeepCopyInto ¶
func (in *TangServerHiddenKeys) DeepCopyInto(out *TangServerHiddenKeys)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TangServerList ¶
type TangServerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TangServer `json:"items"` }
TangServerList contains a list of TangServer
func (*TangServerList) DeepCopy ¶
func (in *TangServerList) DeepCopy() *TangServerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TangServerList.
func (*TangServerList) DeepCopyInto ¶
func (in *TangServerList) DeepCopyInto(out *TangServerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TangServerList) DeepCopyObject ¶
func (in *TangServerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TangServerSpec ¶
type TangServerSpec struct { // KeyPath is field of TangServer. It allows to specify the path where keys will be generated // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Key Path" // +optional KeyPath string `json:"keyPath,omitempty"` // Replicas is the Tang Server amount to bring up // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Amount of replicas to launch" Replicas uint32 `json:"replicas"` // Persistent Volume Claim to store the keys // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Persistent Volume Claim to attach to (default:tangserver-pvc)" // +optional PersistentVolumeClaim string `json:"persistentVolumeClaim,omitempty"` // Image is the base container image of the TangServer to use // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image of Container to deploy" // +optional Image string `json:"image,omitempty"` // Version is the version of the TangServer container to use (empty=>latest) // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image Version of Container to deploy" // +optional Version string `json:"version,omitempty"` // HealthScript is the script to run for healthiness/readiness // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Health Script to execute" // +optional HealthScript string `json:"healthScript,omitempty"` // PodListenPort is the port where pods will listen for traffic // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Port where Pod will listen " // +optional PodListenPort uint32 `json:"podListenPort,omitempty"` // Secret is the secret name to use to download image appropriately // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Secret name to use for container download" // +optional Secret string `json:"secret,omitempty"` // ServiceListenPort is the port where service will listen for traffic // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Port where service will listen" // +optional ServiceListenPort uint32 `json:"serviceListenPort,omitempty"` // ResourceRequest is the resource request to perform for each pod // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resources Request for Tang Server" // +optional ResourcesRequest ResourcesRequest `json:"resourcesRequest,omitempty"` // ResourceLimit is the resource limit to perform for each pod // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resources Limit for Tang Server" // +optional ResourcesLimit ResourcesLimit `json:"resourcesLimit,omitempty"` // KeyRefreshInterval // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Refresh Interval to update key status" // +optional KeyRefreshInterval uint32 `json:"keyRefreshInterval,omitempty"` // HiddenKeys // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Hidden Keys contains a list with the keys (with sha1 or sha256) to hide" // +optional HiddenKeys []TangServerHiddenKeys `json:"hiddenKeys,omitempty"` // RequiredActiveKeyPairs // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Required Active Key Pairs (1 by default)" // +optional RequiredActiveKeyPairs uint32 `json:"requiredActiveKeyPairs,omitempty"` // ServiceType // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="ServiceType (LoadBalancer by default)" // +optional ServiceType string `json:"serviceType,omitempty"` // ClusterIP // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="ClusterIP (empty by default)" // +optional ClusterIP string `json:"clusterIP,omitempty"` }
TangServerSpec defines the desired state of TangServer
func (*TangServerSpec) DeepCopy ¶
func (in *TangServerSpec) DeepCopy() *TangServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TangServerSpec.
func (*TangServerSpec) DeepCopyInto ¶
func (in *TangServerSpec) DeepCopyInto(out *TangServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TangServerStatus ¶
type TangServerStatus struct { // TangServerError collects error on Tang Operator creation // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Tang Server Error" // +optional TangServerError TangServerStatusError `json:"tangServerError,omitempty"` // ActiveKeys provides information about the Active Keys in the Tang Server CR // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Tang Server Active Keys" // +optional ActiveKeys []TangServerActiveKeys `json:"activeKeys,omitempty"` // HiddenKeys provides information about the Hidden Keys in the Tang Server CR // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Tang Server Hidden Keys" // +optional HiddenKeys []TangServerHiddenKeys `json:"hiddenKeys,omitempty"` // Tang Server Running provides information about the Running Replicas // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Tang Server Running Replicas" // +optional Running uint32 `json:"running"` // Tang Server Ready provides information about the Ready Replicas // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Tang Server Ready Replicas" // +optional Ready uint32 `json:"ready"` // Tang Server Service External URL provides information about the External Service URL // +operator-sdk:csv:customresourcedefinitions:type=status,xDescriptors="urn:alm:descriptor:text",displayName="Tang Server External URL" // +optional ServiceExternalURL string `json:"serviceExternalURL,omitempty"` }
TangServerStatus defines the observed state of TangServer
func (*TangServerStatus) DeepCopy ¶
func (in *TangServerStatus) DeepCopy() *TangServerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TangServerStatus.
func (*TangServerStatus) DeepCopyInto ¶
func (in *TangServerStatus) DeepCopyInto(out *TangServerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TangServerStatusError ¶
type TangServerStatusError string