v1alpha1

package
v0.0.1-alpha.1 Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2020 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	// InitializingReason represents the fact that a given source is being initialized.
	InitializingReason string = "Initializing"

	// URLInvalidReason represents the fact that a given source has an invalid URL.
	URLInvalidReason string = "URLInvalid"

	// StorageOperationFailedReason signals a failure caused by a storage operation.
	StorageOperationFailedReason string = "StorageOperationFailed"

	// AuthenticationFailedReason represents the fact that a given secret does not
	// have the required fields or the provided credentials do not match.
	AuthenticationFailedReason string = "AuthenticationFailed"

	// VerificationFailedReason represents the fact that the cryptographic provenance
	// verification for the source failed.
	VerificationFailedReason string = "VerificationFailed"
)
View Source
const (
	// GitOperationSucceedReason represents the fact that the git clone, pull
	// and checkout operations succeeded.
	GitOperationSucceedReason string = "GitOperationSucceed"

	// GitOperationFailedReason represents the fact that the git clone, pull or
	// checkout operations failed.
	GitOperationFailedReason string = "GitOperationFailed"
)
View Source
const (
	// ChartPullFailedReason represents the fact that the pull of the
	// Helm chart failed.
	ChartPullFailedReason string = "ChartPullFailed"

	// ChartPulLSucceededReason represents the fact that the pull of
	// the Helm chart succeeded.
	ChartPullSucceededReason string = "ChartPullSucceeded"
)
View Source
const (
	// IndexationFailedReason represents the fact that the indexation
	// of the given Helm repository failed.
	IndexationFailedReason string = "IndexationFailed"

	// IndexationSucceededReason represents the fact that the indexation
	// of the given Helm repository succeeded.
	IndexationSucceededReason string = "IndexationSucceed"
)
View Source
const (
	// ReadyCondition represents the fact that a given source is in ready state.
	ReadyCondition string = "Ready"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "source.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 ArtifactPath

func ArtifactPath(kind, namespace, name, filename string) string

ArtifactPath returns the artifact path in the form of <source-kind>/<source-namespace>/<source-name>/<artifact-filename>

func GitRepositoryReadyMessage

func GitRepositoryReadyMessage(repository GitRepository) string

func HelmChartReadyMessage

func HelmChartReadyMessage(chart HelmChart) string

func HelmRepositoryReadyMessage

func HelmRepositoryReadyMessage(repository HelmRepository) string

Types

type Artifact

type Artifact struct {
	// Path is the local file path of this artifact.
	// +required
	Path string `json:"path"`

	// URL is the HTTP address of this artifact.
	// +required
	URL string `json:"url"`

	// Revision is a human readable identifier traceable in the origin source system.
	// It can be a commit sha, git tag, a helm index timestamp,
	// a helm chart version, a checksum, etc.
	// +optional
	Revision string `json:"revision"`

	// LastUpdateTime is the timestamp corresponding to the last
	// update of this artifact.
	// +required
	LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"`
}

Artifact represents the output of a source synchronisation

func (*Artifact) DeepCopy

func (in *Artifact) DeepCopy() *Artifact

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

func (*Artifact) DeepCopyInto

func (in *Artifact) DeepCopyInto(out *Artifact)

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

type GitRepository

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

	Spec   GitRepositorySpec   `json:"spec,omitempty"`
	Status GitRepositoryStatus `json:"status,omitempty"`
}

GitRepository is the Schema for the gitrepositories API

func GitRepositoryNotReady

func GitRepositoryNotReady(repository GitRepository, reason, message string) GitRepository

func GitRepositoryReady

func GitRepositoryReady(repository GitRepository, artifact Artifact, url, reason, message string) GitRepository

func (*GitRepository) DeepCopy

func (in *GitRepository) DeepCopy() *GitRepository

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

func (*GitRepository) DeepCopyInto

func (in *GitRepository) DeepCopyInto(out *GitRepository)

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

