v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2021 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API types for the image v1alpha1 API group. The types here are concerned with automated updates to git, based on metadata from OCI image registries gathered by the image-reflector-controller.

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

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

Index

Constants

View Source
const (
	// GitNotAvailableReason is used for ConditionReady when the
	// automation run cannot proceed because the git repository is
	// missing or cannot be cloned.
	GitNotAvailableReason = "GitRepositoryNotAvailable"
	// NoStrategyReason is used for ConditionReady when the automation
	// run cannot proceed because there is no update strategy given in
	// the spec.
	NoStrategyReason = "MissingUpdateStrategy"
)
View Source
const ImageUpdateAutomationKind = "ImageUpdateAutomation"

Variables

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

	// 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

func SetImageUpdateAutomationReadiness

func SetImageUpdateAutomationReadiness(auto *ImageUpdateAutomation, status metav1.ConditionStatus, reason, message string)

SetImageUpdateAutomationReadiness sets the ready condition with the given status, reason and message.

Types

type CommitSpec

type CommitSpec struct {
	// AuthorName gives the name to provide when making a commit
	// +required
	AuthorName string `json:"authorName"`
	// AuthorEmail gives the email to provide when making a commit
	// +required
	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 GitCheckoutSpec

type GitCheckoutSpec struct {
	// GitRepositoryRef refers to the resource giving access details
	// to a git repository to update files in.
	// +required
	GitRepositoryRef corev1.LocalObjectReference `json:"gitRepositoryRef"`
	// Branch gives the branch to clone from the git repository.
	// +required
	Branch string `json:"branch"`
}

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 ImageUpdateAutomation

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

	Spec   ImageUpdateAutomationSpec   `json:"spec,omitempty"`
	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) GetStatusConditions

func (auto *ImageUpdateAutomation) GetStatusConditions() *[]metav1.Condition

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 {
	// Checkout gives the parameters for cloning the git repository,
	// ready to make changes.
	// +required
	Checkout GitCheckoutSpec `json:"checkout"`
	// Interval gives an lower bound for how often the automation
	// run should be attempted.
	// +required
	Interval metav1.Duration `json:"interval"`
	// Update gives the specification for how to update the files in
	// the repository
	// +required
	Update UpdateStrategy `json:"update"`
	// Commit specifies how to commit to the git repo
	// +required
	Commit CommitSpec `json:"commit"`

	// 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"`
	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 SettersStrategy

type SettersStrategy struct {
}

SettersStrategy specifies how to use kyaml setters to update the git repository.

func (*SettersStrategy) DeepCopy

func (in *SettersStrategy) DeepCopy() *SettersStrategy

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

func (*SettersStrategy) DeepCopyInto

func (in *SettersStrategy) DeepCopyInto(out *SettersStrategy)

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

type UpdateStrategy

type UpdateStrategy struct {
	// Setters if present means update workloads using setters, via
	// fields marked in the files themselves.
	// +optional
	Setters *SettersStrategy `json:"setters,omitempty"`
}

UpdateStrategy is a union of the various strategies for updating the git repository.

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.

Jump to

Keyboard shortcuts

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