Skip to content

Commit 6aee699

Browse files
committed
use database and storage builders for statefulset labels in nodeset
1 parent 2f9188f commit 6aee699

File tree

4 files changed

+17
-40
lines changed

4 files changed

+17
-40
lines changed

internal/labels/label.go

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,6 @@ const (
2424
// RemoteClusterKey The specialization of a remote k8s cluster
2525
RemoteClusterKey = "ydb.tech/remote-cluster"
2626

27-
StorageGeneration = "ydb.tech/storage-generation"
28-
DatabaseGeneration = "ydb.tech/database-generation"
29-
3027
StorageComponent = "storage-node"
3128
DynamicComponent = "dynamic-node"
3229
BlobstorageInitComponent = "blobstorage-init"
@@ -87,5 +84,17 @@ func makeCommonLabels(other map[string]string, instance string) map[string]strin
8784

8885
common[ManagedByKey] = "ydb-operator"
8986

87+
if storageNodeSetName, exist := other[StorageNodeSetComponent]; exist {
88+
common[StorageNodeSetComponent] = storageNodeSetName
89+
}
90+
91+
if databaseNodeSetName, exist := other[DatabaseNodeSetComponent]; exist {
92+
common[DatabaseNodeSetComponent] = databaseNodeSetName
93+
}
94+
95+
if remoteCluster, exist := other[RemoteClusterKey]; exist {
96+
common[RemoteClusterKey] = remoteCluster
97+
}
98+
9099
return common
91100
}

internal/resources/databasenodeset.go

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99

1010
api "github.com/ydb-platform/ydb-kubernetes-operator/api/v1alpha1"
1111
"github.com/ydb-platform/ydb-kubernetes-operator/internal/annotations"
12-
"github.com/ydb-platform/ydb-kubernetes-operator/internal/labels"
1312
)
1413

1514
type DatabaseNodeSetBuilder struct {
@@ -54,25 +53,12 @@ func (b *DatabaseNodeSetBuilder) Placeholder(cr client.Object) client.Object {
5453
}
5554
}
5655

57-
func (b *DatabaseNodeSetResource) buildLabels() labels.Labels {
58-
l := labels.Common(b.Spec.DatabaseRef.Name, b.Labels)
59-
l.Merge(b.Spec.AdditionalLabels)
60-
l.Merge(map[string]string{labels.ComponentKey: labels.DynamicComponent})
61-
if nodeSetName, exist := b.Labels[labels.DatabaseNodeSetComponent]; exist {
62-
l.Merge(map[string]string{labels.DatabaseNodeSetComponent: nodeSetName})
63-
}
64-
if remoteCluster, exist := b.Labels[labels.RemoteClusterKey]; exist {
65-
l.Merge(map[string]string{labels.RemoteClusterKey: remoteCluster})
66-
}
67-
68-
return l
69-
}
70-
7156
func (b *DatabaseNodeSetResource) GetResourceBuilders(restConfig *rest.Config) []ResourceBuilder {
7257
ydbCr := api.RecastDatabaseNodeSet(b.Unwrap())
73-
statefulSetName := b.Name
58+
databaseBuilder := NewDatabase(ydbCr)
7459

75-
statefulSetLabels := b.buildLabels()
60+
statefulSetName := b.Name
61+
statefulSetLabels := databaseBuilder.buildLabels()
7662
statefulSetAnnotations := CopyDict(b.Spec.AdditionalAnnotations)
7763
statefulSetAnnotations[annotations.ConfigurationChecksum] = GetConfigurationChecksum(b.Spec.Configuration)
7864

internal/resources/storage_init_job.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,13 @@ package resources
33
import (
44
"errors"
55
"fmt"
6-
"strconv"
76

87
batchv1 "k8s.io/api/batch/v1"
98
corev1 "k8s.io/api/core/v1"
109
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1110
"sigs.k8s.io/controller-runtime/pkg/client"
1211

1312
api "github.com/ydb-platform/ydb-kubernetes-operator/api/v1alpha1"
14-
"github.com/ydb-platform/ydb-kubernetes-operator/internal/annotations"
1513
"github.com/ydb-platform/ydb-kubernetes-operator/internal/labels"
1614
"github.com/ydb-platform/ydb-kubernetes-operator/internal/ptr"
1715
)
@@ -66,11 +64,9 @@ func GetInitJobBuilder(storage *api.Storage) ResourceBuilder {
6664
if storage.Spec.InitJob != nil {
6765
if storage.Spec.InitJob.AdditionalLabels != nil {
6866
jobLabels.Merge(storage.Spec.InitJob.AdditionalLabels)
69-
jobLabels[labels.StorageGeneration] = strconv.FormatInt(storage.ObjectMeta.Generation, 10)
7067
}
7168
if storage.Spec.InitJob.AdditionalAnnotations != nil {
7269
jobAnnotations = CopyDict(storage.Spec.InitJob.AdditionalAnnotations)
73-
jobAnnotations[annotations.ConfigurationChecksum] = GetConfigurationChecksum(storage.Spec.Configuration)
7470
}
7571
}
7672

internal/resources/storagenodeset.go

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99

1010
api "github.com/ydb-platform/ydb-kubernetes-operator/api/v1alpha1"
1111
"github.com/ydb-platform/ydb-kubernetes-operator/internal/annotations"
12-
"github.com/ydb-platform/ydb-kubernetes-operator/internal/labels"
1312
)
1413

1514
type StorageNodeSetBuilder struct {
@@ -54,25 +53,12 @@ func (b *StorageNodeSetBuilder) Placeholder(cr client.Object) client.Object {
5453
}
5554
}
5655

57-
func (b *StorageNodeSetResource) buildLabels() labels.Labels {
58-
l := labels.Common(b.Spec.StorageRef.Name, b.Labels)
59-
l.Merge(b.Spec.AdditionalLabels)
60-
l.Merge(map[string]string{labels.ComponentKey: labels.StorageComponent})
61-
if nodeSetName, exist := b.Labels[labels.StorageNodeSetComponent]; exist {
62-
l.Merge(map[string]string{labels.StorageNodeSetComponent: nodeSetName})
63-
}
64-
if remoteCluster, exist := b.Labels[labels.RemoteClusterKey]; exist {
65-
l.Merge(map[string]string{labels.RemoteClusterKey: remoteCluster})
66-
}
67-
68-
return l
69-
}
70-
7156
func (b *StorageNodeSetResource) GetResourceBuilders(restConfig *rest.Config) []ResourceBuilder {
7257
ydbCr := api.RecastStorageNodeSet(b.Unwrap())
58+
clusterBuilder := NewCluster(ydbCr)
7359

7460
statefulSetName := b.Name
75-
statefulSetLabels := b.buildLabels()
61+
statefulSetLabels := clusterBuilder.buildLabels()
7662
statefulSetAnnotations := CopyDict(b.Spec.AdditionalAnnotations)
7763
statefulSetAnnotations[annotations.ConfigurationChecksum] = GetConfigurationChecksum(b.Spec.Configuration)
7864

0 commit comments

Comments
 (0)