v1alpha1

package
v0.0.5 Latest Latest
Warning

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

Go to latest
Published: Jun 8, 2021 License: Apache-2.0 Imports: 8 Imported by: 10

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the v1alpha1 API group +kubebuilder:object:generate=true +groupName=weave.works

Index

Constants

View Source
const HelmChartKind = "HelmChart"

HelmChartKind defines properties about the underlying helm chart for an artifact.

View Source
const KustomizeKind = "Kustomize"

KustomizeKind defines a kind containing kustomize yaml files for an artifact.

View Source
const ProfileKind = "Profile"

ProfileKind defines the kind of a profile artifact

Variables

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

type Artifact struct {
	// Name is the name of the Artifact
	Name string `json:"name,omitempty"`
	// Path is the local path to the Artifact in the Profile repo.
	// This is an optional value. If defined, it takes precedence over Chart.
	// +optional
	Path string `json:"path,omitempty"`
	// Kind is the kind of artifact: HelmChart or Kustomize
	// +kubebuilder:validation:Enum=HelmChart;Kustomize
	Kind string `json:"kind,omitempty"`
	// Chart defines properties to access a remote chart.
	// This is an optional value. It is ignored in case Path is defined.
	// +optional
	Chart *Chart `json:"chart,omitempty"`
	// Profiles defines properties to access a remote profile.
	// +optional
	Profile *Profile `json:"profile,omitempty"`
}

Artifact defines a bundled resource of the components for this profile.

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

func (in Artifact) Validate() error

Validate will validate Artifacts properties.

type Chart

type Chart struct {
	// URL is the URL of the Helm repository containing a Helm chart and possible values
	URL string `json:"url,omitempty"`
	// Name defines the name of the chart at the remote repository
	Name string `json:"name,omitempty"`
	// Version defines the version of the chart at the remote repository
	Version string `json:"version,omitempty"`
}

Chart defines properties to access remote helm charts.

func (*Chart) DeepCopy

func (in *Chart) DeepCopy() *Chart

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

func (*Chart) DeepCopyInto

func (in *Chart) DeepCopyInto(out *Chart)

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

type Profile added in v0.0.2

type Profile struct {
	// URL is the URL of the profile
	URL string `json:"url,omitempty"`
	// Branch is the branch in the git repository the profile lives in
	Branch string `json:"branch,omitempty"`
	// Path is the location in the git repo containing the profile definition. Only used in combination with Branch
	// +optional
	Path string `json:"path,omitempty"`
	// Version is the git tag containing the profile definition
	// +optional
	Version string `json:"version,omitempty"`
}

Profile defines properties for accessing a profile

func (*Profile) DeepCopy added in v0.0.2

func (in *Profile) DeepCopy() *Profile

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

func (*Profile) DeepCopyInto added in v0.0.2

func (in *Profile) DeepCopyInto(out *Profile)

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

type ProfileCatalogDescription added in v0.0.2

type ProfileCatalogDescription struct {
	// Version defines the version of the catalog to get the profile from
	Version string `json:"version,omitempty"`

	// Catalog defines the name of the catalog to get the profile from
	Catalog string `json:"catalog,omitempty"`

	// Profile defines the name of the profile
	Profile string `json:"profile,omitempty"`
}

ProfileCatalogDescription defines properties of the catalog this profile is from

func (*ProfileCatalogDescription) DeepCopy added in v0.0.2

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

func (*ProfileCatalogDescription) DeepCopyInto added in v0.0.2

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

func (*ProfileCatalogDescription) GetProfileVersion added in v0.0.2

func (p *ProfileCatalogDescription) GetProfileVersion() string

GetProfileVersion constructs a profile version from the catalog description.

type ProfileCatalogSource

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

	Spec   ProfileCatalogSourceSpec   `json:"spec,omitempty"`
	Status ProfileCatalogSourceStatus `json:"status,omitempty"`
}

ProfileCatalogSource is the Schema for the profilecatalogsources API

func (*ProfileCatalogSource) DeepCopy

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

func (*ProfileCatalogSource) DeepCopyInto

func (in *ProfileCatalogSource) DeepCopyInto(out *ProfileCatalogSource)

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

func (*ProfileCatalogSource) DeepCopyObject

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

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

type ProfileCatalogSourceList

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

ProfileCatalogSourceList contains a list of ProfileCatalogSource

func (*ProfileCatalogSourceList) DeepCopy

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

func (*ProfileCatalogSourceList) DeepCopyInto

func (in *ProfileCatalogSourceList) DeepCopyInto(out *ProfileCatalogSourceList)

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

func (*ProfileCatalogSourceList) DeepCopyObject

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

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

type ProfileCatalogSourceSpec

type ProfileCatalogSourceSpec struct {
	// Profiles is the list of profiles exposed by the catalog
	Profiles []ProfileDescription `json:"profiles,omitempty"`
}

ProfileCatalogSourceSpec defines the desired state of ProfileCatalogSource

func (*ProfileCatalogSourceSpec) DeepCopy

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

func (*ProfileCatalogSourceSpec) DeepCopyInto

func (in *ProfileCatalogSourceSpec) DeepCopyInto(out *ProfileCatalogSourceSpec)

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

type ProfileCatalogSourceStatus

type ProfileCatalogSourceStatus struct {
}

ProfileCatalogSourceStatus defines the observed state of ProfileCatalogSource

func (*ProfileCatalogSourceStatus) DeepCopy

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

func (*ProfileCatalogSourceStatus) DeepCopyInto

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

type ProfileDefinition

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

	Spec   ProfileDefinitionSpec   `json:"spec,omitempty"`
	Status ProfileDefinitionStatus `json:"status,omitempty"`
}

ProfileDefinition is the Schema for the profiles API

