v1alpha1

package
v0.0.0-...-05e5313 Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Copyright 2021.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

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

Index

Constants

View Source
const (

	// HealthyCondition indicates that the KustomizationSet has created all its
	// resources.
	HealthyCondition string = "Healthy"
)

Variables

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

This section is empty.

Types

type GitRepositoryGenerator

type GitRepositoryGenerator struct {
	// RepositoryRef is the name of a GitRepository resource to be generated from.
	RepositoryRef string `json:"repositoryRef"`

	// Directories is a set of rules for identifying directories to be parsed.
	Directories []GitRepositoryGeneratorDirectoryItem `json:"directories,omitempty"`

	// Template is an optional template that can be merged with generated
	// Kustomizations.
	Template *KustomizationSetTemplate `json:"template,omitempty"`
}

GitRepositoryGenerator generates from files in a Flux GitRepository resource.

func (*GitRepositoryGenerator) DeepCopy

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

func (*GitRepositoryGenerator) DeepCopyInto

func (in *GitRepositoryGenerator) DeepCopyInto(out *GitRepositoryGenerator)

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

type GitRepositoryGeneratorDirectoryItem

type GitRepositoryGeneratorDirectoryItem struct {
	Path    string `json:"path"`
	Exclude bool   `json:"exclude,omitempty"`
}

GitRepositoryGeneratorDirectoryItem defines a path to be parsed (or excluded from) for files.

func (*GitRepositoryGeneratorDirectoryItem) DeepCopy

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

func (*GitRepositoryGeneratorDirectoryItem) DeepCopyInto

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

type KustomizationSet

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

	Spec   KustomizationSetSpec   `json:"spec,omitempty"`
	Status KustomizationSetStatus `json:"status,omitempty"`
}

KustomizationSet is the Schema for the kustomizationsets API

func KustomizationSetReady

func KustomizationSetReady(k KustomizationSet, inventory *ResourceInventory, reason, message string) KustomizationSet

KustomizationSetReady registers a successful apply attempt of the given Kustomization.

func (*KustomizationSet) DeepCopy

func (in *KustomizationSet) DeepCopy() *KustomizationSet

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

func (*KustomizationSet) DeepCopyInto

func (in *KustomizationSet) DeepCopyInto(out *KustomizationSet)

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

func (*KustomizationSet) DeepCopyObject

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

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

type KustomizationSetGenerator

type KustomizationSetGenerator struct {
	List          *ListGenerator          `json:"list,omitempty"`
	PullRequest   *PullRequestGenerator   `json:"pullRequest,omitempty"`
	GitRepository *GitRepositoryGenerator `json:"gitRepository,omitempty"`
}

KustomizationSetGenerator describes the configured generators.

func (*KustomizationSetGenerator) DeepCopy

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

func (*KustomizationSetGenerator) DeepCopyInto

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

type KustomizationSetList

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

KustomizationSetList contains a list of KustomizationSet

func (*KustomizationSetList) DeepCopy

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

func (*KustomizationSetList) DeepCopyInto

func (in *KustomizationSetList) DeepCopyInto(out *KustomizationSetList)

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

func (*KustomizationSetList) DeepCopyObject

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

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

type KustomizationSetSpec

type KustomizationSetSpec struct {
	Generators []KustomizationSetGenerator `json:"generators"`
	Template   KustomizationSetTemplate    `json:"template"`
}

KustomizationSetSpec defines the desired state of KustomizationSet

func (*KustomizationSetSpec) DeepCopy

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

func (*KustomizationSetSpec) DeepCopyInto

func (in *KustomizationSetSpec) DeepCopyInto(out *KustomizationSetSpec)

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

type KustomizationSetStatus

type KustomizationSetStatus struct {
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Inventory contains the list of Kubernetes resource object references that have been successfully applied.
	// +optional
	Inventory *ResourceInventory `json:"inventory,omitempty"`
}

KustomizationSetStatus defines the observed state of KustomizationSet

func (*KustomizationSetStatus) DeepCopy

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

func (*KustomizationSetStatus) DeepCopyInto

func (in *KustomizationSetStatus) DeepCopyInto(out *KustomizationSetStatus)

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

