Documentation ¶
Overview ¶
+k8s:deepcopy-gen=package +groupName=fleet.cattle.io
Package v1alpha1 contains API Schema definitions for the fleet.cattle.io v1alpha1 API group +kubebuilder:object:generate=true +groupName=fleet.cattle.io
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type AgentStatus
- type AlphabeticalPolicy
- type Bundle
- type BundleDeployment
- type BundleDeploymentDisplay
- type BundleDeploymentList
- type BundleDeploymentOptions
- type BundleDeploymentResource
- type BundleDeploymentSpec
- type BundleDeploymentStatus
- type BundleDisplay
- type BundleList
- type BundleNamespaceMapping
- type BundleNamespaceMappingList
- type BundleRef
- type BundleResource
- type BundleSpec
- type BundleState
- type BundleStatus
- type BundleSummary
- type BundleTarget
- type BundleTargetRestriction
- type Cluster
- type ClusterDisplay
- type ClusterGroup
- type ClusterGroupDisplay
- type ClusterGroupList
- type ClusterGroupSpec
- type ClusterGroupStatus
- type ClusterList
- type ClusterRegistration
- type ClusterRegistrationList
- type ClusterRegistrationSpec
- type ClusterRegistrationStatus
- type ClusterRegistrationToken
- type ClusterRegistrationTokenList
- type ClusterRegistrationTokenSpec
- type ClusterRegistrationTokenStatus
- type ClusterSpec
- type ClusterStatus
- type CommitSpec
- type ComparePatch
- type ConfigMapKeySelector
- type Content
- type ContentList
- type CorrectDrift
- type DiffOptions
- type FleetYAML
- type GenericMap
- type GitRepo
- type GitRepoDisplay
- type GitRepoList
- type GitRepoResource
- type GitRepoResourceCounts
- type GitRepoRestriction
- type GitRepoRestrictionList
- type GitRepoSpec
- type GitRepoStatus
- type GitTarget
- type HelmOptions
- type IgnoreOptions
- type ImagePolicyChoice
- type ImageScan
- type ImageScanList
- type ImageScanSpec
- type ImageScanStatus
- type ImageScanYAML
- type KustomizeOptions
- type LocalObjectReference
- type ModifiedStatus
- type NonReadyResource
- type NonReadyStatus
- type OCIRegistrySpec
- type Operation
- type Partition
- type PartitionStatus
- type ResourceKey
- type ResourcePerClusterState
- type RolloutStrategy
- type SecretKeySelector
- type SemVerPolicy
- type ValuesFrom
- type YAMLOptions
Constants ¶
const ( // BundleConditionReady is unused. A "Ready" condition on a bundle // indicates that its resources are ready and the dependencies are // fulfilled. BundleConditionReady = "Ready" // BundleDeploymentConditionReady is the condition that displays for // status in general and it is used for the readiness of resources. BundleDeploymentConditionReady = "Ready" // BundleDeploymentConditionInstalled indicates the bundledeployment // has been installed. BundleDeploymentConditionInstalled = "Installed" // BundleDeploymentConditionDeployed is used by the bundledeployment // controller. It is true if the handler returns no error and false if // an error is returned. BundleDeploymentConditionDeployed = "Deployed" BundleDeploymentConditionMonitored = "Monitored" )
const ( ImageScanScanCondition = "ImageScanned" ImageScanSyncCondition = "ImageSynced" )
const BundleDeploymentResourceNamePlural = "bundledeployments"
const ClusterGroupConditionProcessed = "Processed"
ClusterGroupConditionProcessed indicates that the status fields have been processed.
const ClusterRegistrationResourceNamePlural = "clusterregistrations"
const ClusterResourceNamePlural = "clusters"
const ContentResourceNamePlural = "contents"
const (
GitRepoAcceptedCondition = "Accepted"
)
const MaxHelmReleaseNameLen = 53
MaxHelmReleaseNameLen is the maximum length of a Helm release name. See https://github.com/helm/helm/blob/293b50c65d4d56187cd4e2f390f0ada46b4c4737/pkg/chartutil/validate_name.go#L54-L61
Variables ¶
var ( // ClusterConditionReady indicates that all bundles in this cluster // have been deployed and all resources are ready. ClusterConditionReady = "Ready" // ClusterConditionProcessed indicates that the status fields have been // processed. ClusterConditionProcessed = "Processed" // ClusterNamespaceAnnotation used on a cluster namespace to refer to // the cluster registration namespace, which contains the cluster // resource. ClusterNamespaceAnnotation = "fleet.cattle.io/cluster-namespace" // ClusterAnnotation used on a cluster namespace to refer to the // cluster name for that namespace. ClusterAnnotation = "fleet.cattle.io/cluster" // ClusterRegistrationAnnotation is the name of the // ClusterRegistration, it's added to the request service account. ClusterRegistrationAnnotation = "fleet.cattle.io/cluster-registration" // ClusterRegistrationTokenAnnotation is the namespace of the // clusterregistration, e.g. "fleet-local". ClusterRegistrationNamespaceAnnotation = "fleet.cattle.io/cluster-registration-namespace" // ManagedLabel is used for clean up. Cluster namespaces and other // resources with this label will be cleaned up. Used in Rancher to // identify fleet namespaces. ManagedLabel = "fleet.cattle.io/managed" // ClusterNamespaceLabel is used on a bundledeployment to refer to the // cluster registration namespace of the targeted cluster. ClusterNamespaceLabel = "fleet.cattle.io/cluster-namespace" // ClusterLabel is used on a bundledeployment to refer to the targeted // cluster ClusterLabel = "fleet.cattle.io/cluster" )
var ( CommitLabel = "fleet.cattle.io/commit" RepoLabel = "fleet.cattle.io/repo-name" BundleLabel = "fleet.cattle.io/bundle-name" BundleNamespaceLabel = "fleet.cattle.io/bundle-namespace" )
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "fleet.cattle.io", Version: "v1alpha1"} // InternalSchemeBuilder is used to add go types to the GroupVersionKind scheme InternalSchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // Compatibility with k8s.io/apimachinery/pkg/runtime.Object SchemeBuilder = InternalSchemeBuilder.SchemeBuilder // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = InternalSchemeBuilder.AddToScheme )
var ( // StateRank ranks the state, e.g. so the highest ranked non-ready // state can be reported in a summary. StateRank = map[BundleState]int{ ErrApplied: 7, WaitApplied: 6, Modified: 5, OutOfSync: 4, Pending: 3, NotReady: 2, Ready: 1, } )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AgentStatus ¶
type AgentStatus struct { // LastSeen is the last time the agent checked in to update the status // of the cluster resource. // +nullable // +optional LastSeen metav1.Time `json:"lastSeen"` // Namespace is the namespace of the agent deployment, e.g. "cattle-fleet-system". // +nullable // +optional Namespace string `json:"namespace"` }
func (*AgentStatus) DeepCopy ¶
func (in *AgentStatus) DeepCopy() *AgentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AgentStatus.
func (*AgentStatus) DeepCopyInto ¶
func (in *AgentStatus) DeepCopyInto(out *AgentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlphabeticalPolicy ¶
type AlphabeticalPolicy struct { // Order specifies the sorting order of the tags. Given the letters of the // alphabet as tags, ascending order would select Z, and descending order // would select A. // +optional // +nullable Order string `json:"order,omitempty"` }
AlphabeticalPolicy specifies a alphabetical ordering policy.
func (*AlphabeticalPolicy) DeepCopy ¶
func (in *AlphabeticalPolicy) DeepCopy() *AlphabeticalPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlphabeticalPolicy.
func (*AlphabeticalPolicy) DeepCopyInto ¶
func (in *AlphabeticalPolicy) DeepCopyInto(out *AlphabeticalPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Bundle ¶
type Bundle struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +optional Spec BundleSpec `json:"spec"` // +optional Status BundleStatus `json:"status"` }
Bundle contains the resources of an application and its deployment options. It will be deployed as a Helm chart to target clusters.
When a GitRepo is scanned it will produce one or more bundles. Bundles are a collection of resources that get deployed to one or more cluster(s). Bundle is the fundamental deployment unit used in Fleet. The contents of a Bundle may be Kubernetes manifests, Kustomize configuration, or Helm charts. Regardless of the source the contents are dynamically rendered into a Helm chart by the agent and installed into the downstream cluster as a Helm release.
func (*Bundle) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bundle.
func (*Bundle) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Bundle) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleDeployment ¶
type BundleDeployment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec BundleDeploymentSpec `json:"spec,omitempty"` Status BundleDeploymentStatus `json:"status,omitempty"` }
BundleDeployment is used internally by Fleet and should not be used directly. When a Bundle is deployed to a cluster an instance of a Bundle is called a BundleDeployment. A BundleDeployment represents the state of that Bundle on a specific cluster with its cluster-specific customizations. The Fleet agent is only aware of BundleDeployment resources that are created for the cluster the agent is managing.
func (*BundleDeployment) DeepCopy ¶
func (in *BundleDeployment) DeepCopy() *BundleDeployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeployment.
func (*BundleDeployment) DeepCopyInto ¶
func (in *BundleDeployment) DeepCopyInto(out *BundleDeployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleDeployment) DeepCopyObject ¶
func (in *BundleDeployment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleDeploymentDisplay ¶
type BundleDeploymentDisplay struct { // +nullable Deployed string `json:"deployed,omitempty"` // +nullable Monitored string `json:"monitored,omitempty"` // +nullable State string `json:"state,omitempty"` }
func (*BundleDeploymentDisplay) DeepCopy ¶
func (in *BundleDeploymentDisplay) DeepCopy() *BundleDeploymentDisplay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeploymentDisplay.
func (*BundleDeploymentDisplay) DeepCopyInto ¶
func (in *BundleDeploymentDisplay) DeepCopyInto(out *BundleDeploymentDisplay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleDeploymentList ¶
type BundleDeploymentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []BundleDeployment `json:"items"` }
BundleDeploymentList contains a list of BundleDeployment
func (*BundleDeploymentList) DeepCopy ¶
func (in *BundleDeploymentList) DeepCopy() *BundleDeploymentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeploymentList.
func (*BundleDeploymentList) DeepCopyInto ¶
func (in *BundleDeploymentList) DeepCopyInto(out *BundleDeploymentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleDeploymentList) DeepCopyObject ¶
func (in *BundleDeploymentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleDeploymentOptions ¶
type BundleDeploymentOptions struct { // DefaultNamespace is the namespace to use for resources that do not // specify a namespace. This field is not used to enforce or lock down // the deployment to a specific namespace. // +nullable DefaultNamespace string `json:"defaultNamespace,omitempty"` // TargetNamespace if present will assign all resource to this // namespace and if any cluster scoped resource exists the deployment // will fail. // +nullable TargetNamespace string `json:"namespace,omitempty"` // Kustomize options for the deployment, like the dir containing the // kustomization.yaml file. // +nullable Kustomize *KustomizeOptions `json:"kustomize,omitempty"` // Helm options for the deployment, like the chart name, repo and values. // +optional Helm *HelmOptions `json:"helm,omitempty"` // ServiceAccount which will be used to perform this deployment. // +nullable ServiceAccount string `json:"serviceAccount,omitempty"` // ForceSyncGeneration is used to force a redeployment ForceSyncGeneration int64 `json:"forceSyncGeneration,omitempty"` // YAML options, if using raw YAML these are names that map to // overlays/{name} files that will be used to replace or patch a resource. // +nullable YAML *YAMLOptions `json:"yaml,omitempty"` // Diff can be used to ignore the modified state of objects which are amended at runtime. // +nullable Diff *DiffOptions `json:"diff,omitempty"` // KeepResources can be used to keep the deployed resources when removing the bundle KeepResources bool `json:"keepResources,omitempty"` // DeleteNamespace can be used to delete the deployed namespace when removing the bundle DeleteNamespace bool `json:"deleteNamespace,omitempty"` //IgnoreOptions can be used to ignore fields when monitoring the bundle. // +optional IgnoreOptions `json:"ignore,omitempty"` // CorrectDrift specifies how drift correction should work. CorrectDrift *CorrectDrift `json:"correctDrift,omitempty"` // NamespaceLabels are labels that will be appended to the namespace created by Fleet. // +nullable NamespaceLabels map[string]string `json:"namespaceLabels,omitempty"` // NamespaceAnnotations are annotations that will be appended to the namespace created by Fleet. // +nullable NamespaceAnnotations map[string]string `json:"namespaceAnnotations,omitempty"` // DeleteCRDResources deletes CRDs. Warning! this will also delete all your Custom Resources. DeleteCRDResources bool `json:"deleteCRDResources,omitempty"` }
func (*BundleDeploymentOptions) DeepCopy ¶
func (in *BundleDeploymentOptions) DeepCopy() *BundleDeploymentOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeploymentOptions.
func (*BundleDeploymentOptions) DeepCopyInto ¶
func (in *BundleDeploymentOptions) DeepCopyInto(out *BundleDeploymentOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleDeploymentResource ¶
type BundleDeploymentResource struct { // +nullable Kind string `json:"kind,omitempty"` // +nullable APIVersion string `json:"apiVersion,omitempty"` // +nullable Namespace string `json:"namespace,omitempty"` // +nullable Name string `json:"name,omitempty"` // +nullable CreatedAt metav1.Time `json:"createdAt,omitempty"` }
BundleDeploymentResource contains the metadata of a deployed resource.
func (*BundleDeploymentResource) DeepCopy ¶
func (in *BundleDeploymentResource) DeepCopy() *BundleDeploymentResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeploymentResource.
func (*BundleDeploymentResource) DeepCopyInto ¶
func (in *BundleDeploymentResource) DeepCopyInto(out *BundleDeploymentResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleDeploymentSpec ¶
type BundleDeploymentSpec struct { // Paused if set to true, will stop any BundleDeployments from being // updated. If true, BundleDeployments will be marked as out of sync // when changes are detected. Paused bool `json:"paused,omitempty"` // StagedOptions are the deployment options, that are staged for // the next deployment. StagedOptions BundleDeploymentOptions `json:"stagedOptions,omitempty"` // StagedDeploymentID is the ID of the staged deployment. // +nullable StagedDeploymentID string `json:"stagedDeploymentID,omitempty"` // Options are the deployment options, that are currently applied. Options BundleDeploymentOptions `json:"options,omitempty"` // DeploymentID is the ID of the currently applied deployment. // +nullable DeploymentID string `json:"deploymentID,omitempty"` // DependsOn refers to the bundles which must be ready before this bundle can be deployed. // +nullable DependsOn []BundleRef `json:"dependsOn,omitempty"` // CorrectDrift specifies how drift correction should work. CorrectDrift *CorrectDrift `json:"correctDrift,omitempty"` // OCIContents is true when this deployment's contents is stored in an oci registry OCIContents bool `json:"ociContents,omitempty"` }
func (*BundleDeploymentSpec) DeepCopy ¶
func (in *BundleDeploymentSpec) DeepCopy() *BundleDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeploymentSpec.
func (*BundleDeploymentSpec) DeepCopyInto ¶
func (in *BundleDeploymentSpec) DeepCopyInto(out *BundleDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleDeploymentStatus ¶
type BundleDeploymentStatus struct { // +nullable Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"` // +nullable AppliedDeploymentID string `json:"appliedDeploymentID,omitempty"` // Release is the Helm release ID // +nullable Release string `json:"release,omitempty"` Ready bool `json:"ready,omitempty"` NonModified bool `json:"nonModified,omitempty"` // +nullable NonReadyStatus []NonReadyStatus `json:"nonReadyStatus,omitempty"` // +nullable ModifiedStatus []ModifiedStatus `json:"modifiedStatus,omitempty"` // +nullable Display BundleDeploymentDisplay `json:"display,omitempty"` // +nullable SyncGeneration *int64 `json:"syncGeneration,omitempty"` // Resources lists the metadata of resources that were deployed // according to the helm release history. // +nullable Resources []BundleDeploymentResource `json:"resources,omitempty"` }
func (*BundleDeploymentStatus) DeepCopy ¶
func (in *BundleDeploymentStatus) DeepCopy() *BundleDeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDeploymentStatus.
func (*BundleDeploymentStatus) DeepCopyInto ¶
func (in *BundleDeploymentStatus) DeepCopyInto(out *BundleDeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleDisplay ¶
type BundleDisplay struct { // ReadyClusters is a string in the form "%d/%d", that describes the // number of clusters that are ready vs. the number of clusters desired // to be ready. // +nullable ReadyClusters string `json:"readyClusters,omitempty"` // State is a summary state for the bundle, calculated over the non-ready resources. // +nullable State string `json:"state,omitempty"` }
BundleDisplay contains the number of ready, desiredready clusters and a summary state for the bundle.
func (*BundleDisplay) DeepCopy ¶
func (in *BundleDisplay) DeepCopy() *BundleDisplay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleDisplay.
func (*BundleDisplay) DeepCopyInto ¶
func (in *BundleDisplay) DeepCopyInto(out *BundleDisplay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleList ¶
type BundleList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Bundle `json:"items"` }
BundleList contains a list of Bundle
func (*BundleList) DeepCopy ¶
func (in *BundleList) DeepCopy() *BundleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleList.
func (*BundleList) DeepCopyInto ¶
func (in *BundleList) DeepCopyInto(out *BundleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleList) DeepCopyObject ¶
func (in *BundleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleNamespaceMapping ¶
type BundleNamespaceMapping struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +nullable BundleSelector *metav1.LabelSelector `json:"bundleSelector,omitempty"` // +nullable NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty"` }
BundleNamespaceMapping maps bundles to clusters in other namespaces.
func (*BundleNamespaceMapping) DeepCopy ¶
func (in *BundleNamespaceMapping) DeepCopy() *BundleNamespaceMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleNamespaceMapping.
func (*BundleNamespaceMapping) DeepCopyInto ¶
func (in *BundleNamespaceMapping) DeepCopyInto(out *BundleNamespaceMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleNamespaceMapping) DeepCopyObject ¶
func (in *BundleNamespaceMapping) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleNamespaceMappingList ¶
type BundleNamespaceMappingList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []BundleNamespaceMapping `json:"items"` }
BundleNamespaceMappingList contains a list of BundleNamespaceMapping
func (*BundleNamespaceMappingList) DeepCopy ¶
func (in *BundleNamespaceMappingList) DeepCopy() *BundleNamespaceMappingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleNamespaceMappingList.
func (*BundleNamespaceMappingList) DeepCopyInto ¶
func (in *BundleNamespaceMappingList) DeepCopyInto(out *BundleNamespaceMappingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*BundleNamespaceMappingList) DeepCopyObject ¶
func (in *BundleNamespaceMappingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type BundleRef ¶
type BundleRef struct { // Name of the bundle. // +nullable Name string `json:"name,omitempty"` // Selector matching bundle's labels. // +nullable Selector *metav1.LabelSelector `json:"selector,omitempty"` }
func (*BundleRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleRef.
func (*BundleRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleResource ¶
type BundleResource struct { // Name of the resource, can include the bundle's internal path. // +nullable Name string `json:"name,omitempty"` // The content of the resource, can be compressed. // +nullable Content string `json:"content,omitempty"` // Encoding is either empty or "base64+gz". // +nullable Encoding string `json:"encoding,omitempty"` }
BundleResource represents the content of a single resource from the bundle, like a YAML manifest.
func (*BundleResource) DeepCopy ¶
func (in *BundleResource) DeepCopy() *BundleResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleResource.
func (*BundleResource) DeepCopyInto ¶
func (in *BundleResource) DeepCopyInto(out *BundleResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleSpec ¶
type BundleSpec struct { BundleDeploymentOptions `json:",inline"` // Paused if set to true, will stop any BundleDeployments from being updated. It will be marked as out of sync. Paused bool `json:"paused,omitempty"` // RolloutStrategy controls the rollout of bundles, by defining // partitions, canaries and percentages for cluster availability. // +nullable RolloutStrategy *RolloutStrategy `json:"rolloutStrategy,omitempty"` // Resources contains the resources that were read from the bundle's // path. This includes the content of downloaded helm charts. // +nullable Resources []BundleResource `json:"resources,omitempty"` // Targets refer to the clusters which will be deployed to. // Targets are evaluated in order and the first one to match is used. Targets []BundleTarget `json:"targets,omitempty"` // TargetRestrictions is an allow list, which controls if a bundledeployment is created for a target. TargetRestrictions []BundleTargetRestriction `json:"targetRestrictions,omitempty"` // DependsOn refers to the bundles which must be ready before this bundle can be deployed. // +nullable DependsOn []BundleRef `json:"dependsOn,omitempty"` // ContentsID stores the contents id when deploying contents using an OCI registry. // +nullable ContentsID string `json:"contentsId,omitempty"` }
func (*BundleSpec) DeepCopy ¶
func (in *BundleSpec) DeepCopy() *BundleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleSpec.
func (*BundleSpec) DeepCopyInto ¶
func (in *BundleSpec) DeepCopyInto(out *BundleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleState ¶
type BundleState string
const ( // Ready: Bundles have been deployed and all resources are ready. Ready BundleState = "Ready" // NotReady: Bundles have been deployed and some resources are not // ready. NotReady BundleState = "NotReady" // WaitApplied: Bundles have been synced from Fleet controller and // downstream cluster, but are waiting to be deployed. WaitApplied BundleState = "WaitApplied" // ErrApplied: Bundles have been synced from the Fleet controller and // the downstream cluster, but there were some errors when deploying // the Bundle. ErrApplied BundleState = "ErrApplied" // OutOfSync: Bundles have been synced from Fleet controller, but // downstream agent hasn't synced the change yet. OutOfSync BundleState = "OutOfSync" // Pending: Bundles are being processed by Fleet controller. Pending BundleState = "Pending" // Modified: Bundles have been deployed and all resources are ready, // but there are some changes that were not made from the Git // Repository. Modified BundleState = "Modified" )
type BundleStatus ¶
type BundleStatus struct { // Conditions is a list of Wrangler conditions that describe the state // of the bundle. // +optional Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"` // Summary contains the number of bundle deployments in each state and // a list of non-ready resources. Summary BundleSummary `json:"summary,omitempty"` // NewlyCreated is the number of bundle deployments that have been created, // not updated. NewlyCreated int `json:"newlyCreated,omitempty"` // where the AppliedDeploymentID in the status does not match the // DeploymentID from the spec. // +optional Unavailable int `json:"unavailable"` // +optional UnavailablePartitions int `json:"unavailablePartitions"` // rollout configuration. // +optional MaxUnavailable int `json:"maxUnavailable"` // partitions. The rollout configuration defines a maximum number or // percentage of unavailable partitions. // +optional MaxUnavailablePartitions int `json:"maxUnavailablePartitions"` // MaxNew is always 50. A bundle change can only stage 50 // bundledeployments at a time. MaxNew int `json:"maxNew,omitempty"` // PartitionStatus lists the status of each partition. PartitionStatus []PartitionStatus `json:"partitions,omitempty"` // Display contains the number of ready, desiredready clusters and a // summary state for the bundle's resources. Display BundleDisplay `json:"display,omitempty"` // ResourceKey lists resources, which will likely be deployed. The // actual list of resources on a cluster might differ, depending on the // helm chart, value templating, etc.. // +nullable ResourceKey []ResourceKey `json:"resourceKey,omitempty"` // OCIReference is the OCI reference used to store contents, this is // only for informational purposes. OCIReference string `json:"ociReference,omitempty"` // ObservedGeneration is the current generation of the bundle. // +optional ObservedGeneration int64 `json:"observedGeneration"` // ResourcesSHA256Sum corresponds to the JSON serialization of the .Spec.Resources field ResourcesSHA256Sum string `json:"resourcesSha256Sum,omitempty"` }
func (*BundleStatus) DeepCopy ¶
func (in *BundleStatus) DeepCopy() *BundleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleStatus.
func (*BundleStatus) DeepCopyInto ¶
func (in *BundleStatus) DeepCopyInto(out *BundleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleSummary ¶
type BundleSummary struct { // NotReady is the number of bundle deployments that have been deployed // where some resources are not ready. NotReady int `json:"notReady,omitempty"` // WaitApplied is the number of bundle deployments that have been // synced from Fleet controller and downstream cluster, but are waiting // to be deployed. WaitApplied int `json:"waitApplied,omitempty"` // ErrApplied is the number of bundle deployments that have been synced // from the Fleet controller and the downstream cluster, but with some // errors when deploying the bundle. ErrApplied int `json:"errApplied,omitempty"` // OutOfSync is the number of bundle deployments that have been synced // from Fleet controller, but not yet by the downstream agent. OutOfSync int `json:"outOfSync,omitempty"` // Modified is the number of bundle deployments that have been deployed // and for which all resources are ready, but where some changes from the // Git repository have not yet been synced. Modified int `json:"modified,omitempty"` // Ready is the number of bundle deployments that have been deployed // where all resources are ready. // +optional Ready int `json:"ready"` // Pending is the number of bundle deployments that are being processed // by Fleet controller. Pending int `json:"pending,omitempty"` // DesiredReady is the number of bundle deployments that should be // ready. // +optional DesiredReady int `json:"desiredReady"` // NonReadyClusters is a list of states, which is filled for a bundle // that is not ready. // +nullable NonReadyResources []NonReadyResource `json:"nonReadyResources,omitempty"` }
BundleSummary contains the number of bundle deployments in each state and a list of non-ready resources. It is used in the bundle, clustergroup, cluster and gitrepo status.
func (*BundleSummary) DeepCopy ¶
func (in *BundleSummary) DeepCopy() *BundleSummary
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleSummary.
func (*BundleSummary) DeepCopyInto ¶
func (in *BundleSummary) DeepCopyInto(out *BundleSummary)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleTarget ¶
type BundleTarget struct { BundleDeploymentOptions `json:",inline"` // Name of target. This value is largely for display and logging. If // not specified a default name of the format "target000" will be used Name string `json:"name,omitempty"` // ClusterName to match a specific cluster by name that will be // selected // +nullable ClusterName string `json:"clusterName,omitempty"` // ClusterSelector is a selector to match clusters. The structure is // the standard metav1.LabelSelector format. If clusterGroupSelector or // clusterGroup is specified, clusterSelector will be used only to // further refine the selection after clusterGroupSelector and // clusterGroup is evaluated. // +nullable ClusterSelector *metav1.LabelSelector `json:"clusterSelector,omitempty"` // ClusterGroup to match a specific cluster group by name. // +nullable ClusterGroup string `json:"clusterGroup,omitempty"` // ClusterGroupSelector is a selector to match cluster groups. // +nullable ClusterGroupSelector *metav1.LabelSelector `json:"clusterGroupSelector,omitempty"` // DoNotDeploy if set to true, will not deploy to this target. DoNotDeploy bool `json:"doNotDeploy,omitempty"` // NamespaceLabels are labels that will be appended to the namespace created by Fleet. // +nullable NamespaceLabels map[string]string `json:"namespaceLabels,omitempty"` // NamespaceAnnotations are annotations that will be appended to the namespace created by Fleet. // +nullable NamespaceAnnotations map[string]string `json:"namespaceAnnotations,omitempty"` }
BundleTarget declares clusters to deploy to. Fleet will merge the BundleDeploymentOptions from customizations into this struct.
func (*BundleTarget) DeepCopy ¶
func (in *BundleTarget) DeepCopy() *BundleTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleTarget.
func (*BundleTarget) DeepCopyInto ¶
func (in *BundleTarget) DeepCopyInto(out *BundleTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleTargetRestriction ¶
type BundleTargetRestriction struct { // +nullable Name string `json:"name,omitempty"` // +nullable ClusterName string `json:"clusterName,omitempty"` // +nullable ClusterSelector *metav1.LabelSelector `json:"clusterSelector,omitempty"` // +nullable ClusterGroup string `json:"clusterGroup,omitempty"` // +nullable ClusterGroupSelector *metav1.LabelSelector `json:"clusterGroupSelector,omitempty"` }
BundleTargetRestriction is used internally by Fleet and should not be modified. It acts as an allow list, to prevent the creation of BundleDeployments from Targets created by TargetCustomizations in fleet.yaml.
func (*BundleTargetRestriction) DeepCopy ¶
func (in *BundleTargetRestriction) DeepCopy() *BundleTargetRestriction
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleTargetRestriction.
func (*BundleTargetRestriction) DeepCopyInto ¶
func (in *BundleTargetRestriction) DeepCopyInto(out *BundleTargetRestriction)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec,omitempty"` Status ClusterStatus `json:"status,omitempty"` }
Cluster corresponds to a Kubernetes cluster. Fleet deploys bundles to targeted clusters. Clusters to which Fleet deploys manifests are referred to as downstream clusters. In the single cluster use case, the Fleet Kubernetes cluster is both the manager and downstream cluster at the same time.
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterDisplay ¶
type ClusterDisplay struct { // ReadyBundles is a string in the form "%d/%d", that describes the // number of bundles that are ready vs. the number of bundles desired // to be ready. ReadyBundles string `json:"readyBundles,omitempty"` // State of the cluster, either one of the bundle states, or "WaitCheckIn". // +nullable State string `json:"state,omitempty"` }
func (*ClusterDisplay) DeepCopy ¶
func (in *ClusterDisplay) DeepCopy() *ClusterDisplay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterDisplay.
func (*ClusterDisplay) DeepCopyInto ¶
func (in *ClusterDisplay) DeepCopyInto(out *ClusterDisplay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterGroup ¶
type ClusterGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // +optional Spec ClusterGroupSpec `json:"spec"` // +optional Status ClusterGroupStatus `json:"status"` }
ClusterGroup is a re-usable selector to target a group of clusters.
func (*ClusterGroup) DeepCopy ¶
func (in *ClusterGroup) DeepCopy() *ClusterGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGroup.
func (*ClusterGroup) DeepCopyInto ¶
func (in *ClusterGroup) DeepCopyInto(out *ClusterGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterGroup) DeepCopyObject ¶
func (in *ClusterGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterGroupDisplay ¶
type ClusterGroupDisplay struct { // ReadyClusters is a string in the form "%d/%d", that describes the // number of clusters that are ready vs. the number of clusters desired // to be ready. // +nullable ReadyClusters string `json:"readyClusters,omitempty"` // ReadyBundles is a string in the form "%d/%d", that describes the // number of bundles that are ready vs. the number of bundles desired // to be ready. // +nullable ReadyBundles string `json:"readyBundles,omitempty"` // State is a summary state for the cluster group, showing "NotReady" if // there are non-ready resources. // +nullable State string `json:"state,omitempty"` }
func (*ClusterGroupDisplay) DeepCopy ¶
func (in *ClusterGroupDisplay) DeepCopy() *ClusterGroupDisplay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGroupDisplay.
func (*ClusterGroupDisplay) DeepCopyInto ¶
func (in *ClusterGroupDisplay) DeepCopyInto(out *ClusterGroupDisplay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterGroupList ¶
type ClusterGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterGroup `json:"items"` }
ClusterGroupList contains a list of ClusterGroup
func (*ClusterGroupList) DeepCopy ¶
func (in *ClusterGroupList) DeepCopy() *ClusterGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGroupList.
func (*ClusterGroupList) DeepCopyInto ¶
func (in *ClusterGroupList) DeepCopyInto(out *ClusterGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterGroupList) DeepCopyObject ¶
func (in *ClusterGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterGroupSpec ¶
type ClusterGroupSpec struct { // Selector is a label selector, used to select clusters for this group. // +nullable Selector *metav1.LabelSelector `json:"selector,omitempty"` }
func (*ClusterGroupSpec) DeepCopy ¶
func (in *ClusterGroupSpec) DeepCopy() *ClusterGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGroupSpec.
func (*ClusterGroupSpec) DeepCopyInto ¶
func (in *ClusterGroupSpec) DeepCopyInto(out *ClusterGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterGroupStatus ¶
type ClusterGroupStatus struct { // ClusterCount is the number of clusters in the cluster group. // +optional ClusterCount int `json:"clusterCount"` // NonReadyClusterCount is the number of clusters that are not ready. // +optional NonReadyClusterCount int `json:"nonReadyClusterCount"` // NonReadyClusters is a list of cluster names that are not ready. // +nullable NonReadyClusters []string `json:"nonReadyClusters,omitempty"` // Conditions is a list of conditions and their statuses for the cluster group. Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"` // Summary is a summary of the bundle deployments and their resources // in the cluster group. Summary BundleSummary `json:"summary,omitempty"` // Display contains the number of ready, desiredready clusters and a // summary state for the bundle's resources. Display ClusterGroupDisplay `json:"display,omitempty"` // ResourceCounts contains the number of resources in each state over // all bundles in the cluster group. ResourceCounts GitRepoResourceCounts `json:"resourceCounts,omitempty"` }
func (*ClusterGroupStatus) DeepCopy ¶
func (in *ClusterGroupStatus) DeepCopy() *ClusterGroupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGroupStatus.
func (*ClusterGroupStatus) DeepCopyInto ¶
func (in *ClusterGroupStatus) DeepCopyInto(out *ClusterGroupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of Cluster
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterRegistration ¶
type ClusterRegistration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterRegistrationSpec `json:"spec,omitempty"` Status ClusterRegistrationStatus `json:"status,omitempty"` }
ClusterRegistration is used internally by Fleet and should not be used directly.
func (*ClusterRegistration) DeepCopy ¶
func (in *ClusterRegistration) DeepCopy() *ClusterRegistration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistration.
func (*ClusterRegistration) DeepCopyInto ¶
func (in *ClusterRegistration) DeepCopyInto(out *ClusterRegistration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterRegistration) DeepCopyObject ¶
func (in *ClusterRegistration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterRegistrationList ¶
type ClusterRegistrationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterRegistration `json:"items"` }
ClusterRegistrationList contains a list of ClusterRegistration
func (*ClusterRegistrationList) DeepCopy ¶
func (in *ClusterRegistrationList) DeepCopy() *ClusterRegistrationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationList.
func (*ClusterRegistrationList) DeepCopyInto ¶
func (in *ClusterRegistrationList) DeepCopyInto(out *ClusterRegistrationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterRegistrationList) DeepCopyObject ¶
func (in *ClusterRegistrationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterRegistrationSpec ¶
type ClusterRegistrationSpec struct { // ClientID is a unique string that will identify the cluster. The // agent either uses the configured ID or the kubeSystem.UID. // +nullable ClientID string `json:"clientID,omitempty"` // ClientRandom is a random string that the agent generates. When // fleet-controller grants a registration, it creates a registration // secret with this string in the name. // +nullable ClientRandom string `json:"clientRandom,omitempty"` // ClusterLabels are copied to the cluster resource during the registration. // +nullable ClusterLabels map[string]string `json:"clusterLabels,omitempty"` }
func (*ClusterRegistrationSpec) DeepCopy ¶
func (in *ClusterRegistrationSpec) DeepCopy() *ClusterRegistrationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationSpec.
func (*ClusterRegistrationSpec) DeepCopyInto ¶
func (in *ClusterRegistrationSpec) DeepCopyInto(out *ClusterRegistrationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterRegistrationStatus ¶
type ClusterRegistrationStatus struct { // ClusterName is only set after the registration is being processed by // fleet-controller. // +nullable ClusterName string `json:"clusterName,omitempty"` // Granted is set to true, if the request service account is present // and its token secret exists. This happens directly before creating // the registration secret, roles and rolebindings. Granted bool `json:"granted,omitempty"` }
func (*ClusterRegistrationStatus) DeepCopy ¶
func (in *ClusterRegistrationStatus) DeepCopy() *ClusterRegistrationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationStatus.
func (*ClusterRegistrationStatus) DeepCopyInto ¶
func (in *ClusterRegistrationStatus) DeepCopyInto(out *ClusterRegistrationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterRegistrationToken ¶
type ClusterRegistrationToken struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterRegistrationTokenSpec `json:"spec,omitempty"` Status ClusterRegistrationTokenStatus `json:"status,omitempty"` }
ClusterRegistrationToken is used by agents to register a new cluster.
func (*ClusterRegistrationToken) DeepCopy ¶
func (in *ClusterRegistrationToken) DeepCopy() *ClusterRegistrationToken
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationToken.
func (*ClusterRegistrationToken) DeepCopyInto ¶
func (in *ClusterRegistrationToken) DeepCopyInto(out *ClusterRegistrationToken)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterRegistrationToken) DeepCopyObject ¶
func (in *ClusterRegistrationToken) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterRegistrationTokenList ¶
type ClusterRegistrationTokenList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClusterRegistrationToken `json:"items"` }
ClusterRegistrationTokenList contains a list of ClusterRegistrationToken
func (*ClusterRegistrationTokenList) DeepCopy ¶
func (in *ClusterRegistrationTokenList) DeepCopy() *ClusterRegistrationTokenList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationTokenList.
func (*ClusterRegistrationTokenList) DeepCopyInto ¶
func (in *ClusterRegistrationTokenList) DeepCopyInto(out *ClusterRegistrationTokenList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterRegistrationTokenList) DeepCopyObject ¶
func (in *ClusterRegistrationTokenList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterRegistrationTokenSpec ¶
type ClusterRegistrationTokenSpec struct { // TTL is the time to live for the token. It is used to calculate the // expiration time. If the token expires, it will be deleted. // +nullable TTL *metav1.Duration `json:"ttl,omitempty"` }
func (*ClusterRegistrationTokenSpec) DeepCopy ¶
func (in *ClusterRegistrationTokenSpec) DeepCopy() *ClusterRegistrationTokenSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationTokenSpec.
func (*ClusterRegistrationTokenSpec) DeepCopyInto ¶
func (in *ClusterRegistrationTokenSpec) DeepCopyInto(out *ClusterRegistrationTokenSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterRegistrationTokenStatus ¶
type ClusterRegistrationTokenStatus struct { // Expires is the time when the token expires. Expires *metav1.Time `json:"expires,omitempty"` // SecretName is the name of the secret containing the token. // +nullable SecretName string `json:"secretName,omitempty"` }
func (*ClusterRegistrationTokenStatus) DeepCopy ¶
func (in *ClusterRegistrationTokenStatus) DeepCopy() *ClusterRegistrationTokenStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterRegistrationTokenStatus.
func (*ClusterRegistrationTokenStatus) DeepCopyInto ¶
func (in *ClusterRegistrationTokenStatus) DeepCopyInto(out *ClusterRegistrationTokenStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSpec ¶
type ClusterSpec struct { // Paused if set to true, will stop any BundleDeployments from being updated. Paused bool `json:"paused,omitempty"` // ClientID is a unique string that will identify the cluster. It can // either be predefined, or generated when importing the cluster. // +nullable ClientID string `json:"clientID,omitempty"` // KubeConfigSecret is the name of the secret containing the kubeconfig for the downstream cluster. // It can optionally contain a APIServerURL and CA to override the // values in the fleet-controller's configmap. // +nullable KubeConfigSecret string `json:"kubeConfigSecret,omitempty"` // KubeConfigSecretNamespace is the namespace of the secret containing the kubeconfig for the downstream cluster. // If unset, it will be assumed the secret can be found in the namespace that the Cluster object resides within. // +nullable KubeConfigSecretNamespace string `json:"kubeConfigSecretNamespace,omitempty"` // RedeployAgentGeneration can be used to force redeploying the agent. RedeployAgentGeneration int64 `json:"redeployAgentGeneration,omitempty"` // AgentEnvVars are extra environment variables to be added to the agent deployment. // +nullable AgentEnvVars []corev1.EnvVar `json:"agentEnvVars,omitempty"` // AgentNamespace defaults to the system namespace, e.g. cattle-fleet-system. // +nullable AgentNamespace string `json:"agentNamespace,omitempty"` // PrivateRepoURL prefixes the image name and overrides a global repo URL from the agents config. // +nullable PrivateRepoURL string `json:"privateRepoURL,omitempty"` // TemplateValues defines a cluster specific mapping of values to be sent to fleet.yaml values templating. // +nullable // +kubebuilder:validation:XPreserveUnknownFields TemplateValues *GenericMap `json:"templateValues,omitempty"` // AgentTolerations defines an extra set of Tolerations to be added to the Agent deployment. // +nullable AgentTolerations []corev1.Toleration `json:"agentTolerations,omitempty"` // AgentAffinity overrides the default affinity for the cluster's agent // deployment. If this value is nil the default affinity is used. // +nullable AgentAffinity *corev1.Affinity `json:"agentAffinity,omitempty"` // +nullable // AgentResources sets the resources for the cluster's agent deployment. AgentResources *corev1.ResourceRequirements `json:"agentResources,omitempty"` // +nullable // +optional // HostNetwork sets the agent StatefulSet to use hostNetwork: true setting. // Allows for provisioning of network related bundles (CNI configuration). HostNetwork *bool `json:"hostNetwork,omitempty"` }
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct { Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"` // Namespace is the cluster namespace, it contains the clusters service // account as well as any bundledeployments. Example: // "cluster-fleet-local-cluster-294db1acfa77-d9ccf852678f" Namespace string `json:"namespace,omitempty"` // Summary is a summary of the bundledeployments. The resource counts // are copied from the gitrepo resource. Summary BundleSummary `json:"summary,omitempty"` // ResourceCounts is an aggregate over the GitRepoResourceCounts. ResourceCounts GitRepoResourceCounts `json:"resourceCounts,omitempty"` // ReadyGitRepos is the number of gitrepos for this cluster that are ready. // +optional ReadyGitRepos int `json:"readyGitRepos"` // DesiredReadyGitRepos is the number of gitrepos for this cluster that // are desired to be ready. // +optional DesiredReadyGitRepos int `json:"desiredReadyGitRepos"` // AgentEnvVarsHash is a hash of the agent's env vars, used to detect changes. // +nullable AgentEnvVarsHash string `json:"agentEnvVarsHash,omitempty"` // AgentPrivateRepoURL is the private repo URL for the agent that is currently used. // +nullable AgentPrivateRepoURL string `json:"agentPrivateRepoURL,omitempty"` // AgentHostNetwork defines observed state of spec.hostNetwork setting that is currently used. // +nullable AgentHostNetwork bool `json:"agentHostNetwork,omitempty"` // AgentDeployedGeneration is the generation of the agent that is currently deployed. // +nullable AgentDeployedGeneration *int64 `json:"agentDeployedGeneration,omitempty"` // AgentMigrated is always set to true after importing a cluster. If // false, it will trigger a migration. Old agents don't have // this in their status. AgentMigrated bool `json:"agentMigrated,omitempty"` // AgentNamespaceMigrated is always set to true after importing a // cluster. If false, it will trigger a migration. Old Fleet agents // don't have this in their status. AgentNamespaceMigrated bool `json:"agentNamespaceMigrated,omitempty"` // CattleNamespaceMigrated is always set to true after importing a // cluster. If false, it will trigger a migration. Old Fleet agents, // don't have this in their status. CattleNamespaceMigrated bool `json:"cattleNamespaceMigrated,omitempty"` // AgentAffinityHash is a hash of the agent's affinity configuration, // used to detect changes. AgentAffinityHash string `json:"agentAffinityHash,omitempty"` // AgentResourcesHash is a hash of the agent's resources configuration, // used to detect changes. // +nullable AgentResourcesHash string `json:"agentResourcesHash,omitempty"` // AgentTolerationsHash is a hash of the agent's tolerations // configuration, used to detect changes. // +nullable AgentTolerationsHash string `json:"agentTolerationsHash,omitempty"` // AgentConfigChanged is set to true if any of the agent configuration // changed, like the API server URL or CA. Setting it to true will // trigger a re-import of the cluster. AgentConfigChanged bool `json:"agentConfigChanged,omitempty"` // APIServerURL is the currently used URL of the API server that the // cluster uses to connect to upstream. // +nullable APIServerURL string `json:"apiServerURL,omitempty"` // APIServerCAHash is a hash of the upstream API server CA, used to detect changes. // +nullable APIServerCAHash string `json:"apiServerCAHash,omitempty"` // AgentTLSMode supports two values: `system-store` and `strict`. If set to // `system-store`, instructs the agent to trust CA bundles from the operating // system's store. If set to `strict`, then the agent shall only connect to a // server which uses the exact CA configured when creating/updating the agent. // +nullable AgentTLSMode string `json:"agentTLSMode,omitempty"` // Display contains the number of ready bundles, nodes and a summary state. Display ClusterDisplay `json:"display,omitempty"` // AgentStatus contains information about the agent. Agent AgentStatus `json:"agent,omitempty"` // GarbageCollectionInterval determines how often agents clean up obsolete Helm releases. GarbageCollectionInterval *metav1.Duration `json:"garbageCollectionInterval,omitempty"` }
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommitSpec ¶
type CommitSpec struct { // AuthorName gives the name to provide when making a commit // +optional AuthorName string `json:"authorName"` // AuthorEmail gives the email to provide when making a commit // +optional AuthorEmail string `json:"authorEmail"` // MessageTemplate provides a template for the commit message, // into which will be interpolated the details of the change made. // +optional MessageTemplate string `json:"messageTemplate,omitempty"` }
CommitSpec specifies how to commit changes to the git repository
func (*CommitSpec) DeepCopy ¶
func (in *CommitSpec) DeepCopy() *CommitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommitSpec.
func (*CommitSpec) DeepCopyInto ¶
func (in *CommitSpec) DeepCopyInto(out *CommitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComparePatch ¶
type ComparePatch struct { // Kind is the kind of the resource to match. // +nullable Kind string `json:"kind,omitempty"` // APIVersion is the apiVersion of the resource to match. // +nullable APIVersion string `json:"apiVersion,omitempty"` // Namespace is the namespace of the resource to match. // +nullable Namespace string `json:"namespace,omitempty"` // Name is the name of the resource to match. // +nullable Name string `json:"name,omitempty"` // Operations remove a JSON path from the resource. // +nullable Operations []Operation `json:"operations,omitempty"` // JSONPointers ignore diffs at a certain JSON path. // +nullable JsonPointers []string `json:"jsonPointers,omitempty"` }
ComparePatch matches a resource and removes fields from the check for modifications.
func (*ComparePatch) DeepCopy ¶
func (in *ComparePatch) DeepCopy() *ComparePatch
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComparePatch.
func (*ComparePatch) DeepCopyInto ¶
func (in *ComparePatch) DeepCopyInto(out *ComparePatch)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigMapKeySelector ¶
type ConfigMapKeySelector struct { LocalObjectReference `json:",inline"` // +optional // +nullable Namespace string `json:"namespace,omitempty"` // +optional // +nullable Key string `json:"key,omitempty"` }
func (*ConfigMapKeySelector) DeepCopy ¶
func (in *ConfigMapKeySelector) DeepCopy() *ConfigMapKeySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapKeySelector.
func (*ConfigMapKeySelector) DeepCopyInto ¶
func (in *ConfigMapKeySelector) DeepCopyInto(out *ConfigMapKeySelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Content ¶
type Content struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Content is a byte array, which contains the manifests of a bundle. // The bundle resources are copied into the bundledeployment's content // resource, so the downstream agent can deploy them. // +nullable Content []byte `json:"content,omitempty"` // SHA256Sum of the Content field SHA256Sum string `json:"sha256sum,omitempty"` }
Content is used internally by Fleet and should not be used directly. It contains the resources from a bundle for a specific target cluster.
func (*Content) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Content.
func (*Content) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Content) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ContentList ¶
type ContentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Content `json:"items"` }
ContentList contains a list of Content
func (*ContentList) DeepCopy ¶
func (in *ContentList) DeepCopy() *ContentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ContentList.
func (*ContentList) DeepCopyInto ¶
func (in *ContentList) DeepCopyInto(out *ContentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ContentList) DeepCopyObject ¶
func (in *ContentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CorrectDrift ¶
type CorrectDrift struct { // Enabled correct drift if true. Enabled bool `json:"enabled,omitempty"` // Force helm rollback with --force option will be used if true. This will try to recreate all resources in the release. Force bool `json:"force,omitempty"` // KeepFailHistory keeps track of failed rollbacks in the helm history. KeepFailHistory bool `json:"keepFailHistory,omitempty"` }
func (*CorrectDrift) DeepCopy ¶
func (in *CorrectDrift) DeepCopy() *CorrectDrift
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CorrectDrift.
func (*CorrectDrift) DeepCopyInto ¶
func (in *CorrectDrift) DeepCopyInto(out *CorrectDrift)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DiffOptions ¶
type DiffOptions struct { // ComparePatches match a resource and remove fields from the check for modifications. // +nullable ComparePatches []ComparePatch `json:"comparePatches,omitempty"` }
func (*DiffOptions) DeepCopy ¶
func (in *DiffOptions) DeepCopy() *DiffOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DiffOptions.
func (*DiffOptions) DeepCopyInto ¶
func (in *DiffOptions) DeepCopyInto(out *DiffOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FleetYAML ¶ added in v0.9.4
type FleetYAML struct { // Name of the bundle which will be created. Name string `json:"name,omitempty"` // Labels are copied to the bundle and can be used in a // dependsOn.selector. Labels map[string]string `json:"labels,omitempty"` BundleSpec // TargetCustomizations are used to determine how resources should be // modified per target. Targets are evaluated in order and the first // one to match a cluster is used for that cluster. TargetCustomizations []BundleTarget `json:"targetCustomizations,omitempty"` // ImageScans are optional and used to update container image // references in the git repo. ImageScans []ImageScanYAML `json:"imageScans,omitempty"` // OverrideTargets overrides targets that are defined in the GitRepo // resource. If overrideTargets is provided the bundle will not inherit // targets from the GitRepo. OverrideTargets []GitTarget `json:"overrideTargets,omitempty"` }
FleetYAML is the top-level structure of the fleet.yaml file. The fleet.yaml file adds options to a bundle. Any directory with a fleet.yaml is automatically turned into a bundle.
func (*FleetYAML) DeepCopy ¶ added in v0.9.4
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FleetYAML.
func (*FleetYAML) DeepCopyInto ¶ added in v0.9.4
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GenericMap ¶
type GenericMap struct {
Data map[string]interface{} `json:"-"`
}
func (*GenericMap) DeepCopy ¶
func (in *GenericMap) DeepCopy() *GenericMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GenericMap.
func (*GenericMap) DeepCopyInto ¶
func (in *GenericMap) DeepCopyInto(out *GenericMap)
func (GenericMap) MarshalJSON ¶
func (in GenericMap) MarshalJSON() ([]byte, error)
func (*GenericMap) UnmarshalJSON ¶
func (in *GenericMap) UnmarshalJSON(data []byte) error
type GitRepo ¶
type GitRepo struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GitRepoSpec `json:"spec,omitempty"` Status GitRepoStatus `json:"status,omitempty"` }
GitRepo describes a git repository that is watched by Fleet. The resource contains the necessary information to deploy the repo, or parts of it, to target clusters.
func (*GitRepo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepo.
func (*GitRepo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GitRepo) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GitRepoDisplay ¶
type GitRepoDisplay struct { // ReadyBundleDeployments is a string in the form "%d/%d", that describes the // number of ready bundledeployments over the total number of bundledeployments. ReadyBundleDeployments string `json:"readyBundleDeployments,omitempty"` // State is the state of the GitRepo, e.g. "GitUpdating" or the maximal // BundleState according to StateRank. State string `json:"state,omitempty"` // Message contains the relevant message from the deployment conditions. Message string `json:"message,omitempty"` // Error is true if a message is present. Error bool `json:"error,omitempty"` }
func (*GitRepoDisplay) DeepCopy ¶
func (in *GitRepoDisplay) DeepCopy() *GitRepoDisplay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoDisplay.
func (*GitRepoDisplay) DeepCopyInto ¶
func (in *GitRepoDisplay) DeepCopyInto(out *GitRepoDisplay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitRepoList ¶
type GitRepoList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GitRepo `json:"items"` }
GitRepoList contains a list of GitRepo
func (*GitRepoList) DeepCopy ¶
func (in *GitRepoList) DeepCopy() *GitRepoList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoList.
func (*GitRepoList) DeepCopyInto ¶
func (in *GitRepoList) DeepCopyInto(out *GitRepoList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GitRepoList) DeepCopyObject ¶
func (in *GitRepoList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GitRepoResource ¶
type GitRepoResource struct { // APIVersion is the API version of the resource. // +nullable APIVersion string `json:"apiVersion,omitempty"` // Kind is the k8s kind of the resource. // +nullable Kind string `json:"kind,omitempty"` // Type is the type of the resource, e.g. "apiextensions.k8s.io.customresourcedefinition" or "configmap". Type string `json:"type,omitempty"` // ID is the name of the resource, e.g. "namespace1/my-config" or "backingimagemanagers.storage.io". // +nullable ID string `json:"id,omitempty"` // Namespace of the resource. // +nullable Namespace string `json:"namespace,omitempty"` // Name of the resource. // +nullable Name string `json:"name,omitempty"` // IncompleteState is true if a bundle summary has 10 or more non-ready // resources or a non-ready resource has more 10 or more non-ready or // modified states. IncompleteState bool `json:"incompleteState,omitempty"` // State is the state of the resource, e.g. "Unknown", "WaitApplied", "ErrApplied" or "Ready". State string `json:"state,omitempty"` // Error is true if any Error in the PerClusterState is true. Error bool `json:"error,omitempty"` // Transitioning is true if any Transitioning in the PerClusterState is true. Transitioning bool `json:"transitioning,omitempty"` // Message is the first message from the PerClusterStates. // +nullable Message string `json:"message,omitempty"` // PerClusterState is a list of states for each cluster. Derived from the summaries non-ready resources. // +nullable PerClusterState []ResourcePerClusterState `json:"perClusterState,omitempty"` }
GitRepoResource contains metadata about the resources of a bundle.
func (*GitRepoResource) DeepCopy ¶
func (in *GitRepoResource) DeepCopy() *GitRepoResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoResource.
func (*GitRepoResource) DeepCopyInto ¶
func (in *GitRepoResource) DeepCopyInto(out *GitRepoResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitRepoResourceCounts ¶
type GitRepoResourceCounts struct { // Ready is the number of ready resources. // +optional Ready int `json:"ready"` // DesiredReady is the number of resources that should be ready. // +optional DesiredReady int `json:"desiredReady"` // WaitApplied is the number of resources that are waiting to be applied. // +optional WaitApplied int `json:"waitApplied"` // Modified is the number of resources that have been modified. // +optional Modified int `json:"modified"` // Orphaned is the number of orphaned resources. // +optional Orphaned int `json:"orphaned"` // Missing is the number of missing resources. // +optional Missing int `json:"missing"` // Unknown is the number of resources in an unknown state. // +optional Unknown int `json:"unknown"` // NotReady is the number of not ready resources. Resources are not // ready if they do not match any other state. // +optional NotReady int `json:"notReady"` }
GitRepoResourceCounts contains the number of resources in each state.
func (*GitRepoResourceCounts) DeepCopy ¶
func (in *GitRepoResourceCounts) DeepCopy() *GitRepoResourceCounts
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoResourceCounts.
func (*GitRepoResourceCounts) DeepCopyInto ¶
func (in *GitRepoResourceCounts) DeepCopyInto(out *GitRepoResourceCounts)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitRepoRestriction ¶
type GitRepoRestriction struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // DefaultServiceAccount overrides the GitRepo's default service account. // +nullable DefaultServiceAccount string `json:"defaultServiceAccount,omitempty"` // AllowedServiceAccounts is a list of service accounts that GitRepos are allowed to use. // +nullable AllowedServiceAccounts []string `json:"allowedServiceAccounts,omitempty"` // AllowedRepoPatterns is a list of regex patterns that restrict the // valid values of the Repo field of a GitRepo. // +nullable AllowedRepoPatterns []string `json:"allowedRepoPatterns,omitempty"` // DefaultClientSecretName overrides the GitRepo's default client secret. // +nullable DefaultClientSecretName string `json:"defaultClientSecretName,omitempty"` // AllowedClientSecretNames is a list of client secret names that GitRepos are allowed to use. // +nullable AllowedClientSecretNames []string `json:"allowedClientSecretNames,omitempty"` // AllowedTargetNamespaces restricts TargetNamespace to the given // namespaces. If AllowedTargetNamespaces is set, TargetNamespace must // be set. // +nullable AllowedTargetNamespaces []string `json:"allowedTargetNamespaces,omitempty"` }
GitRepoRestriction is a resource that can optionally be used to restrict the options of GitRepos in the same namespace.
func (*GitRepoRestriction) DeepCopy ¶
func (in *GitRepoRestriction) DeepCopy() *GitRepoRestriction
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoRestriction.
func (*GitRepoRestriction) DeepCopyInto ¶
func (in *GitRepoRestriction) DeepCopyInto(out *GitRepoRestriction)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GitRepoRestriction) DeepCopyObject ¶
func (in *GitRepoRestriction) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GitRepoRestrictionList ¶
type GitRepoRestrictionList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GitRepoRestriction `json:"items"` }
GitRepoRestrictionList contains a list of GitRepoRestriction
func (*GitRepoRestrictionList) DeepCopy ¶
func (in *GitRepoRestrictionList) DeepCopy() *GitRepoRestrictionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoRestrictionList.
func (*GitRepoRestrictionList) DeepCopyInto ¶
func (in *GitRepoRestrictionList) DeepCopyInto(out *GitRepoRestrictionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GitRepoRestrictionList) DeepCopyObject ¶
func (in *GitRepoRestrictionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GitRepoSpec ¶
type GitRepoSpec struct { // Repo is a URL to a git repo to clone and index. // +nullable Repo string `json:"repo,omitempty"` // Branch The git branch to follow. // +nullable Branch string `json:"branch,omitempty"` // Revision A specific commit or tag to operate on. // +nullable Revision string `json:"revision,omitempty"` // Ensure that all resources are created in this namespace // Any cluster scoped resource will be rejected if this is set // Additionally this namespace will be created on demand. // +nullable TargetNamespace string `json:"targetNamespace,omitempty"` // ClientSecretName is the name of the client secret to be used to connect to the repo // It is expected the secret be of type "kubernetes.io/basic-auth" or "kubernetes.io/ssh-auth". // +nullable ClientSecretName string `json:"clientSecretName,omitempty"` // HelmSecretName contains the auth secret for a private Helm repository. // +nullable HelmSecretName string `json:"helmSecretName,omitempty"` // HelmSecretNameForPaths contains the auth secret for private Helm repository for each path. // +nullable HelmSecretNameForPaths string `json:"helmSecretNameForPaths,omitempty"` // HelmRepoURLRegex Helm credentials will be used if the helm repo matches this regex // Credentials will always be used if this is empty or not provided. // +nullable HelmRepoURLRegex string `json:"helmRepoURLRegex,omitempty"` // CABundle is a PEM encoded CA bundle which will be used to validate the repo's certificate. // +nullable CABundle []byte `json:"caBundle,omitempty"` // InsecureSkipTLSverify will use insecure HTTPS to clone the repo. InsecureSkipTLSverify bool `json:"insecureSkipTLSVerify,omitempty"` // Paths is the directories relative to the git repo root that contain resources to be applied. // Path globbing is supported, for example ["charts/*"] will match all folders as a subdirectory of charts/ // If empty, "/" is the default. // +nullable Paths []string `json:"paths,omitempty"` // Paused, when true, causes changes in Git not to be propagated down to the clusters but instead to mark // resources as OutOfSync. Paused bool `json:"paused,omitempty"` // ServiceAccount used in the downstream cluster for deployment. // +nullable ServiceAccount string `json:"serviceAccount,omitempty"` // Targets is a list of targets this repo will deploy to. Targets []GitTarget `json:"targets,omitempty"` // PollingInterval is how often to check git for new updates. // +nullable PollingInterval *metav1.Duration `json:"pollingInterval,omitempty"` // Increment this number to force a redeployment of contents from Git. ForceSyncGeneration int64 `json:"forceSyncGeneration,omitempty"` // ImageScanInterval is the interval of syncing scanned images and writing back to git repo. ImageSyncInterval *metav1.Duration `json:"imageScanInterval,omitempty"` // Commit specifies how to commit to the git repo when a new image is scanned and written back to git repo. ImageScanCommit CommitSpec `json:"imageScanCommit,omitempty"` // KeepResources specifies if the resources created must be kept after deleting the GitRepo. KeepResources bool `json:"keepResources,omitempty"` // DeleteNamespace specifies if the namespace created must be deleted after deleting the GitRepo. DeleteNamespace bool `json:"deleteNamespace,omitempty"` // CorrectDrift specifies how drift correction should work. CorrectDrift *CorrectDrift `json:"correctDrift,omitempty"` // Disables git polling. When enabled only webhooks will be used. DisablePolling bool `json:"disablePolling,omitempty"` // OCIRegistry specifies the OCI registry related parameters OCIRegistry *OCIRegistrySpec `json:"ociRegistry,omitempty"` }
func (*GitRepoSpec) DeepCopy ¶
func (in *GitRepoSpec) DeepCopy() *GitRepoSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoSpec.
func (*GitRepoSpec) DeepCopyInto ¶
func (in *GitRepoSpec) DeepCopyInto(out *GitRepoSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitRepoStatus ¶
type GitRepoStatus struct { // ObservedGeneration is the current generation of the resource in the cluster. It is copied from k8s // metadata.Generation. The value is incremented for all changes, except for changes to .metadata or .status. // +optional ObservedGeneration int64 `json:"observedGeneration"` // Update generation is the force update generation if spec.forceSyncGeneration is set UpdateGeneration int64 `json:"updateGeneration,omitempty"` // Commit is the Git commit hash from the last git job run. // +optional Commit string `json:"commit,omitempty"` // WebhookCommit is the latest Git commit hash received from a webhook // +optional WebhookCommit string `json:"webhookCommit,omitempty"` // ReadyClusters is the lowest number of clusters that are ready over // all the bundles of this GitRepo. // +optional ReadyClusters int `json:"readyClusters"` // DesiredReadyClusters is the number of clusters that should be ready for bundles of this GitRepo. // +optional DesiredReadyClusters int `json:"desiredReadyClusters"` // GitJobStatus is the status of the last Git job run, e.g. "Current" if there was no error. GitJobStatus string `json:"gitJobStatus,omitempty"` // Summary contains the number of bundle deployments in each state and a list of non-ready resources. Summary BundleSummary `json:"summary,omitempty"` // Display contains a human readable summary of the status. Display GitRepoDisplay `json:"display,omitempty"` // Conditions is a list of Wrangler conditions that describe the state // of the GitRepo. Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"` // Resources contains metadata about the resources of each bundle. Resources []GitRepoResource `json:"resources,omitempty"` // ResourceCounts contains the number of resources in each state over all bundles. ResourceCounts GitRepoResourceCounts `json:"resourceCounts,omitempty"` // ResourceErrors is a sorted list of errors from the resources. ResourceErrors []string `json:"resourceErrors,omitempty"` // LastSyncedImageScanTime is the time of the last image scan. LastSyncedImageScanTime metav1.Time `json:"lastSyncedImageScanTime,omitempty"` // LastPollingTime is the last time the polling check was triggered LastPollingTime metav1.Time `json:"lastPollingTriggered,omitempty"` }
func (*GitRepoStatus) DeepCopy ¶
func (in *GitRepoStatus) DeepCopy() *GitRepoStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoStatus.
func (*GitRepoStatus) DeepCopyInto ¶
func (in *GitRepoStatus) DeepCopyInto(out *GitRepoStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitTarget ¶
type GitTarget struct { // Name is the name of this target. // +nullable Name string `json:"name,omitempty"` // ClusterName is the name of a cluster. // +nullable ClusterName string `json:"clusterName,omitempty"` // ClusterSelector is a label selector to select clusters. // +nullable ClusterSelector *metav1.LabelSelector `json:"clusterSelector,omitempty"` // ClusterGroup is the name of a cluster group in the same namespace as the clusters. // +nullable ClusterGroup string `json:"clusterGroup,omitempty"` // ClusterGroupSelector is a label selector to select cluster groups. // +nullable ClusterGroupSelector *metav1.LabelSelector `json:"clusterGroupSelector,omitempty"` }
GitTarget is a cluster or cluster group to deploy to.
func (*GitTarget) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitTarget.
func (*GitTarget) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HelmOptions ¶
type HelmOptions struct { // Chart can refer to any go-getter URL or OCI registry based helm // chart URL. The chart will be downloaded. // +nullable Chart string `json:"chart,omitempty"` // +nullable // Repo is the name of the HTTPS helm repo to download the chart from. Repo string `json:"repo,omitempty"` // ReleaseName sets a custom release name to deploy the chart as. If // not specified a release name will be generated by combining the // invoking GitRepo.name + GitRepo.path. // +nullable // +kubebuilder:validation:MaxLength=53 // +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ ReleaseName string `json:"releaseName,omitempty"` // +nullable // Version of the chart to download Version string `json:"version,omitempty"` // TimeoutSeconds is the time to wait for Helm operations. TimeoutSeconds int `json:"timeoutSeconds,omitempty"` // Values passed to Helm. It is possible to specify the keys and values // as go template strings. // +nullable // +kubebuilder:validation:XPreserveUnknownFields Values *GenericMap `json:"values,omitempty"` // +nullable // ValuesFrom loads the values from configmaps and secrets. ValuesFrom []ValuesFrom `json:"valuesFrom,omitempty"` // Force allows to override immutable resources. This could be dangerous. Force bool `json:"force,omitempty"` // TakeOwnership makes helm skip the check for its own annotations TakeOwnership bool `json:"takeOwnership,omitempty"` // MaxHistory limits the maximum number of revisions saved per release by Helm. MaxHistory int `json:"maxHistory,omitempty"` // ValuesFiles is a list of files to load values from. // +nullable ValuesFiles []string `json:"valuesFiles,omitempty"` // WaitForJobs if set and timeoutSeconds provided, will wait until all // Jobs have been completed before marking the GitRepo as ready. It // will wait for as long as timeoutSeconds WaitForJobs bool `json:"waitForJobs,omitempty"` // Atomic sets the --atomic flag when Helm is performing an upgrade Atomic bool `json:"atomic,omitempty"` // DisablePreProcess disables template processing in values DisablePreProcess bool `json:"disablePreProcess,omitempty"` // DisableDNS can be used to customize Helm's EnableDNS option, which Fleet sets to `true` by default. DisableDNS bool `json:"disableDNS,omitempty"` // SkipSchemaValidation allows skipping schema validation against the chart values SkipSchemaValidation bool `json:"skipSchemaValidation,omitempty"` // DisableDependencyUpdate allows skipping chart dependencies update DisableDependencyUpdate bool `json:"disableDependencyUpdate,omitempty"` }
HelmOptions for the deployment. For Helm-based bundles, all options can be used, otherwise some options are ignored. For example ReleaseName works with all bundle types.
func (*HelmOptions) DeepCopy ¶
func (in *HelmOptions) DeepCopy() *HelmOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmOptions.
func (*HelmOptions) DeepCopyInto ¶
func (in *HelmOptions) DeepCopyInto(out *HelmOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IgnoreOptions ¶
type IgnoreOptions struct { // Conditions is a list of conditions to be ignored when monitoring the Bundle. // +nullable Conditions []map[string]string `json:"conditions,omitempty"` }
IgnoreOptions defines conditions to be ignored when monitoring the Bundle.
func (*IgnoreOptions) DeepCopy ¶
func (in *IgnoreOptions) DeepCopy() *IgnoreOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IgnoreOptions.
func (*IgnoreOptions) DeepCopyInto ¶
func (in *IgnoreOptions) DeepCopyInto(out *IgnoreOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImagePolicyChoice ¶
type ImagePolicyChoice struct { // SemVer gives a semantic version range to check against the tags // available. // +optional // +nullable SemVer *SemVerPolicy `json:"semver,omitempty"` // Alphabetical set of rules to use for alphabetical ordering of the tags. // +optional // +nullable Alphabetical *AlphabeticalPolicy `json:"alphabetical,omitempty"` }
ImagePolicyChoice is a union of all the types of policy that can be supplied.
func (*ImagePolicyChoice) DeepCopy ¶
func (in *ImagePolicyChoice) DeepCopy() *ImagePolicyChoice
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImagePolicyChoice.
func (*ImagePolicyChoice) DeepCopyInto ¶
func (in *ImagePolicyChoice) DeepCopyInto(out *ImagePolicyChoice)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageScan ¶
type ImageScan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ImageScanSpec `json:"spec,omitempty"` Status ImageScanStatus `json:"status,omitempty"` }
func (*ImageScan) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageScan.
func (*ImageScan) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ImageScan) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ImageScanList ¶
type ImageScanList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ImageScan `json:"items"` }
ImageScanList contains a list of ImageScan
func (*ImageScanList) DeepCopy ¶
func (in *ImageScanList) DeepCopy() *ImageScanList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageScanList.
func (*ImageScanList) DeepCopyInto ¶
func (in *ImageScanList) DeepCopyInto(out *ImageScanList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ImageScanList) DeepCopyObject ¶
func (in *ImageScanList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ImageScanSpec ¶
type ImageScanSpec struct { // TagName is the tag ref that needs to be put in manifest to replace fields // +nullable TagName string `json:"tagName,omitempty"` // GitRepo reference name // +nullable GitRepoName string `json:"gitrepoName,omitempty"` // Image is the name of the image repository // +required // +nullable Image string `json:"image,omitempty"` // Interval is the length of time to wait between // scans of the image repository. // +nullable // +required Interval metav1.Duration `json:"interval,omitempty"` // SecretRef can be given the name of a secret containing // credentials to use for the image registry. The secret should be // created with `kubectl create secret docker-registry`, or the // equivalent. // +nullable SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"` // This flag tells the controller to suspend subsequent image scans. // It does not apply to already started scans. Defaults to false. // +optional Suspend bool `json:"suspend,omitempty"` // Policy gives the particulars of the policy to be followed in // selecting the most recent image // +optional Policy ImagePolicyChoice `json:"policy"` }
API is taken from https://github.com/fluxcd/image-reflector-controller
func (*ImageScanSpec) DeepCopy ¶
func (in *ImageScanSpec) DeepCopy() *ImageScanSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageScanSpec.
func (*ImageScanSpec) DeepCopyInto ¶
func (in *ImageScanSpec) DeepCopyInto(out *ImageScanSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageScanStatus ¶
type ImageScanStatus struct { // +optional Conditions []genericcondition.GenericCondition `json:"conditions,omitempty"` // LastScanTime is the last time image was scanned LastScanTime metav1.Time `json:"lastScanTime,omitempty"` // LatestImage gives the first in the list of images scanned by // the image repository, when filtered and ordered according to // the policy. LatestImage string `json:"latestImage,omitempty"` // Latest tag is the latest tag filtered by the policy LatestTag string `json:"latestTag,omitempty"` // LatestDigest is the digest of latest tag LatestDigest string `json:"latestDigest,omitempty"` // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // CanonicalName is the name of the image repository with all the // implied bits made explicit; e.g., `docker.io/library/alpine` // rather than `alpine`. // +optional CanonicalImageName string `json:"canonicalImageName,omitempty"` }
func (*ImageScanStatus) DeepCopy ¶
func (in *ImageScanStatus) DeepCopy() *ImageScanStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageScanStatus.
func (*ImageScanStatus) DeepCopyInto ¶
func (in *ImageScanStatus) DeepCopyInto(out *ImageScanStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ImageScanYAML ¶ added in v0.9.4
type ImageScanYAML struct { // Name of the image scan. Unused. Name string `json:"name,omitempty"` ImageScanSpec }
ImageScanYAML is a single entry in the ImageScan list from fleet.yaml.
func (*ImageScanYAML) DeepCopy ¶ added in v0.9.4
func (in *ImageScanYAML) DeepCopy() *ImageScanYAML
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageScanYAML.
func (*ImageScanYAML) DeepCopyInto ¶ added in v0.9.4
func (in *ImageScanYAML) DeepCopyInto(out *ImageScanYAML)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KustomizeOptions ¶
type KustomizeOptions struct { // Dir points to a custom folder for kustomize resources. This folder must contain // a kustomization.yaml file. // +nullable Dir string `json:"dir,omitempty"` }
KustomizeOptions for a deployment.
func (*KustomizeOptions) DeepCopy ¶
func (in *KustomizeOptions) DeepCopy() *KustomizeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KustomizeOptions.
func (*KustomizeOptions) DeepCopyInto ¶
func (in *KustomizeOptions) DeepCopyInto(out *KustomizeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LocalObjectReference ¶
type LocalObjectReference struct { // Name of a resource in the same namespace as the referent. // +nullable // +optional Name string `json:"name"` }
func (*LocalObjectReference) DeepCopy ¶
func (in *LocalObjectReference) DeepCopy() *LocalObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalObjectReference.
func (*LocalObjectReference) DeepCopyInto ¶
func (in *LocalObjectReference) DeepCopyInto(out *LocalObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModifiedStatus ¶
type ModifiedStatus struct { // +nullable Kind string `json:"kind,omitempty"` // +nullable APIVersion string `json:"apiVersion,omitempty"` // +nullable Namespace string `json:"namespace,omitempty"` // +nullable Name string `json:"name,omitempty"` Create bool `json:"missing,omitempty"` // Exist is true if the resource exists but is not owned by us. This can happen if a resource was adopted by another bundle whereas the first bundle still exists and due to that reports that it does not own it. Exist bool `json:"exist,omitempty"` Delete bool `json:"delete,omitempty"` // +nullable Patch string `json:"patch,omitempty"` }
ModifiedStatus is used to report the status of a resource that is modified. It indicates if the modification was a create, a delete or a patch.
func (*ModifiedStatus) DeepCopy ¶
func (in *ModifiedStatus) DeepCopy() *ModifiedStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModifiedStatus.
func (*ModifiedStatus) DeepCopyInto ¶
func (in *ModifiedStatus) DeepCopyInto(out *ModifiedStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ModifiedStatus) String ¶
func (in ModifiedStatus) String() string
type NonReadyResource ¶
type NonReadyResource struct { // Name is the name of the resource. // +nullable Name string `json:"name,omitempty"` // State is the state of the resource, like e.g. "NotReady" or "ErrApplied". // +nullable State BundleState `json:"bundleState,omitempty"` // Message contains information why the bundle is not ready. // +nullable Message string `json:"message,omitempty"` // ModifiedStatus lists the state for each modified resource. // +nullable ModifiedStatus []ModifiedStatus `json:"modifiedStatus,omitempty"` // NonReadyStatus lists the state for each non-ready resource. // +nullable NonReadyStatus []NonReadyStatus `json:"nonReadyStatus,omitempty"` }
NonReadyResource contains information about a bundle that is not ready for a given state like "ErrApplied". It contains a list of non-ready or modified resources and their states.
func (*NonReadyResource) DeepCopy ¶
func (in *NonReadyResource) DeepCopy() *NonReadyResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonReadyResource.
func (*NonReadyResource) DeepCopyInto ¶
func (in *NonReadyResource) DeepCopyInto(out *NonReadyResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NonReadyStatus ¶
type NonReadyStatus struct { // +nullable UID types.UID `json:"uid,omitempty"` // +nullable Kind string `json:"kind,omitempty"` // +nullable APIVersion string `json:"apiVersion,omitempty"` // +nullable Namespace string `json:"namespace,omitempty"` // +nullable Name string `json:"name,omitempty"` Summary summary.Summary `json:"summary,omitempty"` }
NonReadyStatus is used to report the status of a resource that is not ready. It includes a summary.
func (*NonReadyStatus) DeepCopy ¶
func (in *NonReadyStatus) DeepCopy() *NonReadyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NonReadyStatus.
func (*NonReadyStatus) DeepCopyInto ¶
func (in *NonReadyStatus) DeepCopyInto(out *NonReadyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (NonReadyStatus) String ¶
func (in NonReadyStatus) String() string
type OCIRegistrySpec ¶ added in v0.10.0
type OCIRegistrySpec struct { // Reference of the OCI Registry Reference string `json:"reference,omitempty"` // AuthSecretName contains the auth secret where the OCI regristry credentials are stored. // +nullable AuthSecretName string `json:"authSecretName,omitempty"` // BasicHTTP uses HTTP connections to the OCI registry when enabled. // +optional // +nullable BasicHTTP bool `json:"basicHTTP,omitempty"` // InsecureSkipTLS allows connections to OCI registry without certs when enabled. // +optional // +nullable InsecureSkipTLS bool `json:"insecureSkipTLS,omitempty"` }
func (*OCIRegistrySpec) DeepCopy ¶ added in v0.10.0
func (in *OCIRegistrySpec) DeepCopy() *OCIRegistrySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIRegistrySpec.
func (*OCIRegistrySpec) DeepCopyInto ¶ added in v0.10.0
func (in *OCIRegistrySpec) DeepCopyInto(out *OCIRegistrySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Operation ¶
type Operation struct { // Op is usually "remove" // +nullable Op string `json:"op,omitempty"` // Path is the JSON path to remove. // +nullable Path string `json:"path,omitempty"` // Value is usually empty. // +nullable Value string `json:"value,omitempty"` }
Operation of a ComparePatch, usually "remove".
func (*Operation) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Operation.
func (*Operation) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Partition ¶
type Partition struct { // A user-friendly name given to the partition used for Display (optional). // +nullable Name string `json:"name,omitempty"` // partition before this partition is treated as done. // default: 10% MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"` // ClusterName is the name of a cluster to include in this partition ClusterName string `json:"clusterName,omitempty"` // Selector matching cluster labels to include in this partition ClusterSelector *metav1.LabelSelector `json:"clusterSelector,omitempty"` // A cluster group name to include in this partition ClusterGroup string `json:"clusterGroup,omitempty"` // Selector matching cluster group labels to include in this partition // +nullable ClusterGroupSelector *metav1.LabelSelector `json:"clusterGroupSelector,omitempty"` }
Partition defines a separate rollout strategy for a set of clusters.
func (*Partition) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Partition.
func (*Partition) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PartitionStatus ¶
type PartitionStatus struct { // Name is the name of the partition. // +nullable Name string `json:"name,omitempty"` // Count is the number of clusters in the partition. Count int `json:"count,omitempty"` MaxUnavailable int `json:"maxUnavailable,omitempty"` Unavailable int `json:"unavailable,omitempty"` // Summary is a summary state for the partition, calculated over its non-ready resources. Summary BundleSummary `json:"summary,omitempty"` }
PartitionStatus is the status of a single rollout partition.
func (*PartitionStatus) DeepCopy ¶
func (in *PartitionStatus) DeepCopy() *PartitionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PartitionStatus.
func (*PartitionStatus) DeepCopyInto ¶
func (in *PartitionStatus) DeepCopyInto(out *PartitionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceKey ¶
type ResourceKey struct { // Kind is the k8s api kind of the resource. // +nullable Kind string `json:"kind,omitempty"` // APIVersion is the k8s api version of the resource. // +nullable APIVersion string `json:"apiVersion,omitempty"` // Namespace is the namespace of the resource. // +nullable Namespace string `json:"namespace,omitempty"` // Name is the name of the resource. // +nullable Name string `json:"name,omitempty"` }
ResourceKey lists resources, which will likely be deployed.
func (*ResourceKey) DeepCopy ¶
func (in *ResourceKey) DeepCopy() *ResourceKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceKey.
func (*ResourceKey) DeepCopyInto ¶
func (in *ResourceKey) DeepCopyInto(out *ResourceKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourcePerClusterState ¶
type ResourcePerClusterState struct { // State is the state of the resource. // +nullable State string `json:"state,omitempty"` // Error is true if the resource is in an error state, copied from the bundle's summary for non-ready resources. Error bool `json:"error,omitempty"` // Transitioning is true if the resource is in a transitioning state, // copied from the bundle's summary for non-ready resources. Transitioning bool `json:"transitioning,omitempty"` // Message combines the messages from the bundle's summary. Messages are joined with the delimiter ';'. // +nullable Message string `json:"message,omitempty"` // Patch for modified resources. // +nullable // +kubebuilder:validation:XPreserveUnknownFields Patch *GenericMap `json:"patch,omitempty"` // ClusterID is the id of the cluster. // +nullable ClusterID string `json:"clusterId,omitempty"` }
ResourcePerClusterState is generated for each non-ready resource of the bundles.
func (*ResourcePerClusterState) DeepCopy ¶
func (in *ResourcePerClusterState) DeepCopy() *ResourcePerClusterState
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePerClusterState.
func (*ResourcePerClusterState) DeepCopyInto ¶
func (in *ResourcePerClusterState) DeepCopyInto(out *ResourcePerClusterState)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RolloutStrategy ¶
type RolloutStrategy struct { // of a bundle. This follows the same basic approach as a deployment rollout // strategy. Once the number of clusters meets unavailable state update will be // paused. Default value is 100% which doesn't take effect on update. // default: 100% // +nullable MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"` // an update of a bundle. // default: 0 // +nullable MaxUnavailablePartitions *intstr.IntOrString `json:"maxUnavailablePartitions,omitempty"` // A number or percentage of how to automatically partition clusters if no // specific partitioning strategy is configured. // default: 25% // +nullable AutoPartitionSize *intstr.IntOrString `json:"autoPartitionSize,omitempty"` // A list of definitions of partitions. If any target clusters do not match // the configuration they are added to partitions at the end following the // autoPartitionSize. // +nullable Partitions []Partition `json:"partitions,omitempty"` }
RolloverStrategy controls the rollout of the bundle across clusters.
func (*RolloutStrategy) DeepCopy ¶
func (in *RolloutStrategy) DeepCopy() *RolloutStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RolloutStrategy.
func (*RolloutStrategy) DeepCopyInto ¶
func (in *RolloutStrategy) DeepCopyInto(out *RolloutStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretKeySelector ¶
type SecretKeySelector struct { LocalObjectReference `json:",inline"` // +optional // +nullable Namespace string `json:"namespace,omitempty"` // +optional // +nullable Key string `json:"key,omitempty"` }
func (*SecretKeySelector) DeepCopy ¶
func (in *SecretKeySelector) DeepCopy() *SecretKeySelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKeySelector.
func (*SecretKeySelector) DeepCopyInto ¶
func (in *SecretKeySelector) DeepCopyInto(out *SecretKeySelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SemVerPolicy ¶
type SemVerPolicy struct { // Range gives a semver range for the image tag; the highest // version within the range that's a tag yields the latest image. // +optional // +nullable Range string `json:"range"` }
SemVerPolicy specifies a semantic version policy.
func (*SemVerPolicy) DeepCopy ¶
func (in *SemVerPolicy) DeepCopy() *SemVerPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SemVerPolicy.
func (*SemVerPolicy) DeepCopyInto ¶
func (in *SemVerPolicy) DeepCopyInto(out *SemVerPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValuesFrom ¶
type ValuesFrom struct { // The reference to a config map with release values. // +optional // +nullable ConfigMapKeyRef *ConfigMapKeySelector `json:"configMapKeyRef,omitempty"` // The reference to a secret with release values. // +optional // +nullable SecretKeyRef *SecretKeySelector `json:"secretKeyRef,omitempty"` }
Define helm values that can come from configmap, secret or external. Credit: https://github.com/fluxcd/helm-operator/blob/0cfea875b5d44bea995abe7324819432070dfbdc/pkg/apis/helm.fluxcd.io/v1/types_helmrelease.go#L439
func (*ValuesFrom) DeepCopy ¶
func (in *ValuesFrom) DeepCopy() *ValuesFrom
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValuesFrom.
func (*ValuesFrom) DeepCopyInto ¶
func (in *ValuesFrom) DeepCopyInto(out *ValuesFrom)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type YAMLOptions ¶
type YAMLOptions struct { // Overlays is a list of names that maps to folders in "overlays/". // If you wish to customize the file ./subdir/resource.yaml then a file // ./overlays/myoverlay/subdir/resource.yaml will replace the base // file. // A file named ./overlays/myoverlay/subdir/resource_patch.yaml will patch the base file. // +nullable Overlays []string `json:"overlays,omitempty"` }
YAMLOptions, if using raw YAML these are names that map to overlays/{name} files that will be used to replace or patch a resource.
func (*YAMLOptions) DeepCopy ¶
func (in *YAMLOptions) DeepCopy() *YAMLOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new YAMLOptions.
func (*YAMLOptions) DeepCopyInto ¶
func (in *YAMLOptions) DeepCopyInto(out *YAMLOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- bundle_types.go
- bundledeployment_types.go
- bundlenamespacemapping_types.go
- cluster_types.go
- clustergroup_types.go
- clusterregistration_types.go
- clusterregistrationtoken_types.go
- content_types.go
- doc.go
- fleetyaml.go
- generic_map.go
- gitrepo_types.go
- gitreporestriction_types.go
- groupversion_info.go
- imagescan_types.go
- zz_generated.deepcopy.go