v1alpha1

package
v0.10.0 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2023 License: Apache-2.0 Imports: 4 Imported by: 16

Documentation

Overview

+kubebuilder:validation:Optional +groupName=work.open-cluster-management.io

Index

Constants

View Source
const (
	PlacementDecisionNotFound = "PlacementDecisionNotFound"
	PlacementDecisionEmpty    = "PlacementDecisionEmpty"

	AsExpected    = "AsExpected"
	Processing    = "Processing"
	NotAsExpected = "NotAsExpected"

	// PlacementDecisionVerified indicates if Placement is valid
	//
	// Reason: AsExpected, PlacementDecisionNotFound, PlacementDecisionEmpty or NotAsExpected
	PlacementDecisionVerified PlaceWorkConditionType = "PlacementVerified"

	// ManifestWorkApplied confirms that a ManifestWork has been created in each cluster defined by PlacementDecision
	//
	// Reason: AsExpected, NotAsExpected or Processing
	ManifestworkApplied PlaceWorkConditionType = "ManifestworkApplied"
)

Variables

View Source
var (
	GroupName    = "work.open-cluster-management.io"
	GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

	// Install is a function which adds this version to a scheme
	Install = schemeBuilder.AddToScheme

	// SchemeGroupVersion generated code relies on this name
	// Deprecated
	SchemeGroupVersion = GroupVersion
	// AddToScheme exists solely to keep the old generators creating valid code
	// DEPRECATED
	AddToScheme = schemeBuilder.AddToScheme
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource generated code relies on this being here, but it logically belongs to the group DEPRECATED

Types

type LocalPlacementReference

type LocalPlacementReference struct {
	// Name of the Placement resource in the current namespace
	Name string `json:"name"`
}

localPlacementReference is the name of a Placement resource in current namespace

func (*LocalPlacementReference) DeepCopy

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

func (*LocalPlacementReference) DeepCopyInto

func (in *LocalPlacementReference) DeepCopyInto(out *LocalPlacementReference)

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

func (LocalPlacementReference) SwaggerDoc

func (LocalPlacementReference) SwaggerDoc() map[string]string

type PlaceManifestWork

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

	// Spec reperesents the desired ManifestWork payload and Placement reference to be reconciled
	Spec PlaceManifestWorkSpec `json:"spec,omitempty"`

	// Status represent the current status of Placing ManifestWork resources
	Status PlaceManifestWorkStatus `json:"status,omitempty"`
}

PlaceManifestWork is the Schema for the PlaceManifestWorks API. This custom resource is able to apply ManifestWork using Placement for 0..n ManagedCluster(in their namespaces). It will also remove the ManifestWork custom resources when deleted. Lastly the specific ManifestWork custom resources created per ManagedCluster namespace will be adjusted based on PlacementDecision changes.

func (*PlaceManifestWork) DeepCopy

func (in *PlaceManifestWork) DeepCopy() *PlaceManifestWork

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

func (*PlaceManifestWork) DeepCopyInto

func (in *PlaceManifestWork) DeepCopyInto(out *PlaceManifestWork)

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

func (*PlaceManifestWork) DeepCopyObject

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

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

func (PlaceManifestWork) SwaggerDoc

func (PlaceManifestWork) SwaggerDoc() map[string]string

type PlaceManifestWorkList

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true

PlaceManifestWorkList contains a list of PlaceManifestWork

func (*PlaceManifestWorkList) DeepCopy

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

func (*PlaceManifestWorkList) DeepCopyInto

func (in *PlaceManifestWorkList) DeepCopyInto(out *PlaceManifestWorkList)

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

func (*PlaceManifestWorkList) DeepCopyObject

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

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

func (PlaceManifestWorkList) SwaggerDoc

func (PlaceManifestWorkList) SwaggerDoc() map[string]string

type PlaceManifestWorkSpec

type PlaceManifestWorkSpec struct {
	// ManifestWorkTemplate is the ManifestWorkSpec that will be used to generate a per-cluster ManifestWork
	ManifestWorkTemplate work.ManifestWorkSpec `json:"manifestWorkTemplate"`

	// PacementRef is the name of the Placement resource, from which a PlacementDecision will be found and used
	// to distribute the ManifestWork
	PlacementRef LocalPlacementReference `json:"placementRef,omitempty"`
}

PlaceManifestWorkSpec defines the desired state of PlaceManifestWork

func (*PlaceManifestWorkSpec) DeepCopy

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

func (*PlaceManifestWorkSpec) DeepCopyInto

func (in *PlaceManifestWorkSpec) DeepCopyInto(out *PlaceManifestWorkSpec)

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

func (PlaceManifestWorkSpec) SwaggerDoc

func (PlaceManifestWorkSpec) SwaggerDoc() map[string]string

type PlaceManifestWorkStatus

type PlaceManifestWorkStatus struct {

	// Conditions contains the different condition statuses for distrbution of ManifestWork resources
	// Valid condition types are:
	// 1. AppliedManifestWorks represents ManifestWorks have been distributed as per placement All, Partial, None, Problem
	// 2. PlacementRefValid
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Summary totals of resulting ManifestWorks
	PlacedManifestWorkSummary PlacedManifestWorkSummary `json:"summary"`
}

PlaceManifestWorkStatus defines the observed state of PlaceManifestWork

func (*PlaceManifestWorkStatus) DeepCopy

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

func (*PlaceManifestWorkStatus) DeepCopyInto

func (in *PlaceManifestWorkStatus) DeepCopyInto(out *PlaceManifestWorkStatus)

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

func (PlaceManifestWorkStatus) SwaggerDoc

func (PlaceManifestWorkStatus) SwaggerDoc() map[string]string

type PlaceWorkConditionType

type PlaceWorkConditionType string

type PlacedManifestWorkSummary

type PlacedManifestWorkSummary struct {
	// Total number of ManifestWorks managed by the PlaceManifestWork
	Total int `json:"total"`
	// TODO: Progressing is the number of ManifestWorks with condition Progressing: true
	Progressing int `json:"progressing"`
	// Available is the number of ManifestWorks with condition Available: true
	Available int `json:"available"`
	// TODO: Degraded is the number of ManifestWorks with condition Degraded: true
	Degraded int `json:"degraded"`
	// Applied is the number of ManifestWorks with condition Applied: true
	Applied int `json:"Applied"`
}

PlaceManifestWorkSummary provides reference counts of all ManifestWorks that are associated with a given PlaceManifestWork resource, for their respective states

func (*PlacedManifestWorkSummary) DeepCopy

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

func (*PlacedManifestWorkSummary) DeepCopyInto

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

func (PlacedManifestWorkSummary) SwaggerDoc

func (PlacedManifestWorkSummary) SwaggerDoc() map[string]string

Jump to

Keyboard shortcuts

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