v1alpha1

package
v0.15.0 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2024 License: Apache-2.0 Imports: 5 Imported by: 11

Documentation

Overview

Package v1 contains API Schema definitions for the apps v1 API group +k8s:deepcopy-gen=package,register +groupName=apps.open-cluster-management.io

Package v1 contains API Schema definitions for the apps v1 API group +k8s:deepcopy-gen=package,register +groupName=apps.open-cluster-management.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: "apps.open-cluster-management.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}

	// AddToScheme adds to the SchemeBuilder.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

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

Types

type PackagePhase

type PackagePhase string

PackagePhase defines the phase of a deployment package. The supported phases are "", "Deployed", "Failed", and "PropagationFailed".

const (
	// PackageUnknown represents the status of a package that is unknown
	PackageUnknown PackagePhase = ""

	// PackageDeployed represents the status of a package that is deployed on the managed cluster
	PackageDeployed PackagePhase = "Deployed"

	// PackageDeployFailed represents the status of a package that failed to deployed on the managed cluster
	PackageDeployFailed PackagePhase = "Failed"

	// PackagePropagationFailed represents the status of a package that failed to propagate to the managed cluster
	PackagePropagationFailed PackagePhase = "PropagationFailed"
)

type SubscriptionClusterStatusMap

type SubscriptionClusterStatusMap struct {
	SubscriptionPackageStatus []SubscriptionUnitStatus `json:"packages,omitempty"`

	SubscriptionStatus SubscriptionOverallStatus `json:"subscription,omitempty"`
}

SubscriptionClusterStatusMap contains the status of deployment packages in a cluster.

func (*SubscriptionClusterStatusMap) DeepCopy

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

func (*SubscriptionClusterStatusMap) DeepCopyInto

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

type SubscriptionOverallStatus added in v0.13.0

type SubscriptionOverallStatus struct {
	// Phase of the overall subscription status (unknown/deployed/failed).
	Phase SubscriptionPhase `json:"phase,omitempty"`

	// Informational message or error output from the overall subscription status.
	Message string `json:"message,omitempty"`

	// Timestamp of when the overall subscription status was last updated.
	LastUpdateTime metav1.Time `json:"lastUpdateTime,omitempty"`
}

SubscriptionOverallStatus provides the overall status of the subscription. It is computed using the status of all the deployment packages in the subscription.

func (*SubscriptionOverallStatus) DeepCopy added in v0.13.0

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

func (*SubscriptionOverallStatus) DeepCopyInto added in v0.13.0

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

type SubscriptionPhase added in v0.13.0

type SubscriptionPhase string

SubscriptionPhase defines the phase of the overall subscription. The supported phases are "", "Deployed", and "Failed".

const (
	// SubscriptionUnknown represents the status of a subscription that is unknown.
	SubscriptionUnknown SubscriptionPhase = ""

	// SubscriptionDeployed represents the status of a subscription that is deployed on the manage cluster.
	SubscriptionDeployed SubscriptionPhase = "Deployed"

	// SubscriptionDeployFailed represents the status of a subscription that failed to deploy on the manage cluster.
	SubscriptionDeployFailed SubscriptionPhase = "Failed"
)

type SubscriptionReport

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

	// ReportType identifies the type of subscription report.
	ReportType SubscriptionReportType `json:"reportType"`

	// +optional
	Summary SubscriptionReportSummary `json:"summary,omitempty"`

	// +optional
	Results []*SubscriptionReportResult `json:"results,omitempty"`

	// Resources is an optional reference to the subscription resources.
	// +optional
	Resources []*corev1.ObjectReference `json:"resources,omitempty"`
}

SubscriptionReport provides a report of the status of the subscriptions on the managed clusters. There are two types of subscriptions reports: Application and Cluster. Application type reports provide the status of a particular subscription on all the managed clusters. Cluster type reports provide the status of all the subscriptions on a particular managed cluster. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:object:root=true +kubebuilder:printcolumn:name="ReportType",type=string,JSONPath=`.reportType` +kubebuilder:printcolumn:name="Deployed",type=string,JSONPath=`.summary.deployed` +kubebuilder:printcolumn:name="InProgress",type=string,JSONPath=`.summary.inProgress` +kubebuilder:printcolumn:name="Failed",type=string,JSONPath=`.summary.failed` +kubebuilder:printcolumn:name="PropagationFailed",type=string,JSONPath=`.summary.propagationFailed` +kubebuilder:printcolumn:name="Clusters",type=string,JSONPath=`.summary.clusters` +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:shortName=appsubreport

func (*SubscriptionReport) DeepCopy

func (in *SubscriptionReport) DeepCopy() *SubscriptionReport

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

func (*SubscriptionReport) DeepCopyInto

func (in *SubscriptionReport) DeepCopyInto(out *SubscriptionReport)

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

func (*SubscriptionReport) DeepCopyObject

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

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

type SubscriptionReportList

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

SubscriptionReportList contains a list of SubscriptionReports. +kubebuilder:object:root=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*SubscriptionReportList) DeepCopy

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

