v1

package
v2.21.9 Latest Latest
Warning

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

Go to latest
Published: May 16, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

+groupName=apps.kubermatic.k8c.io +versionName=v1 +kubebuilder:object:generate=true

Index

Constants

View Source
const (
	// ApplicationInstallationResourceName represents "Resource" defined in Kubernetes.
	ApplicationDefinitionResourceName = "applicationdefinitions"

	// ApplicationDefinitionKindName represents "Kind" defined in Kubernetes.
	ApplicationDefinitionKindName = "ApplicationDefinitions"
)
View Source
const (
	// ApplicationInstallationResourceName represents "Resource" defined in Kubernetes.
	ApplicationInstallationResourceName = "applicationinstallations"

	// ApplicationInstallationKindName represents "Kind" defined in Kubernetes.
	ApplicationInstallationKindName = "ApplicationInstallations"

	// ApplicationInstallationsFQDNName represents "FQDN" defined in Kubernetes.
	ApplicationInstallationsFQDNName = ApplicationInstallationResourceName + "." + GroupName
)
View Source
const (
	// ApplicationDefinitionSeedCleanupFinalizer indicates that synced application definition on seed clusters need cleanup.
	ApplicationDefinitionSeedCleanupFinalizer = "kubermatic.k8c.io/cleanup-seed-application-definition"

	// ApplicationInstallationCleanupFinalizer indicates that application installed on user-cluster need cleanup
	// ie uninstall the application, remove  namespace where application were installed ...
	ApplicationInstallationCleanupFinalizer = "kubermatic.k8c.io/cleanup-application-installation"
)
View Source
const GroupName = "apps.kubermatic.k8c.io"

GroupName is the group name use in this package.

View Source
const GroupVersion = "v1"

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme   = SchemeBuilder.AddToScheme
)
View Source
var AllApplicationInstallationConditionTypes = []ApplicationInstallationConditionType{
	ManifestsRetrieved,
	Ready,
}
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion}

SchemeGroupVersion is group version used to register these objects.

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource.

Types

type AppNamespaceSpec added in v2.21.2

type AppNamespaceSpec struct {
	// Name is the namespace to deploy the Application into.
	// Should be a valid lowercase RFC1123 domain name
	// +kubebuilder:validation:Pattern:=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
	// +kubebuilder:validation:MaxLength:=63
	// +kubebuilder:validation:Type=string
	Name string `json:"name"`

	// Create defines whether the namespace should be created if it does not exist. Defaults to true
	Create bool `json:"create"`

	// Labels of the namespace
	// More info: http://kubernetes.io/docs/user-guide/labels
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// Annotations of the namespace
	// More info: http://kubernetes.io/docs/user-guide/annotations
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
}

AppNamespaceSpec describe the desired state of the namespace where application will be created.

func (*AppNamespaceSpec) DeepCopy added in v2.21.2

func (in *AppNamespaceSpec) DeepCopy() *AppNamespaceSpec

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

func (*AppNamespaceSpec) DeepCopyInto added in v2.21.2

func (in *AppNamespaceSpec) DeepCopyInto(out *AppNamespaceSpec)

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

type ApplicationDefinition

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

	Spec ApplicationDefinitionSpec `json:"spec,omitempty"`
}

ApplicationDefinition is the Schema for the applicationdefinitions API.

func (*ApplicationDefinition) DeepCopy

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

func (*ApplicationDefinition) DeepCopyInto

func (in *ApplicationDefinition) DeepCopyInto(out *ApplicationDefinition)

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

func (*ApplicationDefinition) DeepCopyObject

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

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

type ApplicationDefinitionList

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

ApplicationDefinitionList contains a list of ApplicationDefinition.

func (*ApplicationDefinitionList) DeepCopy

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

func (*ApplicationDefinitionList) DeepCopyInto

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

func (*ApplicationDefinitionList) DeepCopyObject

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

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

type ApplicationDefinitionSpec

type ApplicationDefinitionSpec struct {
	// Description of the application. what is its purpose
	Description string `json:"description"`

	// Method used to install the application
	Method TemplateMethod `json:"method"`

	// DefaultValues describe overrides for manifest-rendering in UI when creating an application.
	// +kubebuilder:pruning:PreserveUnknownFields
	DefaultValues *runtime.RawExtension `json:"defaultValues,omitempty"`

	// Available version for this application
	Versions []ApplicationVersion `json:"versions"`
}

ApplicationDefinitionSpec defines the desired state of ApplicationDefinition.

func (*ApplicationDefinitionSpec) DeepCopy

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

