Skip to content

Commit 181a49e

Browse files
committed
clusters were migrated on clusterresource refs pattern
1 parent 3a74ba1 commit 181a49e

File tree

57 files changed

+2488
-86
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+2488
-86
lines changed

apis/clusterresources/v1beta1/clusterbackup_types.go

-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import (
2727

2828
// ClusterBackupSpec defines the desired state of ClusterBackup
2929
type ClusterBackupSpec struct {
30-
ClusterID string `json:"clusterId,omitempty"`
3130
ClusterKind string `json:"clusterKind"`
3231
}
3332

apis/clusterresources/v1beta1/exclusionwindow_types.go

-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import (
2525

2626
// ExclusionWindowSpec defines the desired state of ExclusionWindow
2727
type ExclusionWindowSpec struct {
28-
ClusterID string `json:"clusterId,omitempty"`
2928
DayOfWeek string `json:"dayOfWeek"`
3029
//+kubebuilder:validation:Minimum:=0
3130
//+kubebuilder:validation:Maximum:=23

apis/clusterresources/v1beta1/gcpvpcpeering_types.go

-8
Original file line numberDiff line numberDiff line change
@@ -83,14 +83,6 @@ func init() {
8383
}
8484

8585
func (gcp *GCPVPCPeeringSpec) Validate() error {
86-
dataCentreIDMatched, err := regexp.Match(models.UUIDStringRegExp, []byte(gcp.DataCentreID))
87-
if err != nil {
88-
return err
89-
}
90-
if !dataCentreIDMatched {
91-
return fmt.Errorf("data centre ID is a UUID formated string. It must fit the pattern: %s", models.UUIDStringRegExp)
92-
}
93-
9486
for _, subnet := range gcp.PeerSubnets {
9587
peerSubnetMatched, err := regexp.Match(models.PeerSubnetsRegExp, []byte(subnet))
9688
if err != nil {

apis/clusterresources/v1beta1/gcpvpcpeering_webhook.go

-4
Original file line numberDiff line numberDiff line change
@@ -67,10 +67,6 @@ func (r *GCPVPCPeering) ValidateCreate() error {
6767
return fmt.Errorf("peer Project ID is empty")
6868
}
6969

70-
if r.Spec.DataCentreID == "" {
71-
return fmt.Errorf("dataCentre ID is empty")
72-
}
73-
7470
if r.Spec.PeerSubnets == nil {
7571
return fmt.Errorf("peer Subnets list is empty")
7672
}

apis/clusterresources/v1beta1/structs.go

+2-4
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@ import (
2121
)
2222

2323
type VPCPeeringSpec struct {
24-
DataCentreID string `json:"cdcId,omitempty"`
25-
PeerSubnets []string `json:"peerSubnets"`
24+
PeerSubnets []string `json:"peerSubnets"`
2625
}
2726

2827
type PeeringStatus struct {
@@ -41,8 +40,7 @@ type PatchRequest struct {
4140
}
4241

4342
type FirewallRuleSpec struct {
44-
ClusterID string `json:"clusterId,omitempty"`
45-
Type string `json:"type"`
43+
Type string `json:"type"`
4644
}
4745

4846
type FirewallRuleStatus struct {

apis/clusters/v1beta1/cadence_types.go

+1
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ type CadenceSpec struct {
7373
PackagedProvisioning []*PackagedProvisioning `json:"packagedProvisioning,omitempty"`
7474
TargetPrimaryCadence []*TargetCadence `json:"targetPrimaryCadence,omitempty"`
7575
ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"`
76+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
7677
}
7778

7879
type AWSArchival struct {

apis/clusters/v1beta1/cassandra_types.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ type CassandraSpec struct {
6363
Spark []*Spark `json:"spark,omitempty"`
6464
BundledUseOnly bool `json:"bundledUseOnly,omitempty"`
6565
UserRefs []*NamespacedName `json:"userRefs,omitempty"`
66+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
6667
//+kubebuilder:validate:MaxItems:=1
6768
ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"`
6869
}
@@ -151,7 +152,6 @@ func (c *Cassandra) NewBackupSpec(startTimestamp int) *clusterresourcesv1beta1.C
151152
Finalizers: []string{models.DeletionFinalizer},
152153
},
153154
Spec: clusterresourcesv1beta1.ClusterBackupSpec{
154-
ClusterID: c.Status.ID,
155155
ClusterKind: models.CassandraClusterKind,
156156
},
157157
}

apis/clusters/v1beta1/kafka_types.go

+1
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ type KafkaSpec struct {
8989
KarapaceSchemaRegistry []*KarapaceSchemaRegistry `json:"karapaceSchemaRegistry,omitempty"`
9090
BundledUseOnly bool `json:"bundledUseOnly,omitempty"`
9191
UserRefs []*NamespacedName `json:"userRefs,omitempty"`
92+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
9293
Kraft []*Kraft `json:"kraft,omitempty"`
9394
}
9495

apis/clusters/v1beta1/kafkaconnect_types.go

+1
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ type KafkaConnectSpec struct {
111111

112112
// CustomConnectors defines the location for custom connector storage and access info.
113113
CustomConnectors []*CustomConnectors `json:"customConnectors,omitempty"`
114+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
114115
}
115116

116117
// KafkaConnectStatus defines the observed state of KafkaConnect

apis/clusters/v1beta1/opensearch_types.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ type OpenSearchSpec struct {
5454
AlertingPlugin bool `json:"alertingPlugin,omitempty"`
5555
BundledUseOnly bool `json:"bundledUseOnly,omitempty"`
5656
UserRefs []*NamespacedName `json:"userRefs,omitempty"`
57+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
5758
//+kubuilder:validation:MaxItems:=1
5859
ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"`
5960
}
@@ -551,7 +552,6 @@ func (os *OpenSearch) NewBackupSpec(startTimestamp int) *clusterresourcesv1beta1
551552
Finalizers: []string{models.DeletionFinalizer},
552553
},
553554
Spec: clusterresourcesv1beta1.ClusterBackupSpec{
554-
ClusterID: os.Status.ID,
555555
ClusterKind: models.OsClusterKind,
556556
},
557557
}

apis/clusters/v1beta1/postgresql_types.go

-10
Original file line numberDiff line numberDiff line change
@@ -84,16 +84,6 @@ type PgSpec struct {
8484
ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"`
8585
}
8686

87-
type ClusterResourceRefs struct {
88-
ClusterBackups []*NamespacedName `json:"clusterBackups,omitempty"`
89-
ClusterNetworkFirewallRules []*NamespacedName `json:"clusterNetworkFirewallRules,omitempty"`
90-
AWSVPCPeerings []*NamespacedName `json:"awsVPCPeerings,omitempty"`
91-
AWSSecurityGroupFirewallRules []*NamespacedName `json:"awsSecurityGroupFirewallRules,omitempty"`
92-
ExclusionWindows []*NamespacedName `json:"exclusionWindows,omitempty"`
93-
GCPVPCPeerings []*NamespacedName `json:"gcpVPCPeerings,omitempty"`
94-
AzureVNetPeerings []*NamespacedName `json:"azureVNetPeerings,omitempty"`
95-
}
96-
9787
// PgStatus defines the observed state of PostgreSQL
9888
type PgStatus struct {
9989
ClusterStatus `json:",inline"`

apis/clusters/v1beta1/redis_types.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,9 @@ type RedisSpec struct {
6969
//+kubebuilder:validation:MaxItems:=2
7070
DataCentres []*RedisDataCentre `json:"dataCentres,omitempty"`
7171

72-
UserRefs []*NamespacedName `json:"userRefs,omitempty"`
72+
UserRefs []*NamespacedName `json:"userRefs,omitempty"`
73+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
74+
DataCentreNameForPeerings string `json:"dataCentreNameForPeerings,omitempty"`
7375
//+kubebuilder:validation:MaxItems:=1
7476
ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"`
7577
}
@@ -142,7 +144,6 @@ func (r *Redis) NewBackupSpec(startTimestamp int) *clusterresourcesv1beta1.Clust
142144
Finalizers: []string{models.DeletionFinalizer},
143145
},
144146
Spec: clusterresourcesv1beta1.ClusterBackupSpec{
145-
ClusterID: r.Status.ID,
146147
ClusterKind: models.RedisClusterKind,
147148
},
148149
}

apis/clusters/v1beta1/structs.go

+16
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ type DataCentre struct {
4343
}
4444

4545
type DataCentreStatus struct {
46+
Name string `json:"name,omitempty"`
4647
ID string `json:"id,omitempty"`
4748
Status string `json:"status,omitempty"`
4849
Nodes []*Node `json:"nodes,omitempty"`
@@ -556,6 +557,7 @@ func areClusteredMaintenanceEventStatusEqual(a, b *clusterresource.MaintenanceEv
556557

557558
func (cs *ClusterStatus) DCFromInstAPI(iDC models.DataCentre) *DataCentreStatus {
558559
return &DataCentreStatus{
560+
Name: iDC.Name,
559561
ID: iDC.ID,
560562
Status: iDC.Status,
561563
Nodes: cs.NodesFromInstAPI(iDC.Nodes),
@@ -711,6 +713,20 @@ func (cs *ClusterStatus) PrivateLinkStatusesEqual(iStatus *ClusterStatus) bool {
711713
return true
712714
}
713715

716+
type ClusterResourceRefs struct {
717+
ClusterBackups []*ClusterResourceRef `json:"clusterBackups,omitempty"`
718+
ClusterNetworkFirewallRules []*ClusterResourceRef `json:"clusterNetworkFirewallRules,omitempty"`
719+
AWSVPCPeerings []*ClusterResourceRef `json:"awsVPCPeerings,omitempty"`
720+
AWSSecurityGroupFirewallRules []*ClusterResourceRef `json:"awsSecurityGroupFirewallRules,omitempty"`
721+
ExclusionWindows []*ClusterResourceRef `json:"exclusionWindows,omitempty"`
722+
GCPVPCPeerings []*ClusterResourceRef `json:"gcpVPCPeerings,omitempty"`
723+
AzureVNetPeerings []*ClusterResourceRef `json:"azureVNetPeerings,omitempty"`
724+
}
725+
type ClusterResourceRef struct {
726+
NamespacedName `json:",inline"`
727+
DataCentreName string `json:"dataCentreName,omitempty"`
728+
}
729+
714730
type NamespacedName struct {
715731
Namespace string `json:"namespace"`
716732
Name string `json:"name"`

apis/clusters/v1beta1/zookeeper_types.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,9 @@ type ZookeeperDataCentre struct {
3636

3737
// ZookeeperSpec defines the desired state of Zookeeper
3838
type ZookeeperSpec struct {
39-
Cluster `json:",inline"`
40-
DataCentres []*ZookeeperDataCentre `json:"dataCentres"`
39+
Cluster `json:",inline"`
40+
DataCentres []*ZookeeperDataCentre `json:"dataCentres"`
41+
ClusterResources ClusterResourceRefs `json:"clusterResources,omitempty"`
4142
}
4243

4344
// ZookeeperStatus defines the observed state of Zookeeper

apis/clusters/v1beta1/zz_generated.deepcopy.go

+37-14
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

config/crd/bases/clusterresources.instaclustr.com_awssecuritygroupfirewallrules.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,6 @@ spec:
3737
description: AWSSecurityGroupFirewallRuleSpec defines the desired state
3838
of AWSSecurityGroupFirewallRule
3939
properties:
40-
clusterId:
41-
type: string
4240
securityGroupId:
4341
type: string
4442
type:

config/crd/bases/clusterresources.instaclustr.com_awsvpcpeerings.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,6 @@ spec:
3535
spec:
3636
description: AWSVPCPeeringSpec defines the desired state of AWSVPCPeering
3737
properties:
38-
cdcId:
39-
type: string
4038
peerAwsAccountId:
4139
type: string
4240
peerRegion:

config/crd/bases/clusterresources.instaclustr.com_azurevnetpeerings.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,6 @@ spec:
3535
spec:
3636
description: AzureVNetPeeringSpec defines the desired state of AzureVNetPeering
3737
properties:
38-
cdcId:
39-
type: string
4038
peerAdObjectId:
4139
type: string
4240
peerResourceGroup:

0 commit comments

Comments
 (0)