~ knotless Search/
↑↓ move↵ open⇧↵ all results
0
0
main
54 lines · 1.2 KB Raw History
package v1alpha1

import (
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"

	commonv1 "github.com/johnandersen777/socialweb-computer-kcp/api/common/v1alpha1"
)

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

	Spec   ClusterRollSpec   `json:"spec,omitempty"`
	Status ClusterRollStatus `json:"status,omitempty"`
}

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

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

type ClusterRollSpec struct {
	ClusterRef commonv1.LocalObjectRef `json:"clusterRef"`

	Strategy string `json:"strategy"`

	MaxUnavailable int32 `json:"maxUnavailable"`
}

type ClusterRollPhase string

const (
	ClusterRollPhasePending ClusterRollPhase = "Pending"

	ClusterRollPhaseRunning ClusterRollPhase = "Running"

	ClusterRollPhaseCompleted ClusterRollPhase = "Completed"

	ClusterRollPhaseFailed ClusterRollPhase = "Failed"
)

type ClusterRollStatus struct {
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	Phase ClusterRollPhase `json:"phase,omitempty"`

	StartedAt string `json:"startedAt,omitempty"`

	CompletedAt string `json:"completedAt,omitempty"`

	Conditions []metav1.Condition `json:"conditions,omitempty"`
}