func (*ApplicationDefinitionSpec) DeepCopyInto

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

type ApplicationInstallation

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

	Spec   ApplicationInstallationSpec   `json:"spec,omitempty"`
	Status ApplicationInstallationStatus `json:"status,omitempty"`
}

ApplicationInstallation describes a single installation of an Application.

func (*ApplicationInstallation) DeepCopy

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

func (*ApplicationInstallation) DeepCopyInto

func (in *ApplicationInstallation) DeepCopyInto(out *ApplicationInstallation)

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

func (*ApplicationInstallation) DeepCopyObject

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

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

type ApplicationInstallationCondition

type ApplicationInstallationCondition struct {
	// Status of the condition, one of True, False, Unknown.
	Status corev1.ConditionStatus `json:"status"`
	// Last time we got an update on a given condition.
	// +optional
	LastHeartbeatTime metav1.Time `json:"lastHeartbeatTime,omitempty"`
	// Last time the condition transit from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// (brief) reason for the condition's last transition.
	Reason string `json:"reason,omitempty"`
	// Human readable message indicating details about last transition.
	Message string `json:"message,omitempty"`
}

func (*ApplicationInstallationCondition) DeepCopy

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

func (*ApplicationInstallationCondition) DeepCopyInto

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

type ApplicationInstallationConditionType

type ApplicationInstallationConditionType string

swagger:enum ApplicationInstallationConditionType All condition types must be registered within the `AllApplicationInstallationConditionTypes` variable.

const (
	// ManifestsRetrieved indicates all necessary manifests have been fetched from the external source.
	ManifestsRetrieved ApplicationInstallationConditionType = "ManifestsRetrieved"

	// Ready describes all components have been successfully rolled out and are ready.
	Ready ApplicationInstallationConditionType = "Ready"
)

type ApplicationInstallationList

type ApplicationInstallationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []ApplicationInstallation `json:"items"`
}

ApplicationInstallationList is a list of ApplicationInstallations.

func (*ApplicationInstallationList) DeepCopy

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

func (*ApplicationInstallationList) DeepCopyInto

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

func (*ApplicationInstallationList) DeepCopyObject

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

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

type ApplicationInstallationSpec

type ApplicationInstallationSpec struct {
	// Namespace describe the desired state of the namespace where application will be created.
	Namespace AppNamespaceSpec `json:"namespace"`

	// ApplicationRef is a reference to identify which Application should be deployed
	ApplicationRef ApplicationRef `json:"applicationRef"`

	// Values describe overrides for manifest-rendering. It's a free yaml field.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values runtime.RawExtension `json:"values,omitempty"`
}

func (*ApplicationInstallationSpec) DeepCopy

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

func (*ApplicationInstallationSpec) DeepCopyInto

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

type ApplicationInstallationStatus

type ApplicationInstallationStatus struct {
	// Conditions contains conditions an installation is in, its primary use case is status signaling between controllers or between controllers and the API
	Conditions map[ApplicationInstallationConditionType]ApplicationInstallationCondition `json:"conditions,omitempty"`

	// ApplicationVersion contains information installing / removing application
	ApplicationVersion *ApplicationVersion `json:"applicationVersion,omitempty"`

	// Method used to install the application
	Method TemplateMethod `json:"method"`

	// HelmRelease holds the information about the helm release installed by this application. This field is only filled if template method is 'helm'.
	HelmRelease *HelmRelease `json:"helmRelease,omitempty"`
}

ApplicationInstallationStatus denotes status information about an ApplicationInstallation.

func (*ApplicationInstallationStatus) DeepCopy

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

func (*ApplicationInstallationStatus) DeepCopyInto

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

type ApplicationRef

type ApplicationRef struct {
	// Name of the Application.
	// Should be a valid lowercase RFC1123 domain name
	// +kubebuilder:validation:Pattern:=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$`
	// +kubebuilder:validation:MaxLength:=63
	// +kubebuilder:validation:Type=string
	Name string `json:"name"`

	// Version of the Application. Must be a valid SemVer version
	Version Version `json:"version"`
}

ApplicationRef describes a KKP-wide, unique reference to an Application.

func (*ApplicationRef) DeepCopy

func (in *ApplicationRef) DeepCopy() *ApplicationRef

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

func (*ApplicationRef) DeepCopyInto

func (in *ApplicationRef) DeepCopyInto(out *ApplicationRef)

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

type ApplicationSource

type ApplicationSource struct {
	// Install Application from a Helm repository
	Helm *HelmSource `json:"helm,omitempty"`

	// Install application from a Git repository
	Git *GitSource `json:"git,omitempty"`
}

