v1alpha2

package
v0.21.0 Latest Latest
Warning

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

Go to latest
Published: May 15, 2024 License: Apache-2.0 Imports: 5 Imported by: 1

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the core v1alpha2 API group +kubebuilder:object:generate=true +groupName=core.rukpak.io

Index

Constants

View Source
const (
	SourceTypeImage      SourceType = "image"
	SourceTypeGit        SourceType = "git"
	SourceTypeConfigMaps SourceType = "configMaps"
	SourceTypeHTTP       SourceType = "http"

	TypeUnpacked = "Unpacked"

	ReasonUnpackPending             = "UnpackPending"
	ReasonUnpacking                 = "Unpacking"
	ReasonUnpackSuccessful          = "UnpackSuccessful"
	ReasonUnpackFailed              = "UnpackFailed"
	ReasonProcessingFinalizerFailed = "ProcessingFinalizerFailed"

	PhasePending   = "Pending"
	PhaseUnpacking = "Unpacking"
	PhaseFailing   = "Failing"
	PhaseUnpacked  = "Unpacked"
)
View Source
const (
	TypeHasValidBundle = "HasValidBundle"
	TypeHealthy        = "Healthy"
	TypeInstalled      = "Installed"

	ReasonBundleLoadFailed          = "BundleLoadFailed"
	ReasonCreateDynamicWatchFailed  = "CreateDynamicWatchFailed"
	ReasonErrorGettingClient        = "ErrorGettingClient"
	ReasonErrorGettingReleaseState  = "ErrorGettingReleaseState"
	ReasonHealthy                   = "Healthy"
	ReasonInstallationStatusFalse   = "InstallationStatusFalse"
	ReasonInstallationStatusUnknown = "InstallationStatusUnknown"
	ReasonInstallationSucceeded     = "InstallationSucceeded"
	ReasonInstallFailed             = "InstallFailed"
	ReasonObjectLookupFailure       = "ObjectLookupFailure"
	ReasonReadingContentFailed      = "ReadingContentFailed"
	ReasonReconcileFailed           = "ReconcileFailed"
	ReasonUnhealthy                 = "Unhealthy"
	ReasonUpgradeFailed             = "UpgradeFailed"
)

Variables

View Source
var (
	BundleDeploymentGVK  = SchemeBuilder.GroupVersion.WithKind("BundleDeployment")
	BundleDeploymentKind = BundleDeploymentGVK.Kind
)
View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "core.rukpak.io", Version: "v1alpha2"}

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

type Authorization struct {
	// Secret contains reference to the secret that has authorization information and is in the namespace that the provisioner is deployed.
	// The secret is expected to contain `data.username` and `data.password` for the username and password, respectively for http(s) scheme.
	// Refer to https://kubernetes.io/docs/concepts/configuration/secret/#basic-authentication-secret
	// For the ssh authorization of the GitSource, the secret is expected to contain `data.ssh-privatekey` and `data.ssh-knownhosts` for the ssh privatekey and the host entry in the known_hosts file respectively.
	// Refer to https://kubernetes.io/docs/concepts/configuration/secret/#ssh-authentication-secrets
	Secret corev1.LocalObjectReference `json:"secret,omitempty"`
	// InsecureSkipVerify controls whether a client verifies the server's certificate chain and host name. If InsecureSkipVerify
	// is true, the clone operation will accept any certificate presented by the server and any host name in that
	// certificate. In this mode, TLS is susceptible to machine-in-the-middle attacks unless custom verification is
	// used. This should be used only for testing.
	InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"`
}

func (*Authorization) DeepCopy

func (in *Authorization) DeepCopy() *Authorization

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

func (*Authorization) DeepCopyInto

func (in *Authorization) DeepCopyInto(out *Authorization)

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

type BundleDeployment

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

	Spec   BundleDeploymentSpec   `json:"spec"`
	Status BundleDeploymentStatus `json:"status,omitempty"`
}

BundleDeployment is the Schema for the bundledeployments API

func (*BundleDeployment) DeepCopy

func (in *BundleDeployment) DeepCopy() *BundleDeployment

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

func (*BundleDeployment) DeepCopyInto

func (in *BundleDeployment) DeepCopyInto(out *BundleDeployment)

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

func (*BundleDeployment) DeepCopyObject

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

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

func (*BundleDeployment) ProvisionerClassName

func (b *BundleDeployment) ProvisionerClassName() string

type BundleDeploymentList

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

BundleDeploymentList contains a list of BundleDeployment

func (*BundleDeploymentList) DeepCopy

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

func (*BundleDeploymentList) DeepCopyInto

func (in *BundleDeploymentList) DeepCopyInto(out *BundleDeploymentList)

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

func (*BundleDeploymentList) DeepCopyObject

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

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

type BundleDeploymentSpec

type BundleDeploymentSpec struct {
	//+kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	//+kubebuilder:validation:MaxLength:=63
	//
	// installNamespace is the namespace where the bundle should be installed. However, note that
	// the bundle may contain resources that are cluster-scoped or that are
	// installed in a different namespace. This namespace is expected to exist.
	InstallNamespace string `json:"installNamespace"`

	//+kubebuilder:validation:Pattern:=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	//
	// provisionerClassName sets the name of the provisioner that should reconcile this BundleDeployment.
	ProvisionerClassName string `json:"provisionerClassName"`

	// source defines the configuration for the underlying Bundle content.
	Source BundleSource `json:"source"`

	//+kubebuilder:pruning:PreserveUnknownFields
	//
	// config is provisioner specific configurations
	Config runtime.RawExtension `json:"config,omitempty"`
}