func (*GitRepository) DeepCopyObject

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

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

func (*GitRepository) GetArtifact

func (in *GitRepository) GetArtifact() *Artifact

GetArtifact returns the latest artifact from the source if present in the status sub-resource.

func (*GitRepository) GetInterval

func (in *GitRepository) GetInterval() metav1.Duration

GetInterval returns the interval at which the source is updated.

type GitRepositoryList

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

GitRepositoryList contains a list of GitRepository +kubebuilder:object:root=true

func (*GitRepositoryList) DeepCopy

func (in *GitRepositoryList) DeepCopy() *GitRepositoryList

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

func (*GitRepositoryList) DeepCopyInto

func (in *GitRepositoryList) DeepCopyInto(out *GitRepositoryList)

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

func (*GitRepositoryList) DeepCopyObject

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

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

type GitRepositoryRef

type GitRepositoryRef struct {
	// The git branch to checkout, defaults to master.
	// +optional
	Branch string `json:"branch"`

	// The git tag to checkout, takes precedence over branch.
	// +optional
	Tag string `json:"tag"`

	// The git tag semver expression, takes precedence over tag.
	// +optional
	SemVer string `json:"semver"`

	// The git commit sha to checkout, if specified tag filters will be
	// ignored.
	// +optional
	Commit string `json:"commit"`
}

GitRepositoryRef defines the git ref used for pull and checkout operations.

func (*GitRepositoryRef) DeepCopy

func (in *GitRepositoryRef) DeepCopy() *GitRepositoryRef

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

func (*GitRepositoryRef) DeepCopyInto

func (in *GitRepositoryRef) DeepCopyInto(out *GitRepositoryRef)

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

type GitRepositorySpec

