v1beta2

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 17, 2026 License: Apache-2.0 Imports: 8 Imported by: 2

Documentation

Overview

Package v1beta2 contains API types for the image v1beta2 API group

Deprecated: v1beta2 is no longer supported, use v1 instead.

+kubebuilder:object:generate=true +groupName=image.toolkit.fluxcd.io

Package v1beta2 contains API Schema definitions for the image v1beta2 API group +kubebuilder:object:generate=true +groupName=image.toolkit.fluxcd.io

Index

Constants

View Source
const (
	// InvalidUpdateStrategyReason represents an invalid image update strategy
	// configuration.
	InvalidUpdateStrategyReason string = "InvalidUpdateStrategy"

	// InvalidSourceConfigReason represents an invalid source configuration.
	InvalidSourceConfigReason string = "InvalidSourceConfiguration"

	// SourceManagerFailedReason represents a failure in the SourceManager which
	// manages the source.
	SourceManagerFailedReason string = "SourceManagerFailed"

	// GitOperationFailedReason represents a failure in Git source operation.
	GitOperationFailedReason string = "GitOperationFailed"

	// UpdateFailedReason represents a failure during source update.
	UpdateFailedReason string = "UpdateFailed"

	// InvalidPolicySelectorReason represents an invalid policy selector.
	InvalidPolicySelectorReason string = "InvalidPolicySelector"

	// RemovedTemplateFieldReason represents usage of removed template field.
	RemovedTemplateFieldReason string = "RemovedTemplateField"
)
View Source
const (
	ImageUpdateAutomationKind      = "ImageUpdateAutomation"
	ImageUpdateAutomationFinalizer = "finalizers.fluxcd.io"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "image.toolkit.fluxcd.io", Version: "v1beta2"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type CommitSpec

type CommitSpec struct {
	// Author gives the email and optionally the name to use as the
	// author of commits.
	// +required
	Author CommitUser `json:"author"`
	// SigningKey provides the option to sign commits with a GPG key
	// +optional
	SigningKey *SigningKey `json:"signingKey,omitempty"`
	// MessageTemplate provides a template for the commit message,
	// into which will be interpolated the details of the change made.
	// Note: The `Updated` template field has been removed. Use `Changed` instead.
	// +optional
	MessageTemplate string `json:"messageTemplate,omitempty"`

	// MessageTemplateValues provides additional values to be available to the
	// templating rendering.
	// +optional
	MessageTemplateValues map[string]string `json:"messageTemplateValues,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 CommitUser

type CommitUser struct {
	// Name gives the name to provide when making a commit.
	// +optional
	Name string `json:"name,omitempty"`
	// Email gives the email to provide when making a commit.
	// +required
	Email string `json:"email"`
}

func (*CommitUser) DeepCopy

func (in *CommitUser) DeepCopy() *CommitUser

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CommitUser.

func (*CommitUser) DeepCopyInto

func (in *CommitUser) DeepCopyInto(out *CommitUser)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CrossNamespaceSourceReference

type CrossNamespaceSourceReference struct {
	// API version of the referent.
	// +optional
	APIVersion string `json:"apiVersion,omitempty"`

	// Kind of the referent.
	// +kubebuilder:validation:Enum=GitRepository
	// +kubebuilder:default=GitRepository
	// +required
	Kind string `json:"kind"`

	// Name of the referent.
	// +required
	Name string `json:"name"`

	// Namespace of the referent, defaults to the namespace of the Kubernetes resource object that contains the reference.
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

CrossNamespaceSourceReference contains enough information to let you locate the typed Kubernetes resource object at cluster level.

func (*CrossNamespaceSourceReference) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossNamespaceSourceReference.

func (*CrossNamespaceSourceReference) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CrossNamespaceSourceReference) String

type GitCheckoutSpec

type GitCheckoutSpec struct {
	// Reference gives a branch, tag or commit to clone from the Git
	// repository.
	// +required
	Reference sourcev1.GitRepositoryRef `json:"ref"`
}

func (*GitCheckoutSpec) DeepCopy

func (in *GitCheckoutSpec) DeepCopy() *GitCheckoutSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCheckoutSpec.

func (*GitCheckoutSpec) DeepCopyInto

func (in *GitCheckoutSpec) DeepCopyInto(out *GitCheckoutSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitSpec

type GitSpec struct {
	// Checkout gives the parameters for cloning the git repository,
	// ready to make changes. If not present, the `spec.ref` field from the
	// referenced `GitRepository` or its default will be used.
	// +optional
	Checkout *GitCheckoutSpec `json:"checkout,omitempty"`

	// Commit specifies how to commit to the git repository.
	// +required
	Commit CommitSpec `json:"commit"`

	// Push specifies how and where to push commits made by the
	// automation. If missing, commits are pushed (back) to
	// `.spec.checkout.branch` or its default.
	// +optional
	Push *PushSpec `json:"push,omitempty"`
}

func (*GitSpec) DeepCopy

func (in *GitSpec) DeepCopy() *GitSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitSpec.

func (*GitSpec) DeepCopyInto

func (in *GitSpec) DeepCopyInto(out *GitSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (GitSpec) HasRefspec

func (gs GitSpec) HasRefspec() bool

HasRefspec returns if the GitSpec has a Refspec.

type ImageRef

type ImageRef struct {
	// Name is the bare image's name.
	// +required
	Name string `json:"name"`
	// Tag is the image's tag.
	// +required
	Tag string `json:"tag"`
	// Digest is the image's digest.
	// +optional
	Digest string `json:"digest,omitempty"`
}

ImageRef represents an image reference.

func (*ImageRef) DeepCopy

func (in *ImageRef) DeepCopy() *ImageRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageRef.

func (*ImageRef) DeepCopyInto

func (in *ImageRef) DeepCopyInto(out *ImageRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ImageRef) String

func (in *ImageRef) String() string

type ImageUpdateAutomation

type ImageUpdateAutomation struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ImageUpdateAutomationSpec `json:"spec,omitempty"`
	// +kubebuilder:default={"observedGeneration":-1}
	Status ImageUpdateAutomationStatus `json:"status,omitempty"`
}

ImageUpdateAutomation is the Schema for the imageupdateautomations API

func (*ImageUpdateAutomation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageUpdateAutomation.

func (*ImageUpdateAutomation) DeepCopyInto

func (in *ImageUpdateAutomation) DeepCopyInto(out *ImageUpdateAutomation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ImageUpdateAutomation) DeepCopyObject

func (in *ImageUpdateAutomation) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (ImageUpdateAutomation) GetConditions

func (auto ImageUpdateAutomation) GetConditions() []metav1.Condition

GetConditions returns the status conditions of the object.

func (ImageUpdateAutomation) GetRequeueAfter

func (auto ImageUpdateAutomation) GetRequeueAfter() time.Duration

GetRequeueAfter returns the duration after which the ImageUpdateAutomation must be reconciled again.

func (*ImageUpdateAutomation) SetConditions

func (auto *ImageUpdateAutomation) SetConditions(conditions []metav1.Condition)

SetConditions sets the status conditions on the object.

type ImageUpdateAutomationList

type ImageUpdateAutomationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ImageUpdateAutomation `json:"items"`
}

ImageUpdateAutomationList contains a list of ImageUpdateAutomation

func (*ImageUpdateAutomationList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageUpdateAutomationList.

func (*ImageUpdateAutomationList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ImageUpdateAutomationList) DeepCopyObject

func (in *ImageUpdateAutomationList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ImageUpdateAutomationSpec

type ImageUpdateAutomationSpec struct {
	// SourceRef refers to the resource giving access details
	// to a git repository.
	// +required
	SourceRef CrossNamespaceSourceReference `json:"sourceRef"`

	// GitSpec contains all the git-specific definitions. This is
	// technically optional, but in practice mandatory until there are
	// other kinds of source allowed.
	// +optional
	GitSpec *GitSpec `json:"git,omitempty"`

	// Interval gives an lower bound for how often the automation
	// run should be attempted.
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$"
	// +required
	Interval metav1.Duration `json:"interval"`

	// PolicySelector allows to filter applied policies based on labels.
	// By default includes all policies in namespace.
	// +optional
	PolicySelector *metav1.LabelSelector `json:"policySelector,omitempty"`

	// Update gives the specification for how to update the files in
	// the repository. This can be left empty, to use the default
	// value.
	// +kubebuilder:default={"strategy":"Setters"}
	Update *UpdateStrategy `json:"update,omitempty"`

	// Suspend tells the controller to not run this automation, until
	// it is unset (or set to false). Defaults to false.
	// +optional
	Suspend bool `json:"suspend,omitempty"`
}

ImageUpdateAutomationSpec defines the desired state of ImageUpdateAutomation

func (*ImageUpdateAutomationSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageUpdateAutomationSpec.

func (*ImageUpdateAutomationSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ImageUpdateAutomationStatus

type ImageUpdateAutomationStatus struct {
	// LastAutomationRunTime records the last time the controller ran
	// this automation through to completion (even if no updates were
	// made).
	// +optional
	LastAutomationRunTime *metav1.Time `json:"lastAutomationRunTime,omitempty"`
	// LastPushCommit records the SHA1 of the last commit made by the
	// controller, for this automation object
	// +optional
	LastPushCommit string `json:"lastPushCommit,omitempty"`
	// LastPushTime records the time of the last pushed change.
	// +optional
	LastPushTime *metav1.Time `json:"lastPushTime,omitempty"`
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// ObservedPolicies is the list of observed ImagePolicies that were
	// considered by the ImageUpdateAutomation update process.
	// +optional
	ObservedPolicies ObservedPolicies `json:"observedPolicies,omitempty"`
	// ObservedPolicies []ObservedPolicy `json:"observedPolicies,omitempty"`
	// ObservedSourceRevision is the last observed source revision. This can be
	// used to determine if the source has been updated since last observation.
	// +optional
	ObservedSourceRevision string `json:"observedSourceRevision,omitempty"`

	meta.ReconcileRequestStatus `json:",inline"`
}

ImageUpdateAutomationStatus defines the observed state of ImageUpdateAutomation

func (*ImageUpdateAutomationStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageUpdateAutomationStatus.

func (*ImageUpdateAutomationStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ObservedPolicies

type ObservedPolicies map[string]ImageRef

ObservedPolicies is a map of policy name and ImageRef of their latest ImageRef.

func (ObservedPolicies) DeepCopy

func (in ObservedPolicies) DeepCopy() ObservedPolicies

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObservedPolicies.

func (ObservedPolicies) DeepCopyInto

func (in ObservedPolicies) DeepCopyInto(out *ObservedPolicies)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PushSpec

type PushSpec struct {
	// Branch specifies that commits should be pushed to the branch
	// named. The branch is created using `.spec.checkout.branch` as the
	// starting point, if it doesn't already exist.
	// +optional
	Branch string `json:"branch,omitempty"`

	// Refspec specifies the Git Refspec to use for a push operation.
	// If both Branch and Refspec are provided, then the commit is pushed
	// to the branch and also using the specified refspec.
	// For more details about Git Refspecs, see:
	// https://git-scm.com/book/en/v2/Git-Internals-The-Refspec
	// +optional
	Refspec string `json:"refspec,omitempty"`

	// Options specifies the push options that are sent to the Git
	// server when performing a push operation. For details, see:
	// https://git-scm.com/docs/git-push#Documentation/git-push.txt---push-optionltoptiongt
	// +optional
	Options map[string]string `json:"options,omitempty"`
}

PushSpec specifies how and where to push commits.

func (*PushSpec) DeepCopy

func (in *PushSpec) DeepCopy() *PushSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PushSpec.

func (*PushSpec) DeepCopyInto

func (in *PushSpec) DeepCopyInto(out *PushSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SigningKey

type SigningKey struct {
	// SecretRef holds the name to a secret that contains a 'git.asc' key
	// corresponding to the ASCII Armored file containing the GPG signing
	// keypair as the value. It must be in the same namespace as the
	// ImageUpdateAutomation.
	// +required
	SecretRef meta.LocalObjectReference `json:"secretRef,omitempty"`
}

SigningKey references a Kubernetes secret that contains a GPG keypair

func (*SigningKey) DeepCopy

func (in *SigningKey) DeepCopy() *SigningKey

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SigningKey.

func (*SigningKey) DeepCopyInto

func (in *SigningKey) DeepCopyInto(out *SigningKey)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpdateStrategy

type UpdateStrategy struct {
	// Strategy names the strategy to be used.
	// +optional
	// +kubebuilder:default=Setters
	Strategy UpdateStrategyName `json:"strategy,omitempty"`

	// Path to the directory containing the manifests to be updated.
	// Defaults to 'None', which translates to the root path
	// of the GitRepositoryRef.
	// +optional
	Path string `json:"path,omitempty"`
}

UpdateStrategy is a union of the various strategies for updating the Git repository. Parameters for each strategy (if any) can be inlined here.

func (*UpdateStrategy) DeepCopy

func (in *UpdateStrategy) DeepCopy() *UpdateStrategy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStrategy.

func (*UpdateStrategy) DeepCopyInto

func (in *UpdateStrategy) DeepCopyInto(out *UpdateStrategy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpdateStrategyName

type UpdateStrategyName string

UpdateStrategyName is the type for names that go in .update.strategy. NB the value in the const immediately below. +kubebuilder:validation:Enum=Setters

const (
	// UpdateStrategySetters is the name of the update strategy that
	// uses kyaml setters. NB the value in the enum annotation for the
	// type, above.
	UpdateStrategySetters UpdateStrategyName = "Setters"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL