...

Package v1beta1

import "github.com/fluxcd/source-controller/api/v1beta1"
Overview
Index

Overview ▾

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

Index ▾

Constants
Variables
func ArtifactDir(kind, namespace, name string) string
func ArtifactPath(kind, namespace, name, filename string) string
func BucketReadyMessage(bucket Bucket) string
func GitRepositoryReadyMessage(repository GitRepository) string
func HelmChartReadyMessage(chart HelmChart) string
func HelmRepositoryReadyMessage(repository HelmRepository) string
type Artifact
    func (in *Artifact) DeepCopy() *Artifact
    func (in *Artifact) DeepCopyInto(out *Artifact)
    func (in *Artifact) HasRevision(revision string) bool
type Bucket
    func BucketNotReady(bucket Bucket, reason, message string) Bucket
    func BucketProgressing(bucket Bucket) Bucket
    func BucketReady(bucket Bucket, artifact Artifact, url, reason, message string) Bucket
    func (in *Bucket) DeepCopy() *Bucket
    func (in *Bucket) DeepCopyInto(out *Bucket)
    func (in *Bucket) DeepCopyObject() runtime.Object
    func (in *Bucket) GetArtifact() *Artifact
    func (in *Bucket) GetInterval() metav1.Duration
    func (in *Bucket) GetStatusConditions() *[]metav1.Condition
type BucketList
    func (in *BucketList) DeepCopy() *BucketList
    func (in *BucketList) DeepCopyInto(out *BucketList)
    func (in *BucketList) DeepCopyObject() runtime.Object
type BucketSpec
    func (in *BucketSpec) DeepCopy() *BucketSpec
    func (in *BucketSpec) DeepCopyInto(out *BucketSpec)
type BucketStatus
    func (in *BucketStatus) DeepCopy() *BucketStatus
    func (in *BucketStatus) DeepCopyInto(out *BucketStatus)
type GitRepository
    func GitRepositoryNotReady(repository GitRepository, reason, message string) GitRepository
    func GitRepositoryProgressing(repository GitRepository) GitRepository
    func GitRepositoryReady(repository GitRepository, artifact Artifact, includedArtifacts []*Artifact, url, reason, message string) GitRepository
    func (in *GitRepository) DeepCopy() *GitRepository
    func (in *GitRepository) DeepCopyInto(out *GitRepository)
    func (in *GitRepository) DeepCopyObject() runtime.Object
    func (in *GitRepository) GetArtifact() *Artifact
    func (in *GitRepository) GetInterval() metav1.Duration
    func (in *GitRepository) GetStatusConditions() *[]metav1.Condition
type GitRepositoryInclude
    func (in *GitRepositoryInclude) DeepCopy() *GitRepositoryInclude
    func (in *GitRepositoryInclude) DeepCopyInto(out *GitRepositoryInclude)
    func (in *GitRepositoryInclude) GetFromPath() string
    func (in *GitRepositoryInclude) GetToPath() string
type GitRepositoryList
    func (in *GitRepositoryList) DeepCopy() *GitRepositoryList
    func (in *GitRepositoryList) DeepCopyInto(out *GitRepositoryList)
    func (in *GitRepositoryList) DeepCopyObject() runtime.Object
type GitRepositoryRef
    func (in *GitRepositoryRef) DeepCopy() *GitRepositoryRef
    func (in *GitRepositoryRef) DeepCopyInto(out *GitRepositoryRef)
type GitRepositorySpec
    func (in *GitRepositorySpec) DeepCopy() *GitRepositorySpec
    func (in *GitRepositorySpec) DeepCopyInto(out *GitRepositorySpec)
type GitRepositoryStatus
    func (in *GitRepositoryStatus) DeepCopy() *GitRepositoryStatus
    func (in *GitRepositoryStatus) DeepCopyInto(out *GitRepositoryStatus)