type GitRepositorySpec struct {
	// The repository URL, can be a HTTP or SSH address.
	// +kubebuilder:validation:Pattern="^(http|https|ssh)://"
	// +required
	URL string `json:"url"`

	// The secret name containing the Git credentials.
	// For HTTPS repositories the secret must contain username and password
	// fields.
	// For SSH repositories the secret must contain identity, identity.pub and
	// known_hosts fields.
	// +optional
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`

	// The interval at which to check for repository updates.
	// +required
	Interval metav1.Duration `json:"interval"`

	// The git reference to checkout and monitor for changes, defaults to
	// master branch.
	// +optional
	Reference *GitRepositoryRef `json:"ref,omitempty"`

	// Verify OpenPGP signature for the commit that HEAD points to.
	// +optional
	Verification *GitRepositoryVerification `json:"verify,omitempty"`
}

GitRepositorySpec defines the desired state of a Git repository.

func (*GitRepositorySpec) DeepCopy

func (in *GitRepositorySpec) DeepCopy() *GitRepositorySpec

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

func (*GitRepositorySpec) DeepCopyInto

func (in *GitRepositorySpec) DeepCopyInto(out *GitRepositorySpec)

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

type GitRepositoryStatus

type GitRepositoryStatus struct {
	// +optional
	Conditions []SourceCondition `json:"conditions,omitempty"`

	// URL is the download link for the artifact output of the last repository
	// sync.
	// +optional
	URL string `json:"url,omitempty"`

	// Artifact represents the output of the last successful repository sync.
	// +optional
	Artifact *Artifact `json:"artifact,omitempty"`
}

GitRepositoryStatus defines the observed state of a Git repository.

func (*GitRepositoryStatus) DeepCopy

func (in *GitRepositoryStatus) DeepCopy() *GitRepositoryStatus

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

func (*GitRepositoryStatus) DeepCopyInto

func (in *GitRepositoryStatus) DeepCopyInto(out *GitRepositoryStatus)

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

type GitRepositoryVerification

type GitRepositoryVerification struct {
	// Mode describes what git object should be verified, currently ('head').
	// +kubebuilder:validation:Enum=head
	Mode string `json:"mode"`

	// The secret name containing the public keys of all trusted git authors.
	SecretRef corev1.LocalObjectReference `json:"secretRef,omitempty"`
}

GitRepositoryVerification defines the OpenPGP signature verification process.

func (*GitRepositoryVerification) DeepCopy

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

func (*GitRepositoryVerification) DeepCopyInto

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

type HelmChart

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

	Spec   HelmChartSpec   `json:"spec,omitempty"`
	Status HelmChartStatus `json:"status,omitempty"`
}

HelmChart is the Schema for the helmcharts API

func HelmChartNotReady

func HelmChartNotReady(chart HelmChart, reason, message string) HelmChart

func HelmChartReady

func HelmChartReady(chart HelmChart, artifact Artifact, url, reason, message string) HelmChart

func (*HelmChart) DeepCopy

func (in *HelmChart) DeepCopy() *HelmChart

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

func (*HelmChart) DeepCopyInto

func (in *HelmChart) DeepCopyInto(out *HelmChart)

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

func (*HelmChart) DeepCopyObject

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

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

func (*HelmChart) GetArtifact

func (in *HelmChart) GetArtifact() *Artifact

GetArtifact returns the latest artifact from the source if present in the status sub-resource.

func (*HelmChart) GetInterval

func (in *HelmChart) GetInterval() metav1.Duration

GetInterval returns the interval at which the source is updated.

type HelmChartList

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

HelmChartList contains a list of HelmChart

func (*HelmChartList) DeepCopy

func (in *HelmChartList) DeepCopy() *HelmChartList

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

func (*HelmChartList) DeepCopyInto

func (in *HelmChartList) DeepCopyInto(out *HelmChartList)

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

func (*HelmChartList) DeepCopyObject

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

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

type HelmChartSpec

type HelmChartSpec struct {
	// The name of the Helm chart, as made available by the referenced
	// Helm repository.
	// +required
	Name string `json:"name"`

	// The chart version semver expression, defaults to latest when
	// omitted.
	// +optional
	Version string `json:"version,omitempty"`

	// The name of the HelmRepository the chart is available at.
	// +required
	HelmRepositoryRef corev1.LocalObjectReference `json:"helmRepositoryRef"`

	// The interval at which to check the Helm repository for updates.
	// +required
	Interval metav1.Duration `json:"interval"`
}

HelmChartSpec defines the desired state of a Helm chart.

func (*HelmChartSpec) DeepCopy

func (in *HelmChartSpec) DeepCopy() *HelmChartSpec

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

func (*HelmChartSpec) DeepCopyInto

func (in *HelmChartSpec) DeepCopyInto(out *HelmChartSpec)

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

type HelmChartStatus

type HelmChartStatus struct {
	// +optional
	Conditions []SourceCondition `json:"conditions,omitempty"`

	// URL is the download link for the last chart pulled.
	// +optional
	URL string `json:"url,omitempty"`

	// Artifact represents the output of the last successful chart sync.
	// +optional
	Artifact *Artifact `json:"artifact,omitempty"`
}

HelmChartStatus defines the observed state of the HelmChart.

func (*HelmChartStatus) DeepCopy

func (in *HelmChartStatus) DeepCopy() *HelmChartStatus

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

func (*HelmChartStatus) DeepCopyInto

func (in *HelmChartStatus) DeepCopyInto(out *HelmChartStatus)

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

type HelmRepository

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

	Spec   HelmRepositorySpec   `json:"spec,omitempty"`
	Status HelmRepositoryStatus `json:"status,omitempty"`
}

HelmRepository is the Schema for the helmrepositories API

func HelmRepositoryNotReady

func HelmRepositoryNotReady(repository HelmRepository, reason, message string) HelmRepository

func HelmRepositoryReady

func HelmRepositoryReady(repository HelmRepository, artifact Artifact, url, reason, message string) HelmRepository

func (*HelmRepository) DeepCopy

func (in *HelmRepository) DeepCopy() *HelmRepository

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

func (*HelmRepository) DeepCopyInto

func (in *HelmRepository) DeepCopyInto(out *HelmRepository)

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

func (*HelmRepository) DeepCopyObject

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

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

func (*HelmRepository) GetArtifact

func (in *HelmRepository) GetArtifact() *Artifact

GetArtifact returns the latest artifact from the source if present in the status sub-resource.

func (*HelmRepository) GetInterval

func (in *HelmRepository) GetInterval() metav1.Duration

GetInterval returns the interval at which the source is updated.

type HelmRepositoryList

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

HelmRepositoryList contains a list of HelmRepository +kubebuilder:object:root=true

func (*HelmRepositoryList) DeepCopy

func (in *HelmRepositoryList) DeepCopy() *HelmRepositoryList

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

func (*HelmRepositoryList) DeepCopyInto

func (in *HelmRepositoryList) DeepCopyInto(out *HelmRepositoryList)

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

func (*HelmRepositoryList) DeepCopyObject

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

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

type HelmRepositorySpec

type HelmRepositorySpec struct {
	// The Helm repository URL, a valid URL contains at least a
	// protocol and host.
	// +required
	URL string `json:"url"`

	// The name of the secret containing authentication credentials
	// for the Helm repository.
	// For HTTP/S basic auth the secret must contain username and password
	// fields.
	// For TLS the secret must contain caFile, keyFile and caCert fields.
	// +optional
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`

	// The interval at which to check the upstream for updates.
	// +required
	Interval metav1.Duration `json:"interval"`
}

