Documentation ¶
Overview ¶
+kubebuilder:object:generate=true +groupName=dynatrace.com +versionName=v1alpha1
Index ¶
- Constants
- type ActiveGateSpec
- type ActiveGateStatus
- type CapabilityProperties
- type DynaKube
- func (dk *DynaKube) ActiveGateImage() string
- func (in *DynaKube) DeepCopy() *DynaKube
- func (in *DynaKube) DeepCopyInto(out *DynaKube)
- func (in *DynaKube) DeepCopyObject() runtime.Object
- func (*DynaKube) Hub()
- func (dk *DynaKube) ImmutableOneAgentImage() string
- func (dk *DynaKube) NeedsActiveGate() bool
- func (dk *DynaKube) PullSecret() string
- func (r *DynaKube) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (dk *DynaKube) ShouldAutoUpdateOneAgent() bool
- type DynaKubeList
- type DynaKubeProxy
- type DynaKubeSpec
- type DynaKubeStatus
- type DynaKubeValueSource
- type FullStackSpec
- type ImageStatus
- type KubernetesMonitoringSpec
- type OneAgentInstance
- type OneAgentSpec
- type OneAgentStatus
- type RoutingSpec
Constants ¶
const (
// PullSecretSuffix is the suffix appended to the DynaKube name to n.
PullSecretSuffix = "-pull-secret"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActiveGateSpec ¶
type ActiveGateSpec struct { // Disable automatic restarts of OneAgent pods in case a new version is available // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Automatically update Agent" // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:booleanSwitch" AutoUpdate *bool `json:"autoUpdate,omitempty"` // Optional: the ActiveGate container image. Defaults to the latest ActiveGate image provided by the Docker Registry // implementation from the Dynatrace environment set as API URL. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image",order=10,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Image string `json:"image,omitempty"` }
func (*ActiveGateSpec) DeepCopy ¶
func (in *ActiveGateSpec) DeepCopy() *ActiveGateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveGateSpec.
func (*ActiveGateSpec) DeepCopyInto ¶
func (in *ActiveGateSpec) DeepCopyInto(out *ActiveGateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ActiveGateStatus ¶
type ActiveGateStatus struct {
ImageStatus `json:",inline"`
}
func (*ActiveGateStatus) DeepCopy ¶
func (in *ActiveGateStatus) DeepCopy() *ActiveGateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActiveGateStatus.
func (*ActiveGateStatus) DeepCopyInto ¶
func (in *ActiveGateStatus) DeepCopyInto(out *ActiveGateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CapabilityProperties ¶
type CapabilityProperties struct { // Amount of replicas for your DynaKube // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Replicas",order=30,xDescriptors="urn:alm:descriptor:com.tectonic.ui:podCount" Replicas *int32 `json:"replicas,omitempty"` // Optional: Add a custom properties file by providing it as a value or reference it from a secret // If referenced from a secret, make sure the key is called 'customProperties' CustomProperties *DynaKubeValueSource `json:"customProperties,omitempty"` // Optional: Node selector to control the selection of nodes // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Node Selector",order=35,xDescriptors="urn:alm:descriptor:com.tectonic.ui:selector:Node" NodeSelector map[string]string `json:"nodeSelector,omitempty"` // Optional: Adds additional labels for the ActiveGate pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Labels",order=37,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Labels map[string]string `json:"labels,omitempty"` // Optional: Set activation group for ActiveGate // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Activation group",order=31,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Group string `json:"group,omitempty"` // Optional: set custom Service Account Name used with ActiveGate pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Service Account name",order=40,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:ServiceAccount"} ServiceAccountName string `json:"serviceAccountName,omitempty"` // Optional: define resources requests and limits for single ActiveGate pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements",order=34,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"} Resources corev1.ResourceRequirements `json:"resources,omitempty"` // Optional: set tolerations for the ActiveGatePods pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Tolerations",order=36,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:hidden"} Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // Optional: Adds additional arguments for the ActiveGate instances // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Arguments",order=38,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:hidden"} Args []string `json:"args,omitempty"` // Optional: List of environment variables to set for the ActiveGate // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Environment variables",order=39,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:hidden"} // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment variables" // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text" Env []corev1.EnvVar `json:"env,omitempty"` // Enables Capability // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Capability",order=29,xDescriptors="urn:alm:descriptor:com.tectonic.ui:selector:booleanSwitch" Enabled bool `json:"enabled,omitempty"` }
CapabilityProperties is a struct which can be embedded by ActiveGate capabilities Such as KubernetesMonitoring or Routing It encapsulates common properties.
func (*CapabilityProperties) DeepCopy ¶
func (in *CapabilityProperties) DeepCopy() *CapabilityProperties
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CapabilityProperties.
func (*CapabilityProperties) DeepCopyInto ¶
func (in *CapabilityProperties) DeepCopyInto(out *CapabilityProperties)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DynaKube ¶
type DynaKube struct { metav1.TypeMeta `json:",inline"` Status DynaKubeStatus `json:"status,omitempty"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DynaKubeSpec `json:"spec,omitempty"` }
DynaKube is the Schema for the DynaKube API +k8s:openapi-gen=true +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:path=dynakubes,scope=Namespaced,categories=dynatrace,shortName={dk,dks} +kubebuilder:printcolumn:name="ApiUrl",type=string,JSONPath=`.spec.apiUrl` +kubebuilder:printcolumn:name="Tokens",type=string,JSONPath=`.status.tokens` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp` +operator-sdk:csv:customresourcedefinitions:displayName="Dynatrace DynaKube" +operator-sdk:csv:customresourcedefinitions:resources={{StatefulSet,v1,},{DaemonSet,v1,},{Pod,v1,}}
func (*DynaKube) ActiveGateImage ¶
ActiveGateImage returns the ActiveGate image to be used with the dk DynaKube instance.
func (*DynaKube) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynaKube.
func (*DynaKube) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DynaKube) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DynaKube) Hub ¶
func (*DynaKube) Hub()
Hub tags this version as the 'source' of the conversion for controller runtime.
func (*DynaKube) ImmutableOneAgentImage ¶
ImmutableOneAgentImage returns the immutable OneAgent image to be used with the dk DynaKube instance.
func (*DynaKube) NeedsActiveGate ¶
NeedsActiveGate returns true when a feature requires ActiveGate instances.
func (*DynaKube) PullSecret ¶
PullSecret returns the name of the pull secret to be used for immutable images.
func (*DynaKube) SetupWebhookWithManager ¶
func (*DynaKube) ShouldAutoUpdateOneAgent ¶
ShouldAutoUpdateOneAgent returns true if the Operator should update OneAgent instances automatically.
type DynaKubeList ¶
type DynaKubeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DynaKube `json:"items"` }
DynaKubeList contains a list of DynaKube +kubebuilder:object:root=true
func (*DynaKubeList) DeepCopy ¶
func (in *DynaKubeList) DeepCopy() *DynaKubeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynaKubeList.
func (*DynaKubeList) DeepCopyInto ¶
func (in *DynaKubeList) DeepCopyInto(out *DynaKubeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DynaKubeList) DeepCopyObject ¶
func (in *DynaKubeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DynaKubeProxy ¶
type DynaKubeProxy struct { Value string `json:"value,omitempty"` ValueFrom string `json:"valueFrom,omitempty"` }
func (*DynaKubeProxy) DeepCopy ¶
func (in *DynaKubeProxy) DeepCopy() *DynaKubeProxy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynaKubeProxy.
func (*DynaKubeProxy) DeepCopyInto ¶
func (in *DynaKubeProxy) DeepCopyInto(out *DynaKubeProxy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DynaKubeSpec ¶
type DynaKubeSpec struct { // Optional: Set custom proxy settings either directly or from a secret with the field 'proxy' Proxy *DynaKubeProxy `json:"proxy,omitempty"` // General configuration about OneAgent instances OneAgent OneAgentSpec `json:"oneAgent,omitempty"` // General configuration about ActiveGate instances ActiveGate ActiveGateSpec `json:"activeGate,omitempty"` // Location of the Dynatrace API to connect to, including your specific environment UUID // +kubebuilder:validation:Required // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="API URL",order=1,xDescriptors="urn:alm:descriptor:com.tectonic.ui:text" APIURL string `json:"apiUrl"` // Credentials for the DynaKube to connect back to Dynatrace. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="API and PaaS Tokens",order=2,xDescriptors="urn:alm:descriptor:io.kubernetes:Secret" Tokens string `json:"tokens,omitempty"` // Optional: Pull secret for your private registry // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Custom PullSecret",order=8,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:Secret"} CustomPullSecret string `json:"customPullSecret,omitempty"` // Optional: Adds custom RootCAs from a configmap // This property only affects certificates used to communicate with the Dynatrace API. // The property is not applied to the ActiveGate // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Trusted CAs",order=6,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:ConfigMap"} TrustedCAs string `json:"trustedCAs,omitempty"` // Optional: Sets Network Zone for OneAgent and ActiveGate pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Network Zone",order=7,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} NetworkZone string `json:"networkZone,omitempty"` // Configuration for ClassicFullStack Monitoring ClassicFullStack FullStackSpec `json:"classicFullStack,omitempty"` // Configuration for Routing // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Routing" // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text" RoutingSpec RoutingSpec `json:"routing,omitempty"` // Configuration for Kubernetes Monitoring // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Kubernetes Monitoring" // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text" KubernetesMonitoringSpec KubernetesMonitoringSpec `json:"kubernetesMonitoring,omitempty"` // Disable certificate validation checks for installer download and API communication // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Skip Certificate Check",order=3,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} SkipCertCheck bool `json:"skipCertCheck,omitempty"` // If enabled, Istio on the cluster will be configured automatically to allow access to the Dynatrace environment // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Enable Istio automatic management",order=9,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} EnableIstio bool `json:"enableIstio,omitempty"` }
DynaKubeSpec defines the desired state of DynaKube +k8s:openapi-gen=true
func (*DynaKubeSpec) DeepCopy ¶
func (in *DynaKubeSpec) DeepCopy() *DynaKubeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynaKubeSpec.
func (*DynaKubeSpec) DeepCopyInto ¶
func (in *DynaKubeSpec) DeepCopyInto(out *DynaKubeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DynaKubeStatus ¶
type DynaKubeStatus struct { OneAgent OneAgentStatus `json:"oneAgent,omitempty"` ActiveGate ActiveGateStatus `json:"activeGate,omitempty"` // UpdatedTimestamp indicates when the instance was last updated // +operator-sdk:gen-csv:customresourcedefinitions.statusDescriptors=true // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Last Updated" // +operator-sdk:gen-csv:customresourcedefinitions.statusDescriptors.x-descriptors="urn:alm:descriptor:text" UpdatedTimestamp metav1.Time `json:"updatedTimestamp,omitempty"` // LastAPITokenProbeTimestamp tracks when the last request for the API token validity was sent LastAPITokenProbeTimestamp *metav1.Time `json:"lastAPITokenProbeTimestamp,omitempty"` // LastPaaSTokenProbeTimestamp tracks when the last request for the PaaS token validity was sent LastPaaSTokenProbeTimestamp *metav1.Time `json:"lastPaaSTokenProbeTimestamp,omitempty"` // LastClusterVersionProbeTimestamp indicates when the cluster's version was last checked LastClusterVersionProbeTimestamp *metav1.Time `json:"lastClusterVersionProbeTimestamp,omitempty"` // Defines the current state (Running, Updating, Error, ...) Phase status.DeploymentPhase `json:"phase,omitempty"` // Credentials used to connect back to Dynatrace. // +operator-sdk:gen-csv:customresourcedefinitions.statusDescriptors=true // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="API and PaaS Tokens" // +operator-sdk:gen-csv:customresourcedefinitions.statusDescriptors.x-descriptors="urn:alm:descriptor:text" Tokens string `json:"tokens,omitempty"` // EnvironmentID contains the environment UUID corresponding to the API URL EnvironmentID string `json:"environmentID,omitempty"` // Conditions includes status about the current state of the instance Conditions []metav1.Condition `json:"conditions,omitempty"` }
DynaKubeStatus defines the observed state of DynaKube +k8s:openapi-gen=true
func (*DynaKubeStatus) DeepCopy ¶
func (in *DynaKubeStatus) DeepCopy() *DynaKubeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynaKubeStatus.
func (*DynaKubeStatus) DeepCopyInto ¶
func (in *DynaKubeStatus) DeepCopyInto(out *DynaKubeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DynaKubeStatus) SetPhase ¶
func (dk *DynaKubeStatus) SetPhase(phase status.DeploymentPhase) bool
SetPhase sets the status phase on the DynaKube object.
type DynaKubeValueSource ¶
type DynaKubeValueSource struct { // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Custom properties value",order=32,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Value string `json:"value,omitempty"` // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Custom properties secret",order=33,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:Secret"} ValueFrom string `json:"valueFrom,omitempty"` }
func (*DynaKubeValueSource) DeepCopy ¶
func (in *DynaKubeValueSource) DeepCopy() *DynaKubeValueSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DynaKubeValueSource.
func (*DynaKubeValueSource) DeepCopyInto ¶
func (in *DynaKubeValueSource) DeepCopyInto(out *DynaKubeValueSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FullStackSpec ¶
type FullStackSpec struct { // Node selector to control the selection of nodes (optional) // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Node Selector",order=17,xDescriptors="urn:alm:descriptor:com.tectonic.ui:selector:Node" NodeSelector map[string]string `json:"nodeSelector,omitempty"` // Optional: Defines the time to wait until OneAgent pod is ready after update - default 300 sec // +kubebuilder:validation:Minimum=0 // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Wait seconds until ready",order=19,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:number"} WaitReadySeconds *uint16 `json:"waitReadySeconds,omitempty"` // Optional: Adds additional labels for the OneAgent pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Labels",order=26,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Labels map[string]string `json:"labels,omitempty"` // Optional: Runs the OneAgent Pods as unprivileged (Early Adopter) // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Use unprivileged mode",order=27,xDescriptors="urn:alm:descriptor:com.tectonic.ui:selector:booleanSwitch" UseUnprivilegedMode *bool `json:"useUnprivilegedMode,omitempty"` // Optional: If specified, indicates the pod's priority. Name must be defined by creating a PriorityClass object with that // name. If not specified the setting will be removed from the DaemonSet. // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Priority Class name",order=23,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:PriorityClass"} PriorityClassName string `json:"priorityClassName,omitempty"` // Optional: Sets DNS Policy for the OneAgent pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="DNS Policy",order=24,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} DNSPolicy corev1.DNSPolicy `json:"dnsPolicy,omitempty"` // Optional: set custom Service Account Name used with OneAgent pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Service Account name",order=25,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:io.kubernetes:ServiceAccount"} ServiceAccountName string `json:"serviceAccountName,omitempty"` // Optional: define resources requests and limits for single pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Resource Requirements",order=20,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:resourceRequirements"} Resources corev1.ResourceRequirements `json:"resources,omitempty"` // Optional: set tolerations for the OneAgent pods // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Tolerations",order=18,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:hidden"} Tolerations []corev1.Toleration `json:"tolerations,omitempty"` // Optional: Arguments to the OneAgent installer // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="OneAgent installer arguments",order=21,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:hidden"} Args []string `json:"args,omitempty"` // Optional: List of environment variables to set for the installer // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="OneAgent environment variable installer arguments",order=22,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:hidden"} Env []corev1.EnvVar `json:"env,omitempty"` // Enables FullStack Monitoring // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="FullStack Monitoring",order=16,xDescriptors="urn:alm:descriptor:com.tectonic.ui:selector:booleanSwitch" Enabled bool `json:"enabled,omitempty"` // Defines if you want to use the immutable image or the installer // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Use immutable image",order=28,xDescriptors="urn:alm:descriptor:com.tectonic.ui:selector:booleanSwitch" UseImmutableImage bool `json:"useImmutableImage,omitempty"` }
func (*FullStackSpec) DeepCopy ¶
func (in *FullStackSpec) DeepCopy() *FullStackSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FullStackSpec.
func (*FullStackSpec) DeepCopyInto ¶
func (in *FullStackSpec) DeepCopyInto(out *FullStackSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageStatus ¶
type ImageStatus struct { // LastImageProbeTimestamp defines the last timestamp when the querying for image updates have been done. LastImageProbeTimestamp *metav1.Time `json:"lastImageProbeTimestamp,omitempty"` // ImageHash contains the last image hash seen. ImageHash string `json:"imageHash,omitempty"` // ImageVersion contains the version from the last image seen. ImageVersion string `json:"imageVersion,omitempty"` }
func (*ImageStatus) DeepCopy ¶
func (in *ImageStatus) DeepCopy() *ImageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageStatus.
func (*ImageStatus) DeepCopyInto ¶
func (in *ImageStatus) DeepCopyInto(out *ImageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubernetesMonitoringSpec ¶
type KubernetesMonitoringSpec struct {
CapabilityProperties `json:",inline"`
}
func (*KubernetesMonitoringSpec) DeepCopy ¶
func (in *KubernetesMonitoringSpec) DeepCopy() *KubernetesMonitoringSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubernetesMonitoringSpec.
func (*KubernetesMonitoringSpec) DeepCopyInto ¶
func (in *KubernetesMonitoringSpec) DeepCopyInto(out *KubernetesMonitoringSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OneAgentInstance ¶
type OneAgentInstance struct { PodName string `json:"podName,omitempty"` Version string `json:"version,omitempty"` IPAddress string `json:"ipAddress,omitempty"` }
func (*OneAgentInstance) DeepCopy ¶
func (in *OneAgentInstance) DeepCopy() *OneAgentInstance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OneAgentInstance.
func (*OneAgentInstance) DeepCopyInto ¶
func (in *OneAgentInstance) DeepCopyInto(out *OneAgentInstance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OneAgentSpec ¶
type OneAgentSpec struct { // Disable automatic restarts of OneAgent pods in case a new version is available // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Automatically update Agent",order=13,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:booleanSwitch"} AutoUpdate *bool `json:"autoUpdate,omitempty"` // Optional: If specified, indicates the OneAgent version to use // Defaults to latest // Example: {major.minor.release} - 1.200.0 // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="OneAgent version",order=11,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Version string `json:"version,omitempty"` // Optional: the Dynatrace installer container image // Defaults to docker.io/dynatrace/oneagent:latest for Kubernetes and to registry.connect.redhat.com/dynatrace/oneagent for OpenShift // +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Image",order=12,xDescriptors={"urn:alm:descriptor:com.tectonic.ui:advanced","urn:alm:descriptor:com.tectonic.ui:text"} Image string `json:"image,omitempty"` }
func (*OneAgentSpec) DeepCopy ¶
func (in *OneAgentSpec) DeepCopy() *OneAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OneAgentSpec.
func (*OneAgentSpec) DeepCopyInto ¶
func (in *OneAgentSpec) DeepCopyInto(out *OneAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OneAgentStatus ¶
type OneAgentStatus struct { ImageStatus `json:",inline"` Instances map[string]OneAgentInstance `json:"instances,omitempty"` // LastUpdateProbeTimestamp defines the last timestamp when the querying for updates have been done LastUpdateProbeTimestamp *metav1.Time `json:"lastUpdateProbeTimestamp,omitempty"` // Dynatrace version being used. // +operator-sdk:csv:customresourcedefinitions:type=status,displayName="Version",order=1,xDescriptors="urn:alm:descriptor:com.tectonic.ui:text" Version string `json:"version,omitempty"` // UseImmutableImage is set when an immutable image is currently in use UseImmutableImage bool `json:"useImmutableImage,omitempty"` }
func (*OneAgentStatus) DeepCopy ¶
func (in *OneAgentStatus) DeepCopy() *OneAgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OneAgentStatus.
func (*OneAgentStatus) DeepCopyInto ¶
func (in *OneAgentStatus) DeepCopyInto(out *OneAgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoutingSpec ¶
type RoutingSpec struct {
CapabilityProperties `json:",inline"`
}
func (*RoutingSpec) DeepCopy ¶
func (in *RoutingSpec) DeepCopy() *RoutingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingSpec.
func (*RoutingSpec) DeepCopyInto ¶
func (in *RoutingSpec) DeepCopyInto(out *RoutingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.