type KustomizationSetTemplate

type KustomizationSetTemplate struct {
	KustomizationSetTemplateMeta `json:"metadata"`
	Spec                         kustomizev1.KustomizationSpec `json:"spec"`
}

KustomizationSetTemplate represents Kustomization specs as a split between the ObjectMeta and KustomizationSpec.

func (*KustomizationSetTemplate) DeepCopy

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

func (*KustomizationSetTemplate) DeepCopyInto

func (in *KustomizationSetTemplate) DeepCopyInto(out *KustomizationSetTemplate)

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

type KustomizationSetTemplateMeta

type KustomizationSetTemplateMeta struct {
	Name        string            `json:"name,omitempty"`
	Namespace   string            `json:"namespace,omitempty"`
	Labels      map[string]string `json:"labels,omitempty"`
	Annotations map[string]string `json:"annotations,omitempty"`
	Finalizers  []string          `json:"finalizers,omitempty"`
}

KustomizationSetTemplateMeta represents the metadata fields that may be used for Kustomizations generated from the KustomizationSet (based on metav1.ObjectMeta)

func (*KustomizationSetTemplateMeta) DeepCopy

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

func (*KustomizationSetTemplateMeta) DeepCopyInto

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

type ListGenerator

type ListGenerator struct {
	Elements []apiextensionsv1.JSON `json:"elements"`

	Template *KustomizationSetTemplate `json:"template,omitempty"`
}

ListGenerator generates from a hard-coded list.

func (*ListGenerator) DeepCopy

func (in *ListGenerator) DeepCopy() *ListGenerator

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

func (*ListGenerator) DeepCopyInto

func (in *ListGenerator) DeepCopyInto(out *ListGenerator)

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

type PullRequestGenerator

type PullRequestGenerator struct {
	// The interval at which to check for repository updates.
	// +required
	Interval metav1.Duration           `json:"interval"`
	Template *KustomizationSetTemplate `json:"template,omitempty"`

	// Determines which git-api protocol to use.
	// +kubebuilder:validation:Enum=github;gitlab;bitbucketserver
	Driver string `json:"driver"`
	// This is the API endpoint to use.
	// +kubebuilder:validation:Pattern="^https://"
	ServerURL string `json:"serverURL,omitempty"`
	// This should be the Repo you want to query.
	// e.g. my-org/my-repo
	// +required
	Repo string `json:"repo"`
	// The secret name containing the Git credentials.
	// For HTTPS repositories the secret must contain username and password
	// fields.
	// +optional
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`

	// Labels is used to filter the PRs that you want to target.
	// This may be applied on the server.
	// +optional
	Labels []string `json:"labels,omitempty"`
}

PullRequestGenerator defines a generator that queries a Git hosting service for relevant PRs.

func (*PullRequestGenerator) DeepCopy

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

func (*PullRequestGenerator) DeepCopyInto

func (in *PullRequestGenerator) DeepCopyInto(out *PullRequestGenerator)

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

type ResourceInventory

type ResourceInventory struct {
	// Entries of Kubernetes resource object references.
	Entries []ResourceRef `json:"entries"`
}

ResourceInventory contains a list of Kubernetes resource object references that have been applied by a Kustomization.

func (*ResourceInventory) DeepCopy

func (in *ResourceInventory) DeepCopy() *ResourceInventory

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

func (*ResourceInventory) DeepCopyInto

func (in *ResourceInventory) DeepCopyInto(out *ResourceInventory)

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

type ResourceRef

type ResourceRef struct {
	// ID is the string representation of the Kubernetes resource object's metadata,
	// in the format '<namespace>_<name>_<group>_<kind>'.
	ID string `json:"id"`

	// Version is the API version of the Kubernetes resource object's kind.
	Version string `json:"v"`
}

ResourceRef contains the information necessary to locate a resource within a cluster.

func (*ResourceRef) DeepCopy

func (in *ResourceRef) DeepCopy() *ResourceRef

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

func (*ResourceRef) DeepCopyInto

func (in *ResourceRef) DeepCopyInto(out *ResourceRef)

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