type GitRepositoryVerification
    func (in *GitRepositoryVerification) DeepCopy() *GitRepositoryVerification
    func (in *GitRepositoryVerification) DeepCopyInto(out *GitRepositoryVerification)
type HelmChart
    func HelmChartNotReady(chart HelmChart, reason, message string) HelmChart
    func HelmChartProgressing(chart HelmChart) HelmChart
    func HelmChartReady(chart HelmChart, artifact Artifact, url, reason, message string) HelmChart
    func (in *HelmChart) DeepCopy() *HelmChart
    func (in *HelmChart) DeepCopyInto(out *HelmChart)
    func (in *HelmChart) DeepCopyObject() runtime.Object
    func (in *HelmChart) GetArtifact() *Artifact
    func (in *HelmChart) GetInterval() metav1.Duration
    func (in *HelmChart) GetStatusConditions() *[]metav1.Condition
    func (in *HelmChart) GetValuesFiles() []string
type HelmChartList
    func (in *HelmChartList) DeepCopy() *HelmChartList
    func (in *HelmChartList) DeepCopyInto(out *HelmChartList)
    func (in *HelmChartList) DeepCopyObject() runtime.Object
type HelmChartSpec
    func (in *HelmChartSpec) DeepCopy() *HelmChartSpec
    func (in *HelmChartSpec) DeepCopyInto(out *HelmChartSpec)
type HelmChartStatus
    func (in *HelmChartStatus) DeepCopy() *HelmChartStatus
    func (in *HelmChartStatus) DeepCopyInto(out *HelmChartStatus)
type HelmRepository
    func HelmRepositoryNotReady(repository HelmRepository, reason, message string) HelmRepository
    func HelmRepositoryProgressing(repository HelmRepository) HelmRepository
    func HelmRepositoryReady(repository HelmRepository, artifact Artifact, url, reason, message string) HelmRepository
    func (in *HelmRepository) DeepCopy() *HelmRepository
    func (in *HelmRepository) DeepCopyInto(out *HelmRepository)
    func (in *HelmRepository) DeepCopyObject() runtime.Object
    func (in *HelmRepository) GetArtifact() *Artifact
    func (in *HelmRepository) GetInterval() metav1.Duration
    func (in *HelmRepository) GetStatusConditions() *[]metav1.Condition
type HelmRepositoryList
    func (in *HelmRepositoryList) DeepCopy() *HelmRepositoryList
    func (in *HelmRepositoryList) DeepCopyInto(out *HelmRepositoryList)
    func (in *HelmRepositoryList) DeepCopyObject() runtime.Object
type HelmRepositorySpec
    func (in *HelmRepositorySpec) DeepCopy() *HelmRepositorySpec
    func (in *HelmRepositorySpec) DeepCopyInto(out *HelmRepositorySpec)
type HelmRepositoryStatus
    func (in *HelmRepositoryStatus) DeepCopy() *HelmRepositoryStatus
    func (in *HelmRepositoryStatus) DeepCopyInto(out *HelmRepositoryStatus)
type LocalHelmChartSourceReference
    func (in *LocalHelmChartSourceReference) DeepCopy() *LocalHelmChartSourceReference
    func (in *LocalHelmChartSourceReference) DeepCopyInto(out *LocalHelmChartSourceReference)
type Source

Package files

artifact_types.go bucket_types.go condition_types.go doc.go gitrepository_types.go groupversion_info.go helmchart_types.go helmrepository_types.go source.go zz_generated.deepcopy.go

Constants

