Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the standard v1alpha1 API group +kubebuilder:object:generate=true +groupName=standard.oam.dev
Index ¶
- Variables
- type Backend
- type BackendServiceRef
- type IssuerType
- type MetricsTrait
- func (in *MetricsTrait) DeepCopy() *MetricsTrait
- func (in *MetricsTrait) DeepCopyInto(out *MetricsTrait)
- func (in *MetricsTrait) DeepCopyObject() runtime.Object
- func (tr *MetricsTrait) GetCondition(c runtimev1alpha1.ConditionType) runtimev1alpha1.Condition
- func (tr *MetricsTrait) GetWorkloadReference() runtimev1alpha1.TypedReference
- func (tr *MetricsTrait) SetConditions(c ...runtimev1alpha1.Condition)
- func (tr *MetricsTrait) SetWorkloadReference(r runtimev1alpha1.TypedReference)
- type MetricsTraitList
- type MetricsTraitSpec
- type MetricsTraitStatus
- type PodSpecWorkload
- func (in *PodSpecWorkload) DeepCopy() *PodSpecWorkload
- func (in *PodSpecWorkload) DeepCopyInto(out *PodSpecWorkload)
- func (in *PodSpecWorkload) DeepCopyObject() runtime.Object
- func (in *PodSpecWorkload) GetCondition(c cpv1alpha1.ConditionType) cpv1alpha1.Condition
- func (in *PodSpecWorkload) SetConditions(c ...cpv1alpha1.Condition)
- type PodSpecWorkloadList
- type PodSpecWorkloadSpec
- type PodSpecWorkloadStatus
- type Route
- func (in *Route) DeepCopy() *Route
- func (in *Route) DeepCopyInto(out *Route)
- func (in *Route) DeepCopyObject() runtime.Object
- func (r *Route) GetCondition(c runtimev1alpha1.ConditionType) runtimev1alpha1.Condition
- func (r *Route) GetWorkloadReference() runtimev1alpha1.TypedReference
- func (r *Route) SetConditions(c ...runtimev1alpha1.Condition)
- func (r *Route) SetWorkloadReference(rt runtimev1alpha1.TypedReference)
- type RouteList
- type RouteSpec
- type RouteStatus
- type Rule
- type ScapeServiceEndPoint
- type TLS
Constants ¶
This section is empty.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "standard.oam.dev", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type Backend ¶ added in v0.0.4
type Backend struct {
// ReadTimeout used for setting read timeout duration for backend service, the unit is second.
ReadTimeout int `json:"readTimeout,omitempty"`
// SendTimeout used for setting send timeout duration for backend service, the unit is second.
SendTimeout int `json:"sendTimeout,omitempty"`
// BackendService specifies the backend K8s service and port, it's optional
BackendService *BackendServiceRef `json:"backendService,omitempty"`
}
Route will automatically discover podSpec and label for BackendService. If BackendService is already set, discovery won't work. If BackendService is not set, the discovery mechanism will work.
func (*Backend) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend.
func (*Backend) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackendServiceRef ¶ added in v0.0.8
type BackendServiceRef struct {
// Port allow you direct specify backend service port.
Port intstr.IntOrString `json:"port"`
// ServiceName allow you direct specify K8s service for backend service.
ServiceName string `json:"serviceName"`
}
BackendServiceRef specifies the backend K8s service and port, if specified, the two fields are all required
func (*BackendServiceRef) DeepCopy ¶ added in v0.0.8
func (in *BackendServiceRef) DeepCopy() *BackendServiceRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendServiceRef.
func (*BackendServiceRef) DeepCopyInto ¶ added in v0.0.8
func (in *BackendServiceRef) DeepCopyInto(out *BackendServiceRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IssuerType ¶ added in v0.0.4
type IssuerType string
const ( ClusterIssuer IssuerType = "ClusterIssuer" NamespaceIssuer IssuerType = "Issuer" )
type MetricsTrait ¶
type MetricsTrait struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec MetricsTraitSpec `json:"spec"`
Status MetricsTraitStatus `json:"status,omitempty"`
}
MetricsTrait is the Schema for the metricstraits API +kubebuilder:resource:categories={oam} +kubebuilder:subresource:status
func (*MetricsTrait) DeepCopy ¶
func (in *MetricsTrait) DeepCopy() *MetricsTrait
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsTrait.
func (*MetricsTrait) DeepCopyInto ¶
func (in *MetricsTrait) DeepCopyInto(out *MetricsTrait)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricsTrait) DeepCopyObject ¶
func (in *MetricsTrait) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MetricsTrait) GetCondition ¶
func (tr *MetricsTrait) GetCondition(c runtimev1alpha1.ConditionType) runtimev1alpha1.Condition
func (*MetricsTrait) GetWorkloadReference ¶
func (tr *MetricsTrait) GetWorkloadReference() runtimev1alpha1.TypedReference
GetWorkloadReference of this ManualScalerTrait.
func (*MetricsTrait) SetConditions ¶
func (tr *MetricsTrait) SetConditions(c ...runtimev1alpha1.Condition)
func (*MetricsTrait) SetWorkloadReference ¶
func (tr *MetricsTrait) SetWorkloadReference(r runtimev1alpha1.TypedReference)
SetWorkloadReference of this ManualScalerTrait.
type MetricsTraitList ¶
type MetricsTraitList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []MetricsTrait `json:"items"`
}
MetricsTraitList contains a list of MetricsTrait
func (*MetricsTraitList) DeepCopy ¶
func (in *MetricsTraitList) DeepCopy() *MetricsTraitList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsTraitList.
func (*MetricsTraitList) DeepCopyInto ¶
func (in *MetricsTraitList) DeepCopyInto(out *MetricsTraitList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MetricsTraitList) DeepCopyObject ¶
func (in *MetricsTraitList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MetricsTraitSpec ¶
type MetricsTraitSpec struct {
// An endpoint to be monitored by a ServiceMonitor.
ScrapeService ScapeServiceEndPoint `json:"scrapeService"`
// WorkloadReference to the workload whose metrics needs to be exposed
WorkloadReference runtimev1alpha1.TypedReference `json:"workloadRef,omitempty"`
}
MetricsTraitSpec defines the desired state of MetricsTrait
func (*MetricsTraitSpec) DeepCopy ¶
func (in *MetricsTraitSpec) DeepCopy() *MetricsTraitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsTraitSpec.
func (*MetricsTraitSpec) DeepCopyInto ¶
func (in *MetricsTraitSpec) DeepCopyInto(out *MetricsTraitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsTraitStatus ¶
type MetricsTraitStatus struct {
runtimev1alpha1.ConditionedStatus `json:",inline"`
// ServiceMonitorNames managed by this trait
ServiceMonitorNames []string `json:"serviceMonitorName,omitempty"`
}
MetricsTraitStatus defines the observed state of MetricsTrait
func (*MetricsTraitStatus) DeepCopy ¶
func (in *MetricsTraitStatus) DeepCopy() *MetricsTraitStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsTraitStatus.
func (*MetricsTraitStatus) DeepCopyInto ¶
func (in *MetricsTraitStatus) DeepCopyInto(out *MetricsTraitStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSpecWorkload ¶ added in v0.0.8
type PodSpecWorkload struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PodSpecWorkloadSpec `json:"spec,omitempty"`
Status PodSpecWorkloadStatus `json:"status,omitempty"`
}
PodSpecWorkload is the Schema for the PodSpec API +kubebuilder:resource:categories={oam} +kubebuilder:subresource:status
func (*PodSpecWorkload) DeepCopy ¶ added in v0.0.8
func (in *PodSpecWorkload) DeepCopy() *PodSpecWorkload
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpecWorkload.
func (*PodSpecWorkload) DeepCopyInto ¶ added in v0.0.8
func (in *PodSpecWorkload) DeepCopyInto(out *PodSpecWorkload)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodSpecWorkload) DeepCopyObject ¶ added in v0.0.8
func (in *PodSpecWorkload) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*PodSpecWorkload) GetCondition ¶ added in v0.0.8
func (in *PodSpecWorkload) GetCondition(c cpv1alpha1.ConditionType) cpv1alpha1.Condition
func (*PodSpecWorkload) SetConditions ¶ added in v0.0.8
func (in *PodSpecWorkload) SetConditions(c ...cpv1alpha1.Condition)
type PodSpecWorkloadList ¶ added in v0.0.8
type PodSpecWorkloadList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []PodSpecWorkload `json:"items"`
}
PodSpecWorkloadList contains a list of PodSpecWorkload
func (*PodSpecWorkloadList) DeepCopy ¶ added in v0.0.8
func (in *PodSpecWorkloadList) DeepCopy() *PodSpecWorkloadList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpecWorkloadList.
func (*PodSpecWorkloadList) DeepCopyInto ¶ added in v0.0.8
func (in *PodSpecWorkloadList) DeepCopyInto(out *PodSpecWorkloadList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodSpecWorkloadList) DeepCopyObject ¶ added in v0.0.8
func (in *PodSpecWorkloadList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodSpecWorkloadSpec ¶ added in v0.0.8
type PodSpecWorkloadSpec struct {
// Replicas is the desired number of replicas of the given podSpec.
// These are replicas in the sense that they are instantiations of the same podSpec.
// If unspecified, defaults to 1.
Replicas *int32 `json:"replicas"`
// PodSpec describes the pods that will be created,
// we omit the meta part as it will be exactly the same as the PodSpecWorkload
PodSpec v1.PodSpec `json:"podSpec"`
}
PodSpecWorkloadSpec defines the desired state of PodSpecWorkload
func (*PodSpecWorkloadSpec) DeepCopy ¶ added in v0.0.8
func (in *PodSpecWorkloadSpec) DeepCopy() *PodSpecWorkloadSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpecWorkloadSpec.
func (*PodSpecWorkloadSpec) DeepCopyInto ¶ added in v0.0.8
func (in *PodSpecWorkloadSpec) DeepCopyInto(out *PodSpecWorkloadSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSpecWorkloadStatus ¶ added in v0.0.8
type PodSpecWorkloadStatus struct {
cpv1alpha1.ConditionedStatus `json:",inline"`
// Resources managed by this workload.
Resources []cpv1alpha1.TypedReference `json:"resources,omitempty"`
}
PodSpecWorkloadStatus defines the observed state of PodSpecWorkload
func (*PodSpecWorkloadStatus) DeepCopy ¶ added in v0.0.8
func (in *PodSpecWorkloadStatus) DeepCopy() *PodSpecWorkloadStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpecWorkloadStatus.
func (*PodSpecWorkloadStatus) DeepCopyInto ¶ added in v0.0.8
func (in *PodSpecWorkloadStatus) DeepCopyInto(out *PodSpecWorkloadStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Route ¶ added in v0.0.4
type Route struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec RouteSpec `json:"spec,omitempty"`
Status RouteStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:resource:categories={oam} +kubebuilder:subresource:status Route is the Schema for the routes API
func (*Route) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.
func (*Route) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Route) DeepCopyObject ¶ added in v0.0.4
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Route) GetCondition ¶ added in v0.0.4
func (r *Route) GetCondition(c runtimev1alpha1.ConditionType) runtimev1alpha1.Condition
func (*Route) GetWorkloadReference ¶ added in v0.0.4
func (r *Route) GetWorkloadReference() runtimev1alpha1.TypedReference
GetWorkloadReference of this ManualScalerTrait.
func (*Route) SetConditions ¶ added in v0.0.4
func (r *Route) SetConditions(c ...runtimev1alpha1.Condition)
func (*Route) SetWorkloadReference ¶ added in v0.0.4
func (r *Route) SetWorkloadReference(rt runtimev1alpha1.TypedReference)
SetWorkloadReference of this ManualScalerTrait.
type RouteList ¶ added in v0.0.4
type RouteList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Route `json:"items"`
}
+kubebuilder:object:root=true RouteList contains a list of Route
func (*RouteList) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteList.
func (*RouteList) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteList) DeepCopyObject ¶ added in v0.0.4
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RouteSpec ¶ added in v0.0.4
type RouteSpec struct {
// WorkloadReference to the workload whose metrics needs to be exposed
WorkloadReference runtimev1alpha1.TypedReference `json:"workloadRef,omitempty"`
// Host is the host of the route
Host string `json:"host"`
// TLS indicate route trait will create SSL secret using cert-manager with specified issuer
// If this is nil, route trait will use a selfsigned issuer
TLS *TLS `json:"tls,omitempty"`
// Rules contain multiple rules of route
Rules []Rule `json:"rules,omitempty"`
// Provider indicate which ingress controller implementation the route trait will use, by default it's nginx-ingress
Provider string `json:"provider,omitempty"`
}
RouteSpec defines the desired state of Route
func (*RouteSpec) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.
func (*RouteSpec) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteStatus ¶ added in v0.0.4
type RouteStatus struct {
Ingresses []runtimev1alpha1.TypedReference `json:"ingresses,omitempty"`
Service *runtimev1alpha1.TypedReference `json:"service,omitempty"`
runtimev1alpha1.ConditionedStatus `json:",inline"`
}
RouteStatus defines the observed state of Route
func (*RouteStatus) DeepCopy ¶ added in v0.0.4
func (in *RouteStatus) DeepCopy() *RouteStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteStatus.
func (*RouteStatus) DeepCopyInto ¶ added in v0.0.4
func (in *RouteStatus) DeepCopyInto(out *RouteStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Rule ¶ added in v0.0.8
type Rule struct {
// Name will become the suffix of underlying ingress created by this rule, if not, will use index as suffix.
Name string `json:"name,omitempty"`
// Path is location Path, default for "/"
Path string `json:"path,omitempty"`
// RewriteTarget will rewrite request from Path to RewriteTarget path.
RewriteTarget string `json:"rewriteTarget,omitempty"`
// CustomHeaders pass a custom list of headers to the backend service.
CustomHeaders map[string]string `json:"customHeaders,omitempty"`
// DefaultBackend will become the ingress default backend if the backend is not available
DefaultBackend *runtimev1alpha1.TypedReference `json:"defaultBackend,omitempty"`
// Backend indicate how to connect backend service
// If it's nil, will auto discovery
Backend *Backend `json:"backend,omitempty"`
}
Rule defines to route rule
func (*Rule) DeepCopy ¶ added in v0.0.8
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Rule.
func (*Rule) DeepCopyInto ¶ added in v0.0.8
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScapeServiceEndPoint ¶
type ScapeServiceEndPoint struct {
// The format of the metrics data,
// The default and only supported format is "prometheus" for now
Format string `json:"format,omitempty"`
// Number or name of the port to access on the pods targeted by the service.
// When this field has value implies that we need to create a service for the workload
// Mutually exclusive with port.
TargetPort intstr.IntOrString `json:"port,omitempty"`
// Route service traffic to pods with label keys and values matching this
// The default is the labels in the workload
// Mutually exclusive with port.
TargetSelector map[string]string `json:"selector,omitempty"`
// HTTP path to scrape for metrics.
// default is /metrics
// +optional
Path string `json:"path,omitempty"`
// Scheme at which metrics should be scraped
// The default and only supported scheme is "http"
// +optional
Scheme string `json:"scheme,omitempty"`
// The default is true
// +optional
Enabled *bool `json:"enabled,omitempty"`
}
ScapeServiceEndPoint defines a scrapeable endpoint serving Prometheus metrics.
func (*ScapeServiceEndPoint) DeepCopy ¶
func (in *ScapeServiceEndPoint) DeepCopy() *ScapeServiceEndPoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScapeServiceEndPoint.
func (*ScapeServiceEndPoint) DeepCopyInto ¶
func (in *ScapeServiceEndPoint) DeepCopyInto(out *ScapeServiceEndPoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLS ¶ added in v0.0.4
type TLS struct {
IssuerName string `json:"issuerName,omitempty"`
// Type indicate the issuer is ClusterIssuer or Issuer(namespace issuer), by default, it's Issuer
// +kubebuilder:default:=Issuer
Type IssuerType `json:"type,omitempty"`
}
func (*TLS) DeepCopy ¶ added in v0.0.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLS.
func (*TLS) DeepCopyInto ¶ added in v0.0.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.