func (*ApplicationSource) DeepCopy

func (in *ApplicationSource) DeepCopy() *ApplicationSource

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

func (*ApplicationSource) DeepCopyInto

func (in *ApplicationSource) DeepCopyInto(out *ApplicationSource)

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

type ApplicationTemplate

type ApplicationTemplate struct {
	// Defined how the source of the application (e.g Helm chart) is retrieved.
	// Exactly one type of source must be defined.
	Source ApplicationSource `json:"source"`
}

func (*ApplicationTemplate) DeepCopy

func (in *ApplicationTemplate) DeepCopy() *ApplicationTemplate

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

func (*ApplicationTemplate) DeepCopyInto

func (in *ApplicationTemplate) DeepCopyInto(out *ApplicationTemplate)

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

type ApplicationVersion

type ApplicationVersion struct {

	// Version of the application (e.g. v1.2.3)
	Version string `json:"version"`

	// Template defines how application is installed (source provenance, Method...)
	Template ApplicationTemplate `json:"template"`
}

func (*ApplicationVersion) DeepCopy

func (in *ApplicationVersion) DeepCopy() *ApplicationVersion

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

func (*ApplicationVersion) DeepCopyInto

func (in *ApplicationVersion) DeepCopyInto(out *ApplicationVersion)

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

type GitAuthMethod

type GitAuthMethod string

+kubebuilder:validation:Enum=password;token;ssh-key

const (
	GitAuthMethodPassword GitAuthMethod = "password"
	GitAuthMethodToken    GitAuthMethod = "token"
	GitAuthMethodSSHKey   GitAuthMethod = "ssh-key"
)

type GitCredentials

type GitCredentials struct {
	// Authentication method. Either password or token or ssh-key.
	// if method is password then username and password must be defined.
	// if method is token then token must be defined.
	// if method is ssh-key then ssh-key must be defined.
	Method GitAuthMethod `json:"method"`

	// Username holds the ref and key in the secret for the username credential.
	// The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	Username *corev1.SecretKeySelector `json:"username,omitempty"`

	// Password holds the ref and key in the secret for the Password credential.
	// The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	Password *corev1.SecretKeySelector `json:"password,omitempty"`

	// Token holds the ref and key in the secret for the token credential.
	// The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	Token *corev1.SecretKeySelector `json:"token,omitempty"`

	// SSHKey holds the ref and key in the secret for the SshKey credential.
	// The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	SSHKey *corev1.SecretKeySelector `json:"sshKey,omitempty"`
}

func (*GitCredentials) DeepCopy

func (in *GitCredentials) DeepCopy() *GitCredentials

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

func (*GitCredentials) DeepCopyInto

func (in *GitCredentials) DeepCopyInto(out *GitCredentials)

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

type GitReference added in v2.21.0

type GitReference struct {
	// Branch to checkout. Only the last commit of the branch will be checkout in order to reduce the amount of data to download.
	// +optional
	Branch string `json:"branch,omitempty"`

	// Commit SHA in a Branch to checkout.
	//
	// It must be used in conjunction with branch field.
	// +kubebuilder:validation:Pattern:=`^[a-f0-9]{40}$`
	// +kubebuilder:validation:Type=string
	// +optional
	Commit string `json:"commit,omitempty"`

	// Tag to check out.
	// It can not be used in conjunction with commit or branch.
	// +kubebuilder:validation:Type=string
	// +optional
	Tag string `json:"tag,omitempty"`
}

func (*GitReference) DeepCopy added in v2.21.0

func (in *GitReference) DeepCopy() *GitReference

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

func (*GitReference) DeepCopyInto added in v2.21.0

func (in *GitReference) DeepCopyInto(out *GitReference)

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

type GitSource

