Help us shape the future of Go! Take the 2026 Go Developer Survey

v1alpha2

package
v0.23.0 Latest Latest
Warning

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

Go to latest
Published: Jun 12, 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"`

	//+kubebuilder:Optional
	// Preflight defines the configuration of preflight checks.
	Preflight *PreflightConfig `json:"preflight,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 CRDUpgradeSafetyPreflightConfig added in v0.22.0

type CRDUpgradeSafetyPreflightConfig struct {
	//+kubebuilder:Required
	// Disabled represents the state of the CRD upgrade safety preflight check being disabled/enabled.
	Disabled bool `json:"disabled,omitempty"`
}

CRDUpgradeSafetyPreflightConfig is the configuration for CRD upgrade safety preflight check.

func (*CRDUpgradeSafetyPreflightConfig) DeepCopy added in v0.22.0

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

func (*CRDUpgradeSafetyPreflightConfig) DeepCopyInto added in v0.22.0

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 PreflightConfig added in v0.22.0

type PreflightConfig struct {
	//+kubebuilder:Required
	// CRDUpgradeSafety holds necessary configuration for the CRD Upgrade Safety preflight checks.
	CRDUpgradeSafety *CRDUpgradeSafetyPreflightConfig `json:"crdUpgradeSafety,omitempty"`
}

PreflightConfig holds the configuration for the preflight checks.

func (*PreflightConfig) DeepCopy added in v0.22.0

func (in *PreflightConfig) DeepCopy() *PreflightConfig

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

func (*PreflightConfig) DeepCopyInto added in v0.22.0

func (in *PreflightConfig) DeepCopyInto(out *PreflightConfig)

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