const (
    GenericBucketProvider string = "generic"
    AmazonBucketProvider  string = "aws"
    GoogleBucketProvider  string = "gcp"
)
const (
    // BucketOperationSucceedReason represents the fact that the bucket listing and
    // download operations succeeded.
    BucketOperationSucceedReason string = "BucketOperationSucceed"

    // BucketOperationFailedReason represents the fact that the bucket listing or
    // download operations failed.
    BucketOperationFailedReason string = "BucketOperationFailed"
)
const (
    // 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"
)
const (
    // GitRepositoryKind is the string representation of a GitRepository.
    GitRepositoryKind = "GitRepository"

    // GoGitImplementation represents the go-git Git implementation kind.
    GoGitImplementation = "go-git"
    // LibGit2Implementation represents the git2go Git implementation kind.
    LibGit2Implementation = "libgit2"
)
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"
)
const (
    // ReconcileStrategyChartVersion reconciles when the version of the Helm chart is different.
    ReconcileStrategyChartVersion string = "ChartVersion"

    // ReconcileStrategyRevision reconciles when the Revision of the source is different.
    ReconcileStrategyRevision string = "Revision"
)
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"

    // ChartPackageFailedReason represent the fact that the package of the Helm
    // chart failed.
    ChartPackageFailedReason string = "ChartPackageFailed"

    // ChartPackageSucceededReason represents the fact that the package of the Helm
    // chart succeeded.
    ChartPackageSucceededReason string = "ChartPackageSucceeded"
)
const (
    // HelmRepositoryKind is the string representation of a HelmRepository.
    HelmRepositoryKind = "HelmRepository"
    // HelmRepositoryURLIndexKey is the key to use for indexing HelmRepository
    // resources by their HelmRepositorySpec.URL.
    HelmRepositoryURLIndexKey = ".metadata.helmRepositoryURL"
)
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"
)
const (
    // BucketKind is the string representation of a Bucket.
    BucketKind = "Bucket"
)

HelmChartKind is the string representation of a HelmChart.

const HelmChartKind = "HelmChart"
const SourceFinalizer = "finalizers.fluxcd.io"
const (
    // SourceIndexKey is the key used for indexing resources
    // resources based on their Source.
    SourceIndexKey string = ".metadata.source"
)

Variables

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

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

func ArtifactDir

func ArtifactDir(kind, namespace, name string) string

ArtifactDir returns the artifact dir path in the form of <source-kind>/<source-namespace>/<source-name>.

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 BucketReadyMessage

func BucketReadyMessage(bucket Bucket) string

BucketReadyMessage returns the message of the metav1.Condition of type meta.ReadyCondition with status 'True' if present, or an empty string.

func GitRepositoryReadyMessage

func GitRepositoryReadyMessage(repository GitRepository) string

GitRepositoryReadyMessage returns the message of the metav1.Condition of type meta.ReadyCondition with status 'True' if present, or an empty string.

func HelmChartReadyMessage

func HelmChartReadyMessage(chart HelmChart) string

HelmChartReadyMessage returns the message of the meta.ReadyCondition with status 'True', or an empty string.

func HelmRepositoryReadyMessage

func HelmRepositoryReadyMessage(repository HelmRepository) string

HelmRepositoryReadyMessage returns the message of the metav1.Condition of type meta.ReadyCondition with status 'True' if present, or an empty string.

type Artifact

Artifact represents the output of a source synchronisation.