HelmRepositorySpec defines the reference to a Helm repository.

func (*HelmRepositorySpec) DeepCopy

func (in *HelmRepositorySpec) DeepCopy() *HelmRepositorySpec

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

func (*HelmRepositorySpec) DeepCopyInto

func (in *HelmRepositorySpec) DeepCopyInto(out *HelmRepositorySpec)

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

type HelmRepositoryStatus

type HelmRepositoryStatus struct {
	// +optional
	Conditions []SourceCondition `json:"conditions,omitempty"`

	// URL is the download link for the last index fetched.
	// +optional
	URL string `json:"url,omitempty"`

	// Artifact represents the output of the last successful repository sync.
	// +optional
	Artifact *Artifact `json:"artifact,omitempty"`
}

HelmRepositoryStatus defines the observed state of the HelmRepository.

func (*HelmRepositoryStatus) DeepCopy

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

func (*HelmRepositoryStatus) DeepCopyInto

func (in *HelmRepositoryStatus) DeepCopyInto(out *HelmRepositoryStatus)

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

type Source

type Source interface {
	// GetArtifact returns the latest artifact from the source
	// if present in the status sub-resource.
	GetArtifact() *Artifact
	// GetInterval returns the interval at which the source is updated.
	GetInterval() metav1.Duration
}

Source interface must be supported by all API types. +k8s:deepcopy-gen=false

type SourceCondition

type SourceCondition struct {
	// Type of the condition, currently ('Ready').
	// +required
	Type string `json:"type"`

	// Status of the condition, one of ('True', 'False', 'Unknown').
	// +required
	Status corev1.ConditionStatus `json:"status"`

	// LastTransitionTime is the timestamp corresponding to the last status
	// change of this condition.
	// +required
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`

	// Reason is a brief machine readable explanation for the condition's last
	// transition.
	// +required
	Reason string `json:"reason,omitempty"`

	// Message is a human readable description of the details of the last
	// transition, complementing reason.
	// +optional
	Message string `json:"message,omitempty"`
}

SourceCondition contains condition information for a source.

func (*SourceCondition) DeepCopy

func (in *SourceCondition) DeepCopy() *SourceCondition

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

func (*SourceCondition) DeepCopyInto

func (in *SourceCondition) DeepCopyInto(out *SourceCondition)

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