Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the v1 API group +kubebuilder:object:generate=true +groupName=azurepipelines.k8s.scaler.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "azurepipelines.k8s.scaler.io", Version: "v1"} // 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 AutoScaledAgent ¶
type AutoScaledAgent struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AutoScaledAgentSpec `json:"spec,omitempty"` Status AutoScaledAgentStatus `json:"status,omitempty"` }
AutoScaledAgent is the Schema for the autoscaledagents API
func (*AutoScaledAgent) DeepCopy ¶
func (in *AutoScaledAgent) DeepCopy() *AutoScaledAgent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScaledAgent.
func (*AutoScaledAgent) DeepCopyInto ¶
func (in *AutoScaledAgent) DeepCopyInto(out *AutoScaledAgent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AutoScaledAgent) DeepCopyObject ¶
func (in *AutoScaledAgent) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AutoScaledAgentList ¶
type AutoScaledAgentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AutoScaledAgent `json:"items"` }
AutoScaledAgentList contains a list of AutoScaledAgent
func (*AutoScaledAgentList) DeepCopy ¶
func (in *AutoScaledAgentList) DeepCopy() *AutoScaledAgentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScaledAgentList.
func (*AutoScaledAgentList) DeepCopyInto ¶
func (in *AutoScaledAgentList) DeepCopyInto(out *AutoScaledAgentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AutoScaledAgentList) DeepCopyObject ¶
func (in *AutoScaledAgentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AutoScaledAgentSpec ¶
type AutoScaledAgentSpec struct { // PoolName is the name of the Azure DevOps pool name PoolName string `json:"poolName,omitempty"` // OrganizationUrl is the HTTPS URL to the organization, e.g. https://dev.azure.com/foobar if you use the SaaS version OrganizationUrl string `json:"organizationUrl,omitempty"` // Stores the name of a secret that has a key called "pat" whose value is the Azure DevOps Personal Access Token PersonalAccessTokenSecretName string `json:"personalAccessTokenSecretName,omitempty"` // How many of the most recently started agent Pods that are now in completed / terminated state should be kept. // The controller automatically deletes all other terminated agent pods exceeding this count // +optional // +kubebuilder:validation:Minimum=0 // +kubebuilder:default:=5 MaxTerminatedPodsToKeep *int32 `json:"maxTerminatedPodsToKeep,omitempty"` // If the controller detects a Pod with an idle AZP agent container, how long (after the first detection) should // the controller wait before it terminates the Pod? The controller only terminates it if the AZP agent // container was idle during the entire period. // Expects an unsigned duration string of decimal numbers each with optional // fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m". // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". // +kubebuilder:default:="5m" // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:validation:Type:=string // +optional AgentMinIdlePeriod *metav1.Duration `json:"agentMinIdlePeriod,omitempty"` // How often the garbage collection (=deleting offline Azure DevOps agents) is run. // Expects an unsigned duration string of decimal numbers each with optional // fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m". // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". // +kubebuilder:default:="30m" // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:validation:Type:=string // +optional DummyAgentGarbageCollectionInterval *metav1.Duration `json:"dummyAgentGarbageCollectionInterval,omitempty"` // "Dummy agents" refer to agents registered at run-time by the agent registrator CLI companion tool. // The agent garbage collection only affects dummy agents that have at least this age. // Expects an unsigned duration string of decimal numbers each with optional // fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m". // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". // +kubebuilder:default:="2h" // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:validation:Type:=string // +optional DummyAgentDeletionMinAge *metav1.Duration `json:"dummyAgentDeletionMinAge,omitempty"` // "Normal offline agents" refer to agents that were really running in the K8s cluster (some time ago), but were // not properly unregistered (e.g. because the Pod crashed). // The agent garbage collection only deletes normal offline agents that have at least this age. // Expects an unsigned duration string of decimal numbers each with optional // fraction and a unit suffix, eg "300ms", "1.5h" or "2h45m". // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". // +kubebuilder:default:="5h" // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:validation:Type:=string // +optional NormalOfflineAgentDeletionMinAge *metav1.Duration `json:"normalOfflineAgentDeletionMinAge,omitempty"` // +optional ReusableCacheVolumes []ReusableCacheVolume `json:"reusableCacheVolumes,omitempty"` PodsWithCapabilities []PodsWithCapabilities `json:"podsWithCapabilities,omitempty"` }
AutoScaledAgentSpec defines the desired state of AutoScaledAgent
func (*AutoScaledAgentSpec) DeepCopy ¶
func (in *AutoScaledAgentSpec) DeepCopy() *AutoScaledAgentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScaledAgentSpec.
func (*AutoScaledAgentSpec) DeepCopyInto ¶
func (in *AutoScaledAgentSpec) DeepCopyInto(out *AutoScaledAgentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScaledAgentStatus ¶
type AutoScaledAgentStatus struct { }
AutoScaledAgentStatus defines the observed state of AutoScaledAgent
func (*AutoScaledAgentStatus) DeepCopy ¶
func (in *AutoScaledAgentStatus) DeepCopy() *AutoScaledAgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScaledAgentStatus.
func (*AutoScaledAgentStatus) DeepCopyInto ¶
func (in *AutoScaledAgentStatus) DeepCopyInto(out *AutoScaledAgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodsWithCapabilities ¶
type PodsWithCapabilities struct { Capabilities map[string]string `json:"capabilities,omitempty"` //+kubebuilder:validation:Minimum=0 MinCount *int32 `json:"minCount,omitempty"` //+kubebuilder:validation:Minimum=0 MaxCount *int32 `json:"maxCount,omitempty"` PodLabels map[string]string `json:"podLabels,omitempty"` PodAnnotations map[string]string `json:"podAnnotations,omitempty"` PodTemplateSpec corev1.PodTemplateSpec `json:"podTemplateSpec"` }
func (*PodsWithCapabilities) DeepCopy ¶
func (in *PodsWithCapabilities) DeepCopy() *PodsWithCapabilities
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodsWithCapabilities.
func (*PodsWithCapabilities) DeepCopyInto ¶
func (in *PodsWithCapabilities) DeepCopyInto(out *PodsWithCapabilities)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReusableCacheVolume ¶
type ReusableCacheVolume struct { Name string `json:"name,omitempty"` StorageClassName string `json:"storageClassName,omitempty"` RequestedStorage string `json:"requestedStorage,omitempty"` }
func (*ReusableCacheVolume) DeepCopy ¶
func (in *ReusableCacheVolume) DeepCopy() *ReusableCacheVolume
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReusableCacheVolume.
func (*ReusableCacheVolume) DeepCopyInto ¶
func (in *ReusableCacheVolume) DeepCopyInto(out *ReusableCacheVolume)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.