func (*SubscriptionReportList) DeepCopyInto

func (in *SubscriptionReportList) DeepCopyInto(out *SubscriptionReportList)

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

func (*SubscriptionReportList) DeepCopyObject

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

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

type SubscriptionReportResult

type SubscriptionReportResult struct {

	// Source is an identifier of the subscription or managed cluster, depending on the type of the report.
	// +optional
	Source string `json:"source"`

	// Timestamp indicates the time when the result was found.
	Timestamp metav1.Timestamp `json:"timestamp,omitempty"`

	// Result indicates the outcome (deployed/failed/propagationFailed) of the subscription deployment.
	Result SubscriptionResult `json:"result,omitempty"`
}

SubscriptionReportResult provides the result for an individual subscription. For application type reports, the details include the status of the subscription from all the managed clusters. For cluster type reports, the details include the status of all the subscriptions on a managed cluster.

func (*SubscriptionReportResult) DeepCopy

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

func (*SubscriptionReportResult) DeepCopyInto

func (in *SubscriptionReportResult) DeepCopyInto(out *SubscriptionReportResult)

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

type SubscriptionReportSummary

type SubscriptionReportSummary struct {

	// Deployed provides the count of subscriptions that deployed successfully
	// +optional
	Deployed string `json:"deployed"`

	// InProgress provides the count of subscriptions that are in the process of being deployed.
	// +optional
	InProgress string `json:"inProgress"`

	// Failed provides the count of subscriptions that failed to deploy.
	// +optional
	Failed string `json:"failed"`

	// PropagationFailed provides the count of subscriptions that failed to propagate to a managed cluster.
	// +optional
	PropagationFailed string `json:"propagationFailed"`

	// Clusters provides the count of all managed clusters the subscription is deployed to.
	// +optional
	Clusters string `json:"clusters"`
}

SubscriptionReportSummary provides a summary of the status of the subscription on all the managed clusters. It provides a count of the number of clusters, where the subscription is deployed to, that has the status of "deployed", "inProgress", "failed", and "propagationFailed".

func (*SubscriptionReportSummary) DeepCopy

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

func (*SubscriptionReportSummary) DeepCopyInto

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

type SubscriptionReportType

type SubscriptionReportType string

SubscriptionReportType indicates the type of the subscription report. It could have one of the following values:

  • Application: a report for a particular subscription and its status on all the managed clusters
  • Cluster: a report of all the subscriptions on a particular managed cluster

+kubebuilder:validation:Enum=Application;Cluster

type SubscriptionResult

type SubscriptionResult string

SubscriptionResult indicates the outcome of a subscription deployment. It could have one of the following values:

  • deployed: the subscription deployed successfully
  • failed: the subscription failed to deploy
  • propagationFailed: the subscription failed to propagate

+kubebuilder:validation:Enum=deployed;failed;propagationFailed

type SubscriptionStatus

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

	Statuses SubscriptionClusterStatusMap `json:"statuses,omitempty"`
}

SubscriptionStatus provides detailed status for all the resources that are deployed by the application in a cluster. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope="Namespaced" +kubebuilder:resource:shortName=appsubstatus

func (*SubscriptionStatus) DeepCopy

func (in *SubscriptionStatus) DeepCopy() *SubscriptionStatus

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

func (*SubscriptionStatus) DeepCopyInto

func (in *SubscriptionStatus) DeepCopyInto(out *SubscriptionStatus)

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

func (*SubscriptionStatus) DeepCopyObject

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

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

type SubscriptionStatusList

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

SubscriptionStatusList provides a list of SubscriptionStatus. +kubebuilder:object:root=true

func (*SubscriptionStatusList) DeepCopy

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

func (*SubscriptionStatusList) DeepCopyInto

func (in *SubscriptionStatusList) DeepCopyInto(out *SubscriptionStatusList)

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

func (*SubscriptionStatusList) DeepCopyObject

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

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

type SubscriptionUnitStatus

type SubscriptionUnitStatus struct {
	// Name of the deployment package.
	Name string `json:"name,omitempty"`

	// API version of the deployment package.
	APIVersion string `json:"apiVersion,omitempty"`

	// Kind of the deployment package.
	Kind string `json:"kind,omitempty"`

	// Namespace where the deployment package is deployed.
	Namespace string `json:"namespace,omitempty"`

	// Phase of the deployment package (unknown/deployed/failed/propagationFailed).
	Phase PackagePhase `json:"phase,omitempty"`

	// Informational message or error output from the deployment of the package.
	Message string `json:"message,omitempty"`

	// Timestamp of when the deployment package was last updated.
	LastUpdateTime metav1.Time `json:"lastUpdateTime"`
}

SubscriptionUnitStatus provides the status of a single deployment package.

func (*SubscriptionUnitStatus) DeepCopy

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

func (*SubscriptionUnitStatus) DeepCopyInto

func (in *SubscriptionUnitStatus) DeepCopyInto(out *SubscriptionUnitStatus)

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