BundleDeploymentSpec defines the desired state of BundleDeployment

func (*BundleDeploymentSpec) DeepCopy

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

func (*BundleDeploymentSpec) DeepCopyInto

func (in *BundleDeploymentSpec) DeepCopyInto(out *BundleDeploymentSpec)

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

type BundleDeploymentStatus

type BundleDeploymentStatus struct {
	Conditions         []metav1.Condition `json:"conditions,omitempty"`
	ResolvedSource     *BundleSource      `json:"resolvedSource,omitempty"`
	ContentURL         string             `json:"contentURL,omitempty"`
	ObservedGeneration int64              `json:"observedGeneration,omitempty"`
}

BundleDeploymentStatus defines the observed state of BundleDeployment

func (*BundleDeploymentStatus) DeepCopy

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

func (*BundleDeploymentStatus) DeepCopyInto

func (in *BundleDeploymentStatus) DeepCopyInto(out *BundleDeploymentStatus)

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

type BundleSource

type BundleSource struct {
	// Type defines the kind of Bundle content being sourced.
	Type SourceType `json:"type"`
	// Image is the bundle image that backs the content of this bundle.
	Image *ImageSource `json:"image,omitempty"`
	// Git is the git repository that backs the content of this Bundle.
	Git *GitSource `json:"git,omitempty"`
	// ConfigMaps is a list of config map references and their relative
	// directory paths that represent a bundle filesystem.
	ConfigMaps []ConfigMapSource `json:"configMaps,omitempty"`
	//  HTTP is the remote location that backs the content of this Bundle.
	HTTP *HTTPSource `json:"http,omitempty"`
}

func (*BundleSource) DeepCopy

func (in *BundleSource) DeepCopy() *BundleSource

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

func (*BundleSource) DeepCopyInto

func (in *BundleSource) DeepCopyInto(out *BundleSource)

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

type ConfigMapSource

type ConfigMapSource struct {
	// ConfigMap is a reference to a configmap in the rukpak system namespace
	ConfigMap corev1.LocalObjectReference `json:"configMap"`
	// Path is the relative directory path within the bundle where the files
	// from the configmap will be present when the bundle is unpacked.
	Path string `json:"path,omitempty"`
}

func (*ConfigMapSource) DeepCopy

func (in *ConfigMapSource) DeepCopy() *ConfigMapSource

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

func (*ConfigMapSource) DeepCopyInto

func (in *ConfigMapSource) DeepCopyInto(out *ConfigMapSource)

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

type GitRef

type GitRef struct {
	// Branch refers to the branch to checkout from the repository.
	// The Branch should contain the bundle manifests in the specified directory.
	Branch string `json:"branch,omitempty"`
	// Tag refers to the tag to checkout from the repository.
	// The Tag should contain the bundle manifests in the specified directory.
	Tag string `json:"tag,omitempty"`
	// Commit refers to the commit to checkout from the repository.
	// The Commit should contain the bundle manifests in the specified directory.
	Commit string `json:"commit,omitempty"`
}

func (*GitRef) DeepCopy

func (in *GitRef) DeepCopy() *GitRef

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

func (*GitRef) DeepCopyInto

func (in *GitRef) DeepCopyInto(out *GitRef)

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

type GitSource

type GitSource struct {
	// Repository is a URL link to the git repository containing the bundle.
	// Repository is required and the URL should be parsable by a standard git tool.
	Repository string `json:"repository"`
	// Directory refers to the location of the bundle within the git repository.
	// Directory is optional and if not set defaults to ./manifests.
	Directory string `json:"directory,omitempty"`
	// Ref configures the git source to clone a specific branch, tag, or commit
	// from the specified repo. Ref is required, and exactly one field within Ref
	// is required. Setting more than one field or zero fields will result in an
	// error.
	Ref GitRef `json:"ref"`
	// Auth configures the authorization method if necessary.
	Auth Authorization `json:"auth,omitempty"`
}

func (*GitSource) DeepCopy

func (in *GitSource) DeepCopy() *GitSource

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

func (*GitSource) DeepCopyInto

func (in *GitSource) DeepCopyInto(out *GitSource)

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

type HTTPSource

type HTTPSource struct {
	// URL is where the bundle contents is.
	URL string `json:"url"`
	// Auth configures the authorization method if necessary.
	Auth Authorization `json:"auth,omitempty"`
}

func (*HTTPSource) DeepCopy

func (in *HTTPSource) DeepCopy() *HTTPSource

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

func (*HTTPSource) DeepCopyInto

func (in *HTTPSource) DeepCopyInto(out *HTTPSource)

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

type ImageSource

type ImageSource struct {
	// Ref contains the reference to a container image containing Bundle contents.
	Ref string `json:"ref"`
	// ImagePullSecretName contains the name of the image pull secret in the namespace that the provisioner is deployed.
	ImagePullSecretName string `json:"pullSecret,omitempty"`
	// InsecureSkipTLSVerify indicates that TLS certificate validation should be skipped.
	// If this option is specified, the HTTPS protocol will still be used to
	// fetch the specified image reference.
	// This should not be used in a production environment.
	// +optional
	InsecureSkipTLSVerify bool `json:"insecureSkipTLSVerify,omitempty"`
}

func (*ImageSource) DeepCopy

func (in *ImageSource) DeepCopy() *ImageSource

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

func (*ImageSource) DeepCopyInto

func (in *ImageSource) DeepCopyInto(out *ImageSource)

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

type ProvisionerID

type ProvisionerID string

type SourceType

type SourceType string

Jump to

Keyboard shortcuts

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