From 8d2ecc122075b66db52ed8ac02b1e59f72c58899 Mon Sep 17 00:00:00 2001 From: Tomas Nozicka Date: Thu, 15 Feb 2024 14:36:09 +0100 Subject: [PATCH 1/2] Add basic server side printer for our APIs --- pkg/api/scylla/v1/types_cluster.go | 7 +++++++ pkg/api/scylla/v1alpha1/types_monitoring.go | 4 ++++ pkg/api/scylla/v1alpha1/types_nodeconfig.go | 1 + pkg/api/scylla/v1alpha1/types_operatorconfig.go | 1 + 4 files changed, 13 insertions(+) diff --git a/pkg/api/scylla/v1/types_cluster.go b/pkg/api/scylla/v1/types_cluster.go index 243b7ec4e29..ffc74fb40ae 100644 --- a/pkg/api/scylla/v1/types_cluster.go +++ b/pkg/api/scylla/v1/types_cluster.go @@ -674,6 +674,13 @@ const ( // +kubebuilder:storageversion // +genclient // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +kubebuilder:printcolumn:name="READY",type=integer,JSONPath=".status.readyMembers" +// +kubebuilder:printcolumn:name="MEMBERS",type=integer,JSONPath=".status.members" +// +kubebuilder:printcolumn:name="RACKS",type=integer,JSONPath=".status.rackCount" +// +kubebuilder:printcolumn:name="AVAILABLE",type=string,JSONPath=".status.conditions[?(@.type=='Available')].status" +// +kubebuilder:printcolumn:name="PROGRESSING",type=string,JSONPath=".status.conditions[?(@.type=='Progressing')].status" +// +kubebuilder:printcolumn:name="DEGRADED",type=string,JSONPath=".status.conditions[?(@.type=='Degraded')].status" +// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" // ScyllaCluster defines a Scylla cluster. type ScyllaCluster struct { diff --git a/pkg/api/scylla/v1alpha1/types_monitoring.go b/pkg/api/scylla/v1alpha1/types_monitoring.go index e7a1a0d59b3..3529a769c48 100644 --- a/pkg/api/scylla/v1alpha1/types_monitoring.go +++ b/pkg/api/scylla/v1alpha1/types_monitoring.go @@ -200,6 +200,10 @@ type ScyllaDBMonitoringStatus struct { // +kubebuilder:storageversion // +genclient // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +kubebuilder:printcolumn:name="AVAILABLE",type=string,JSONPath=".status.conditions[?(@.type=='Available')].status" +// +kubebuilder:printcolumn:name="PROGRESSING",type=string,JSONPath=".status.conditions[?(@.type=='Progressing')].status" +// +kubebuilder:printcolumn:name="DEGRADED",type=string,JSONPath=".status.conditions[?(@.type=='Degraded')].status" +// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" // ScyllaDBMonitoring defines a monitoring instance for ScyllaDB clusters. type ScyllaDBMonitoring struct { diff --git a/pkg/api/scylla/v1alpha1/types_nodeconfig.go b/pkg/api/scylla/v1alpha1/types_nodeconfig.go index 02a7b36b07d..e34289dd738 100644 --- a/pkg/api/scylla/v1alpha1/types_nodeconfig.go +++ b/pkg/api/scylla/v1alpha1/types_nodeconfig.go @@ -189,6 +189,7 @@ type NodeConfigSpec struct { // +genclient // +genclient:nonNamespaced // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" type NodeConfig struct { metav1.TypeMeta `json:",inline"` diff --git a/pkg/api/scylla/v1alpha1/types_operatorconfig.go b/pkg/api/scylla/v1alpha1/types_operatorconfig.go index 9767bd86055..2b44fad7f90 100644 --- a/pkg/api/scylla/v1alpha1/types_operatorconfig.go +++ b/pkg/api/scylla/v1alpha1/types_operatorconfig.go @@ -20,6 +20,7 @@ type ScyllaOperatorConfigStatus struct { // +genclient // +genclient:nonNamespaced // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" // ScyllaOperatorConfig describes the Scylla Operator configuration. type ScyllaOperatorConfig struct { From 326db93b5b61e286867c3cb1714934061d1f1fe3 Mon Sep 17 00:00:00 2001 From: Tomas Nozicka Date: Fri, 16 Feb 2024 09:19:15 +0100 Subject: [PATCH 2/2] Update generated --- deploy/operator.yaml | 51 +++++++++++++++++-- .../scylla.scylladb.com_scyllaclusters.yaml | 24 ++++++++- .../scylla.scylladb.com_nodeconfigs.yaml | 6 ++- ...ylla.scylladb.com_scylladbmonitorings.yaml | 15 +++++- ...la.scylladb.com_scyllaoperatorconfigs.yaml | 6 ++- 5 files changed, 94 insertions(+), 8 deletions(-) diff --git a/deploy/operator.yaml b/deploy/operator.yaml index 826a168f6aa..463d5daf9f9 100644 --- a/deploy/operator.yaml +++ b/deploy/operator.yaml @@ -308,7 +308,11 @@ spec: singular: nodeconfig scope: Cluster versions: - - name: v1alpha1 + - additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 schema: openAPIV3Schema: properties: @@ -1019,7 +1023,29 @@ spec: singular: scyllacluster scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.readyMembers + name: READY + type: integer + - jsonPath: .status.members + name: MEMBERS + type: integer + - jsonPath: .status.rackCount + name: RACKS + type: integer + - jsonPath: .status.conditions[?(@.type=='Available')].status + name: AVAILABLE + type: string + - jsonPath: .status.conditions[?(@.type=='Progressing')].status + name: PROGRESSING + type: string + - jsonPath: .status.conditions[?(@.type=='Degraded')].status + name: DEGRADED + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1 schema: openAPIV3Schema: description: ScyllaCluster defines a Scylla cluster. @@ -3353,7 +3379,20 @@ spec: singular: scylladbmonitoring scope: Namespaced versions: - - name: v1alpha1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Available')].status + name: AVAILABLE + type: string + - jsonPath: .status.conditions[?(@.type=='Progressing')].status + name: PROGRESSING + type: string + - jsonPath: .status.conditions[?(@.type=='Degraded')].status + name: DEGRADED + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 schema: openAPIV3Schema: description: ScyllaDBMonitoring defines a monitoring instance for ScyllaDB clusters. @@ -4857,7 +4896,11 @@ spec: singular: scyllaoperatorconfig scope: Cluster versions: - - name: v1alpha1 + - additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 schema: openAPIV3Schema: description: ScyllaOperatorConfig describes the Scylla Operator configuration. diff --git a/pkg/api/scylla/v1/scylla.scylladb.com_scyllaclusters.yaml b/pkg/api/scylla/v1/scylla.scylladb.com_scyllaclusters.yaml index a033f8da944..f0a62cd6c78 100644 --- a/pkg/api/scylla/v1/scylla.scylladb.com_scyllaclusters.yaml +++ b/pkg/api/scylla/v1/scylla.scylladb.com_scyllaclusters.yaml @@ -15,7 +15,29 @@ spec: singular: scyllacluster scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.readyMembers + name: READY + type: integer + - jsonPath: .status.members + name: MEMBERS + type: integer + - jsonPath: .status.rackCount + name: RACKS + type: integer + - jsonPath: .status.conditions[?(@.type=='Available')].status + name: AVAILABLE + type: string + - jsonPath: .status.conditions[?(@.type=='Progressing')].status + name: PROGRESSING + type: string + - jsonPath: .status.conditions[?(@.type=='Degraded')].status + name: DEGRADED + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1 schema: openAPIV3Schema: description: ScyllaCluster defines a Scylla cluster. diff --git a/pkg/api/scylla/v1alpha1/scylla.scylladb.com_nodeconfigs.yaml b/pkg/api/scylla/v1alpha1/scylla.scylladb.com_nodeconfigs.yaml index 97c669ec947..4126e266757 100644 --- a/pkg/api/scylla/v1alpha1/scylla.scylladb.com_nodeconfigs.yaml +++ b/pkg/api/scylla/v1alpha1/scylla.scylladb.com_nodeconfigs.yaml @@ -15,7 +15,11 @@ spec: singular: nodeconfig scope: Cluster versions: - - name: v1alpha1 + - additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 schema: openAPIV3Schema: properties: diff --git a/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scylladbmonitorings.yaml b/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scylladbmonitorings.yaml index 446c31fc576..981f55fb000 100644 --- a/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scylladbmonitorings.yaml +++ b/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scylladbmonitorings.yaml @@ -15,7 +15,20 @@ spec: singular: scylladbmonitoring scope: Namespaced versions: - - name: v1alpha1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Available')].status + name: AVAILABLE + type: string + - jsonPath: .status.conditions[?(@.type=='Progressing')].status + name: PROGRESSING + type: string + - jsonPath: .status.conditions[?(@.type=='Degraded')].status + name: DEGRADED + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 schema: openAPIV3Schema: description: ScyllaDBMonitoring defines a monitoring instance for ScyllaDB clusters. diff --git a/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scyllaoperatorconfigs.yaml b/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scyllaoperatorconfigs.yaml index af1b86af59e..fb228bfa479 100644 --- a/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scyllaoperatorconfigs.yaml +++ b/pkg/api/scylla/v1alpha1/scylla.scylladb.com_scyllaoperatorconfigs.yaml @@ -15,7 +15,11 @@ spec: singular: scyllaoperatorconfig scope: Cluster versions: - - name: v1alpha1 + - additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1alpha1 schema: openAPIV3Schema: description: ScyllaOperatorConfig describes the Scylla Operator configuration.