type Artifact struct {
    // Path is the relative 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 Git commit SHA, Git tag, a Helm index timestamp, a Helm
    // chart version, etc.
    // +optional
    Revision string `json:"revision"`

    // Checksum is the SHA256 checksum of the artifact.
    // +optional
    Checksum string `json:"checksum"`

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

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.

func (*Artifact) HasRevision

func (in *Artifact) HasRevision(revision string) bool

HasRevision returns true if the given revision matches the current Revision of the Artifact.

type Bucket

Bucket is the Schema for the buckets API

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

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

func BucketNotReady

func BucketNotReady(bucket Bucket, reason, message string) Bucket

BucketNotReady sets the meta.ReadyCondition on the Bucket to 'False', with the given reason and message. It returns the modified Bucket.

func BucketProgressing

func BucketProgressing(bucket Bucket) Bucket

BucketProgressing resets the conditions of the Bucket to metav1.Condition of type meta.ReadyCondition with status 'Unknown' and meta.ProgressingReason reason and message. It returns the modified Bucket.

func BucketReady

func BucketReady(bucket Bucket, artifact Artifact, url, reason, message string) Bucket

BucketReady sets the given Artifact and URL on the Bucket and sets the meta.ReadyCondition to 'True', with the given reason and message. It returns the modified Bucket.

func (*Bucket) DeepCopy

func (in *Bucket) DeepCopy() *Bucket

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

func (*Bucket) DeepCopyInto

func (in *Bucket) DeepCopyInto(out *Bucket)

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

func (*Bucket) DeepCopyObject

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

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

func (*Bucket) GetArtifact

func (in *Bucket) GetArtifact() *Artifact

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

func (*Bucket) GetInterval

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

GetInterval returns the interval at which the source is updated.

func (*Bucket) GetStatusConditions

func (in *Bucket) GetStatusConditions() *[]metav1.Condition

GetStatusConditions returns a pointer to the Status.Conditions slice

type BucketList

BucketList contains a list of Bucket

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

func (*BucketList) DeepCopy

func (in *BucketList) DeepCopy() *BucketList

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

func (*BucketList) DeepCopyInto

func (in *BucketList) DeepCopyInto(out *BucketList)

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

func (*BucketList) DeepCopyObject

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

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

type BucketSpec

BucketSpec defines the desired state of an S3 compatible bucket

type BucketSpec struct {
    // The S3 compatible storage provider name, default ('generic').
    // +kubebuilder:validation:Enum=generic;aws;gcp
    // +kubebuilder:default:=generic
    // +optional
    Provider string `json:"provider,omitempty"`

    // The bucket name.
    // +required
    BucketName string `json:"bucketName"`

    // The bucket endpoint address.
    // +required
    Endpoint string `json:"endpoint"`

    // Insecure allows connecting to a non-TLS S3 HTTP endpoint.
    // +optional
    Insecure bool `json:"insecure,omitempty"`

    // The bucket region.
    // +optional
    Region string `json:"region,omitempty"`

    // The name of the secret containing authentication credentials
    // for the Bucket.
    // +optional
    SecretRef *meta.LocalObjectReference `json:"secretRef,omitempty"`

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

    // The timeout for download operations, defaults to 60s.
    // +kubebuilder:default="60s"
    // +optional
    Timeout *metav1.Duration `json:"timeout,omitempty"`

    // Ignore overrides the set of excluded patterns in the .sourceignore format
    // (which is the same as .gitignore). If not provided, a default will be used,
    // consult the documentation for your version to find out what those are.
    // +optional
    Ignore *string `json:"ignore,omitempty"`

    // This flag tells the controller to suspend the reconciliation of this source.
    // +optional
    Suspend bool `json:"suspend,omitempty"`

    // AccessFrom defines an Access Control List for allowing cross-namespace references to this object.
    // +optional
    AccessFrom *acl.AccessFrom `json:"accessFrom,omitempty"`
}

func (*BucketSpec) DeepCopy

func (in *BucketSpec) DeepCopy() *BucketSpec

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

func (*BucketSpec) DeepCopyInto

func (in *BucketSpec) DeepCopyInto(out *BucketSpec)

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

type BucketStatus

BucketStatus defines the observed state of a bucket

type BucketStatus struct {
    // ObservedGeneration is the last observed generation.
    // +optional
    ObservedGeneration int64 `json:"observedGeneration,omitempty"`

    // Conditions holds the conditions for the Bucket.
    // +optional
    Conditions []metav1.Condition `json:"conditions,omitempty"`

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

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

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

func (*BucketStatus) DeepCopy

func (in *BucketStatus) DeepCopy() *BucketStatus

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

func (*BucketStatus) DeepCopyInto

func (in *BucketStatus) DeepCopyInto(out *BucketStatus)

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

type GitRepository

GitRepository is the Schema for the gitrepositories API

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

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

func GitRepositoryNotReady

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

GitRepositoryNotReady sets the meta.ReadyCondition on the given GitRepository to 'False', with the given reason and message. It returns the modified GitRepository.

func GitRepositoryProgressing

func GitRepositoryProgressing(repository GitRepository) GitRepository

GitRepositoryProgressing resets the conditions of the GitRepository to metav1.Condition of type meta.ReadyCondition with status 'Unknown' and meta.ProgressingReason reason and message. It returns the modified GitRepository.

func GitRepositoryReady

func GitRepositoryReady(repository GitRepository, artifact Artifact, includedArtifacts []*Artifact, url, reason, message string) GitRepository

GitRepositoryReady sets the given Artifact and URL on the GitRepository and sets the meta.ReadyCondition to 'True', with the given reason and message. It returns the modified 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.

func (*GitRepository) GetStatusConditions

func (in *GitRepository) GetStatusConditions() *[]metav1.Condition

GetStatusConditions returns a pointer to the Status.Conditions slice

type GitRepositoryInclude

GitRepositoryInclude defines a source with a from and to path.

type GitRepositoryInclude struct {
    // Reference to a GitRepository to include.
    GitRepositoryRef meta.LocalObjectReference `json:"repository"`

    // The path to copy contents from, defaults to the root directory.
    // +optional
    FromPath string `json:"fromPath"`

    // The path to copy contents to, defaults to the name of the source ref.
    // +optional
    ToPath string `json:"toPath"`
}

func (*GitRepositoryInclude) DeepCopy

func (in *GitRepositoryInclude) DeepCopy() *GitRepositoryInclude

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

func (*GitRepositoryInclude) DeepCopyInto

func (in *GitRepositoryInclude) DeepCopyInto(out *GitRepositoryInclude)

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

func (*GitRepositoryInclude) GetFromPath

func (in *GitRepositoryInclude) GetFromPath() string

func (*GitRepositoryInclude) GetToPath

func (in *GitRepositoryInclude) GetToPath() string

type GitRepositoryList

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

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

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

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

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

    // The Git tag to checkout, takes precedence over Branch.
    // +optional
    Tag string `json:"tag,omitempty"`

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

    // The Git commit SHA to checkout, if specified Tag filters will be ignored.
    // +optional
    Commit string `json:"commit,omitempty"`
}

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

GitRepositorySpec defines the desired state of a Git repository.

type GitRepositorySpec struct {
    // The repository URL, can be a HTTP/S 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 and known_hosts
    // fields.
    // +optional
    SecretRef *meta.LocalObjectReference `json:"secretRef,omitempty"`

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

    // The timeout for remote Git operations like cloning, defaults to 60s.
    // +kubebuilder:default="60s"
    // +optional
    Timeout *metav1.Duration `json:"timeout,omitempty"`

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

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

    // Ignore overrides the set of excluded patterns in the .sourceignore format
    // (which is the same as .gitignore). If not provided, a default will be used,
    // consult the documentation for your version to find out what those are.
    // +optional
    Ignore *string `json:"ignore,omitempty"`

    // This flag tells the controller to suspend the reconciliation of this source.
    // +optional
    Suspend bool `json:"suspend,omitempty"`

    // Determines which git client library to use.
    // Defaults to go-git, valid values are ('go-git', 'libgit2').
    // +kubebuilder:validation:Enum=go-git;libgit2
    // +kubebuilder:default:=go-git
    // +optional
    GitImplementation string `json:"gitImplementation,omitempty"`

    // When enabled, after the clone is created, initializes all submodules within,
    // using their default settings.
    // This option is available only when using the 'go-git' GitImplementation.
    // +optional
    RecurseSubmodules bool `json:"recurseSubmodules,omitempty"`

    // Extra git repositories to map into the repository
    Include []GitRepositoryInclude `json:"include,omitempty"`

    // AccessFrom defines an Access Control List for allowing cross-namespace references to this object.
    // +optional
    AccessFrom *acl.AccessFrom `json:"accessFrom,omitempty"`
}

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

GitRepositoryStatus defines the observed state of a Git repository.

type GitRepositoryStatus struct {
    // ObservedGeneration is the last observed generation.
    // +optional
    ObservedGeneration int64 `json:"observedGeneration,omitempty"`

    // Conditions holds the conditions for the GitRepository.
    // +optional
    Conditions []metav1.Condition `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"`

    // IncludedArtifacts represents the included artifacts from the last successful repository sync.
    // +optional
    IncludedArtifacts []*Artifact `json:"includedArtifacts,omitempty"`

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

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

GitRepositoryVerification defines the OpenPGP signature verification process.

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 meta.LocalObjectReference `json:"secretRef,omitempty"`
}

func (*GitRepositoryVerification) DeepCopy

func (in *GitRepositoryVerification) DeepCopy() *GitRepositoryVerification

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

func (*GitRepositoryVerification) DeepCopyInto

func (in *GitRepositoryVerification) DeepCopyInto(out *GitRepositoryVerification)

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

type HelmChart

HelmChart is the Schema for the helmcharts API

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

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

func HelmChartNotReady

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

HelmChartNotReady sets the meta.ReadyCondition on the given HelmChart to 'False', with the given reason and message. It returns the modified HelmChart.

func HelmChartProgressing

func HelmChartProgressing(chart HelmChart) HelmChart

HelmChartProgressing resets the conditions of the HelmChart to meta.Condition of type meta.ReadyCondition with status 'Unknown' and meta.ProgressingReason reason and message. It returns the modified HelmChart.

func HelmChartReady

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

HelmChartReady sets the given Artifact and URL on the HelmChart and sets the meta.ReadyCondition to 'True', with the given reason and message. It returns the modified 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.

func (*HelmChart) GetStatusConditions

func (in *HelmChart) GetStatusConditions() *[]metav1.Condition

GetStatusConditions returns a pointer to the Status.Conditions slice

func (*HelmChart) GetValuesFiles

func (in *HelmChart) GetValuesFiles() []string

GetValuesFiles returns a merged list of ValuesFiles.

type HelmChartList

HelmChartList contains a list of HelmChart

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

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

HelmChartSpec defines the desired state of a Helm chart.

type HelmChartSpec struct {
    // The name or path the Helm chart is available at in the SourceRef.
    // +required
    Chart string `json:"chart"`

    // The chart version semver expression, ignored for charts from GitRepository
    // and Bucket sources. Defaults to latest when omitted.
    // +kubebuilder:default:=*
    // +optional
    Version string `json:"version,omitempty"`

    // The reference to the Source the chart is available at.
    // +required
    SourceRef LocalHelmChartSourceReference `json:"sourceRef"`

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

    // Determines what enables the creation of a new artifact. Valid values are
    // ('ChartVersion', 'Revision').
    // See the documentation of the values for an explanation on their behavior.
    // Defaults to ChartVersion when omitted.
    // +kubebuilder:validation:Enum=ChartVersion;Revision
    // +kubebuilder:default:=ChartVersion
    // +optional
    ReconcileStrategy string `json:"reconcileStrategy,omitempty"`

    // Alternative list of values files to use as the chart values (values.yaml
    // is not included by default), expected to be a relative path in the SourceRef.
    // Values files are merged in the order of this list with the last file overriding
    // the first. Ignored when omitted.
    // +optional
    ValuesFiles []string `json:"valuesFiles,omitempty"`

    // Alternative values file to use as the default chart values, expected to
    // be a relative path in the SourceRef. Deprecated in favor of ValuesFiles,
    // for backwards compatibility the file defined here is merged before the
    // ValuesFiles items. Ignored when omitted.
    // +optional
    // +deprecated
    ValuesFile string `json:"valuesFile,omitempty"`

    // This flag tells the controller to suspend the reconciliation of this source.
    // +optional
    Suspend bool `json:"suspend,omitempty"`

    // AccessFrom defines an Access Control List for allowing cross-namespace references to this object.
    // +optional
    AccessFrom *acl.AccessFrom `json:"accessFrom,omitempty"`
}

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

HelmChartStatus defines the observed state of the HelmChart.

type HelmChartStatus struct {
    // ObservedGeneration is the last observed generation.
    // +optional
    ObservedGeneration int64 `json:"observedGeneration,omitempty"`

    // Conditions holds the conditions for the HelmChart.
    // +optional
    Conditions []metav1.Condition `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"`

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

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

HelmRepository is the Schema for the helmrepositories API

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

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

func HelmRepositoryNotReady

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

HelmRepositoryNotReady sets the meta.ReadyCondition on the given HelmRepository to 'False', with the given reason and message. It returns the modified HelmRepository.

func HelmRepositoryProgressing

func HelmRepositoryProgressing(repository HelmRepository) HelmRepository

HelmRepositoryProgressing resets the conditions of the HelmRepository to metav1.Condition of type meta.ReadyCondition with status 'Unknown' and meta.ProgressingReason reason and message. It returns the modified HelmRepository.

func HelmRepositoryReady

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

HelmRepositoryReady sets the given Artifact and URL on the HelmRepository and sets the meta.ReadyCondition to 'True', with the given reason and message. It returns the modified 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.

func (*HelmRepository) GetStatusConditions

func (in *HelmRepository) GetStatusConditions() *[]metav1.Condition

GetStatusConditions returns a pointer to the Status.Conditions slice

type HelmRepositoryList

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

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

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

HelmRepositorySpec defines the reference to a Helm repository.

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 a certFile and keyFile, and/or
    // caFile fields.
    // +optional
    SecretRef *meta.LocalObjectReference `json:"secretRef,omitempty"`

    // PassCredentials allows the credentials from the SecretRef to be passed on to
    // a host that does not match the host as defined in URL.
    // This may be required if the host of the advertised chart URLs in the index
    // differ from the defined URL.
    // Enabling this should be done with caution, as it can potentially result in
    // credentials getting stolen in a MITM-attack.
    // +optional
    PassCredentials bool `json:"passCredentials,omitempty"`

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

    // The timeout of index downloading, defaults to 60s.
    // +kubebuilder:default:="60s"
    // +optional
    Timeout *metav1.Duration `json:"timeout,omitempty"`

    // This flag tells the controller to suspend the reconciliation of this source.
    // +optional
    Suspend bool `json:"suspend,omitempty"`

    // AccessFrom defines an Access Control List for allowing cross-namespace references to this object.
    // +optional
    AccessFrom *acl.AccessFrom `json:"accessFrom,omitempty"`
}

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

HelmRepositoryStatus defines the observed state of the HelmRepository.

type HelmRepositoryStatus struct {
    // ObservedGeneration is the last observed generation.
    // +optional
    ObservedGeneration int64 `json:"observedGeneration,omitempty"`

    // Conditions holds the conditions for the HelmRepository.
    // +optional
    Conditions []metav1.Condition `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"`

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

func (*HelmRepositoryStatus) DeepCopy

func (in *HelmRepositoryStatus) DeepCopy() *HelmRepositoryStatus

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 LocalHelmChartSourceReference

LocalHelmChartSourceReference contains enough information to let you locate the typed referenced object at namespace level.

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

    // Kind of the referent, valid values are ('HelmRepository', 'GitRepository',
    // 'Bucket').
    // +kubebuilder:validation:Enum=HelmRepository;GitRepository;Bucket
    // +required
    Kind string `json:"kind"`

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

func (*LocalHelmChartSourceReference) DeepCopy

func (in *LocalHelmChartSourceReference) DeepCopy() *LocalHelmChartSourceReference

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

func (*LocalHelmChartSourceReference) DeepCopyInto

func (in *LocalHelmChartSourceReference) DeepCopyInto(out *LocalHelmChartSourceReference)

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

type Source

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

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
}