type GitSource struct {
	// URL to the repository. Can be HTTP(s) (e.g. https://example.com/myrepo) or SSH (e.g. git://example.com[:port]/path/to/repo.git/)
	// +kubebuilder:validation:MinLength=1
	Remote string `json:"remote"`

	// Git reference to checkout.
	// For large repositories, we recommend to either use Tag, Branch or Branch+Commit. This allows a shallow clone, which dramatically speeds up performance
	Ref GitReference `json:"ref"`

	// Path of the "source" in the repository. default is repository root
	Path string `json:"path,omitempty"`

	// Credentials are optional and holds the git credentials
	Credentials *GitCredentials `json:"credentials,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 HelmCredentials

type HelmCredentials struct {
	// Username holds the ref and key in the secret for the username credential.
	// The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	Username *corev1.SecretKeySelector `json:"username,omitempty"`

	// Password holds the ref and key in the secret for the Password credential.
	// The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	Password *corev1.SecretKeySelector `json:"password,omitempty"`

	// RegistryConfigFile holds the ref and key in the secret for the registry credential file. The value is dockercfg
	// file that follows the same format rules as ~/.docker/config.json
	// The The Secret must exist in the namespace where KKP is installed (default is "kubermatic").
	// The Secret must be annotated with `apps.kubermatic.k8c.io/secret-type:` set to helm or git
	RegistryConfigFile *corev1.SecretKeySelector `json:"registryConfigFile,omitempty"`
}

func (*HelmCredentials) DeepCopy

func (in *HelmCredentials) DeepCopy() *HelmCredentials

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

func (*HelmCredentials) DeepCopyInto

func (in *HelmCredentials) DeepCopyInto(out *HelmCredentials)

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

type HelmRelease added in v2.21.0

type HelmRelease struct {
	// Name is the name of the release.
	Name string `json:"name,omitempty"`

	// Version is an int which represents the revision of the release.
	Version int `json:"version,omitempty"`

	// Info provides information about a release.
	Info *HelmReleaseInfo `json:"info,omitempty"`
}

func (*HelmRelease) DeepCopy added in v2.21.0

func (in *HelmRelease) DeepCopy() *HelmRelease

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

func (*HelmRelease) DeepCopyInto added in v2.21.0

func (in *HelmRelease) DeepCopyInto(out *HelmRelease)

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

type HelmReleaseInfo added in v2.21.0

type HelmReleaseInfo struct {
	// FirstDeployed is when the release was first deployed.
	FirstDeployed metav1.Time `json:"firstDeployed,omitempty"`

	// LastDeployed is when the release was last deployed.
	LastDeployed metav1.Time `json:"lastDeployed,omitempty"`

	// Deleted tracks when this object was deleted.
	Deleted metav1.Time `json:"deleted,omitempty"`

	// Description is human-friendly "log entry" about this release.
	Description string `json:"description,omitempty"`

	// Status is the current state of the release.
	Status release.Status `json:"status,omitempty"`

	// Notes is  the rendered templates/NOTES.txt if available.
	Notes string `json:"notes,omitempty"`
}

HelmReleaseInfo describes release information. tech note: we can not use release.Info from Helm because the underlying type used for time has no json tag.

func (*HelmReleaseInfo) DeepCopy added in v2.21.0

func (in *HelmReleaseInfo) DeepCopy() *HelmReleaseInfo

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

func (*HelmReleaseInfo) DeepCopyInto added in v2.21.0

func (in *HelmReleaseInfo) DeepCopyInto(out *HelmReleaseInfo)

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

type HelmSource

type HelmSource struct {
	// URl of the helm repository.
	// It can be an HTTP(s) repository (e.g. https://localhost/myrepo) or on OCI repository (e.g. oci://localhost:5000/myrepo).
	// +kubebuilder:validation:Pattern="^(http|https|oci)://.+"
	URL string `json:"url"`

	// Name of the Chart.
	// +kubebuilder:validation:MinLength=1
	ChartName string `json:"chartName"`

	// Version of the Chart.
	// +kubebuilder:validation:MinLength=1
	ChartVersion string `json:"chartVersion"`

	// Credentials are optional and hold the ref to the secret with helm credentials.
	// Either username / Password or registryConfigFile can be defined.
	Credentials *HelmCredentials `json:"credentials,omitempty"`
}

func (*HelmSource) DeepCopy

func (in *HelmSource) DeepCopy() *HelmSource

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

func (*HelmSource) DeepCopyInto

func (in *HelmSource) DeepCopyInto(out *HelmSource)

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

type TemplateMethod

type TemplateMethod string

+kubebuilder:validation:Enum=helm

const (
	HelmTemplateMethod TemplateMethod = "helm"
)

type Version

type Version struct {
	semverlib.Version
}

Version wraps semverlib.Version. It is needed because kubebuilder does not accept structs with non-tagged fields, even if they have custom marshallers With this the CRD resource will have Version as string but operator code can work directly with the semverlib.Version struct (taken from https://github.com/kubernetes-sigs/controller-tools/blob/master/pkg/crd/testdata/cronjob_types.go#L283)

func (*Version) DeepCopy

func (in *Version) DeepCopy() *Version

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

func (*Version) DeepCopyInto

func (in *Version) DeepCopyInto(out *Version)

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