func (*ProfileDefinition) DeepCopy

func (in *ProfileDefinition) DeepCopy() *ProfileDefinition

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

func (*ProfileDefinition) DeepCopyInto

func (in *ProfileDefinition) DeepCopyInto(out *ProfileDefinition)

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

func (*ProfileDefinition) DeepCopyObject

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

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

type ProfileDefinitionList

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

ProfileDefinitionList contains a list of ProfileDefinition

func (*ProfileDefinitionList) DeepCopy

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

func (*ProfileDefinitionList) DeepCopyInto

func (in *ProfileDefinitionList) DeepCopyInto(out *ProfileDefinitionList)

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

func (*ProfileDefinitionList) DeepCopyObject

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

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

type ProfileDefinitionSpec

type ProfileDefinitionSpec struct {
	// Description is some text to allow a user to identify what this profile installs.
	Description string `json:"description,omitempty"`
	// Artifacts is a list of Profile artifacts
	Artifacts []Artifact `json:"artifacts,omitempty"`
}

ProfileDefinitionSpec defines the desired state of ProfileDefinition

func (*ProfileDefinitionSpec) DeepCopy

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

func (*ProfileDefinitionSpec) DeepCopyInto

func (in *ProfileDefinitionSpec) DeepCopyInto(out *ProfileDefinitionSpec)

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

type ProfileDefinitionStatus

type ProfileDefinitionStatus struct{}

ProfileDefinitionStatus defines the observed state of ProfileDefinition This is not used

func (*ProfileDefinitionStatus) DeepCopy

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

func (*ProfileDefinitionStatus) DeepCopyInto

func (in *ProfileDefinitionStatus) DeepCopyInto(out *ProfileDefinitionStatus)

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

type ProfileDescription

type ProfileDescription struct {
	// Profile name
	Name string `json:"name,omitempty"`
	// Profile description
	Description string `json:"description,omitempty"`
	// Version
	// +optional
	// +kubebuilder:validation:Pattern=^(v)?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(\.(0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*)?(\+[0-9a-zA-Z-]+(\.[0-9a-zA-Z-]+)*)?$
	Version string `json:"version,omitempty"`
	// CatalogSource is the name of the catalog the profile is listed in
	// +optional
	CatalogSource string `json:"catalog,omitempty"`
	// URL is the full URL path to the profile.yaml
	// +optional
	URL string `json:"url,omitempty"`
	// Maintainer is the name of the author(s)
	// +optional
	Maintainer string `json:"maintainer,omitempty"`
	// Prerequisites are a list of dependencies required by the profile
	// +optional
	Prerequisites []string `json:"prerequisites,omitempty"`
}

ProfileDescription defines details about a given profile.

func (*ProfileDescription) DeepCopy

func (in *ProfileDescription) DeepCopy() *ProfileDescription

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

func (*ProfileDescription) DeepCopyInto

func (in *ProfileDescription) DeepCopyInto(out *ProfileDescription)

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

type ProfileSubscription

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

	Spec   ProfileSubscriptionSpec   `json:"spec,omitempty"`
	Status ProfileSubscriptionStatus `json:"status,omitempty"`
}

ProfileSubscription is the Schema for the profilesubscriptions API

func (*ProfileSubscription) DeepCopy

func (in *ProfileSubscription) DeepCopy() *ProfileSubscription

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

func (*ProfileSubscription) DeepCopyInto

func (in *ProfileSubscription) DeepCopyInto(out *ProfileSubscription)

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

func (*ProfileSubscription) DeepCopyObject

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

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

type ProfileSubscriptionList

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

ProfileSubscriptionList contains a list of ProfileSubscription

func (*ProfileSubscriptionList) DeepCopy

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

func (*ProfileSubscriptionList) DeepCopyInto

func (in *ProfileSubscriptionList) DeepCopyInto(out *ProfileSubscriptionList)

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

func (*ProfileSubscriptionList) DeepCopyObject

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

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

type ProfileSubscriptionSpec

type ProfileSubscriptionSpec struct {
	// ProfileURL is a fully qualified URL to a profile repo
	ProfileURL string `json:"profileURL,omitempty"`
	// Branch is the git repo branch containing the profile definition (default: main)
	// +kubebuilder:default:=main
	// +optional
	Branch string `json:"branch,omitempty"`

	// Path is the location in the git repo containing the profile definition. Only used in combination with Branch
	// +optional
	Path string `json:"path,omitempty"`

	// Values holds the values for the Helm chart specified in the first artifact
	// +optional
	Values *apiextensionsv1.JSON `json:"values,omitempty"`

	// Version is the git tag containing the profile definition
	// +optional
	Version string `json:"version,omitempty"`

	// ValuesFrom holds references to resources containing values for the Helm chart specified in the first artifact
	// +optional
	ValuesFrom []helmv2.ValuesReference `json:"valuesFrom,omitempty"`

	// ProfileCatalogDescription defines properties of the catalog this profile is from
	ProfileCatalogDescription *ProfileCatalogDescription `json:"profile_catalog_description,omitempty"`
}

ProfileSubscriptionSpec defines the desired state of a ProfileSubscription

func (*ProfileSubscriptionSpec) DeepCopy

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

func (*ProfileSubscriptionSpec) DeepCopyInto

func (in *ProfileSubscriptionSpec) DeepCopyInto(out *ProfileSubscriptionSpec)

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

type ProfileSubscriptionStatus

type ProfileSubscriptionStatus struct {
	// Conditions holds the conditions for the ProfileSubscription
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ProfileSubscriptionStatus defines the observed state of ProfileSubscription

func (*ProfileSubscriptionStatus) DeepCopy

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

func (*ProfileSubscriptionStatus) DeepCopyInto

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
JackTT - Gopher 🇻🇳