Skip to content

Commit ce3edcd

Browse files
justaugustusk8s-ci-robot
authored andcommitted
Update Service interface to use Reconcile/Delete methods (#180)
Signed-off-by: Stephen Augustus <[email protected]>
1 parent f347984 commit ce3edcd

File tree

35 files changed

+336
-1586
lines changed

35 files changed

+336
-1586
lines changed

Makefile

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,12 +165,17 @@ gazelle: ## Run Bazel Gazelle
165165
generate: ## Generate mocks, CRDs and runs `go generate` through Bazel
166166
GOPATH=$(shell go env GOPATH) bazel run //:generate $(BAZEL_ARGS)
167167
$(MAKE) dep-ensure
168+
$(MAKE) generate-deepcopy
168169
# bazel build $(BAZEL_ARGS) //pkg/cloud/azure/services/mocks:go_mock_interfaces \
169170
# //pkg/cloud/azure/services/ec2/mock_ec2iface:go_default_library \
170171
# //pkg/cloud/azure/services/elb/mock_elbiface:go_default_library
171172
# cp -Rf bazel-genfiles/pkg/* pkg/
172173
$(MAKE) generate-crds
173174

175+
.PHONY: generate-deepcopy
176+
generate-deepcopy:
177+
cd pkg/apis && go run ../../vendor/k8s.io/code-generator/cmd/deepcopy-gen/main.go -O zz_generated.deepcopy -i ./... -h ../../hack/boilerplate/boilerplate.go.txt
178+
174179
.PHONY: generate-crds
175180
generate-crds:
176181
bazel build //config
@@ -248,12 +253,11 @@ create-cluster: binaries-dev ## Create a development Kubernetes cluster on Azure
248253
-a ./cmd/clusterctl/examples/azure/out/addons.yaml
249254

250255
.PHONY: delete-cluster
251-
delete-cluster: binaries-dev ## Deletes the development Kubernetes Cluster (CLUSTER_NAME required)
256+
delete-cluster: binaries-dev ## Deletes the development Kubernetes Cluster
252257
clusterctl delete cluster -v 4 \
253258
--bootstrap-type kind \
254-
--cluster $(CLUSTER_NAME) \
255259
--kubeconfig ./kubeconfig \
256-
-p ./cmd/clusterctl/examples/azure/out/provider-components.yaml \
260+
-p ./cmd/clusterctl/examples/azure/out/provider-components.yaml
257261

258262
kind-reset: ## Destroys the "clusterapi" kind cluster.
259263
kind delete cluster --name=clusterapi || true

pkg/cloud/azure/actuators/cluster/actuator_test.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,27 +157,35 @@ func TestServicesCreatedCount(t *testing.T) {
157157
if cache[azure.GenerateVnetName(fakeReconciler.scope.Cluster.Name)] != 1 {
158158
t.Errorf("Expected 1 count of %s service", azure.GenerateVnetName(fakeReconciler.scope.Cluster.Name))
159159
}
160+
160161
if cache[azure.GenerateControlPlaneSecurityGroupName(fakeReconciler.scope.Cluster.Name)] != 1 {
161162
t.Errorf("Expected 1 count of %s service", azure.GenerateControlPlaneSecurityGroupName(fakeReconciler.scope.Cluster.Name))
162163
}
164+
163165
if cache[azure.GenerateNodeSecurityGroupName(fakeReconciler.scope.Cluster.Name)] != 1 {
164166
t.Errorf("Expected 1 count of %s service", azure.GenerateNodeSecurityGroupName(fakeReconciler.scope.Cluster.Name))
165167
}
168+
166169
if cache[azure.GenerateNodeRouteTableName(fakeReconciler.scope.Cluster.Name)] != 1 {
167170
t.Errorf("Expected 1 count of %s service", azure.GenerateNodeRouteTableName(fakeReconciler.scope.Cluster.Name))
168171
}
172+
169173
if cache[azure.GenerateControlPlaneSubnetName(fakeReconciler.scope.Cluster.Name)] != 1 {
170174
t.Errorf("Expected 1 count of %s service", azure.GenerateControlPlaneSubnetName(fakeReconciler.scope.Cluster.Name))
171175
}
176+
172177
if cache[azure.GenerateNodeSubnetName(fakeReconciler.scope.Cluster.Name)] != 1 {
173178
t.Errorf("Expected 1 count of %s service", azure.GenerateNodeSubnetName(fakeReconciler.scope.Cluster.Name))
174179
}
180+
175181
if cache[azure.GenerateInternalLBName(fakeReconciler.scope.Cluster.Name)] != 1 {
176182
t.Errorf("Expected 1 count of %s service", azure.GenerateInternalLBName(fakeReconciler.scope.Cluster.Name))
177183
}
184+
178185
if cache[azure.GeneratePublicLBName(fakeReconciler.scope.Cluster.Name)] != 1 {
179186
t.Errorf("Expected 1 count of %s service", azure.GeneratePublicLBName(fakeReconciler.scope.Cluster.Name))
180187
}
188+
181189
if cache[fakeReconciler.scope.Network().APIServerIP.Name] != 1 {
182190
t.Errorf("Expected 1 count of %s service", fakeReconciler.scope.Network().APIServerIP.Name)
183191
}

pkg/cloud/azure/actuators/cluster/reconciler.go

Lines changed: 86 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ package cluster
1818

1919
import (
2020
"github.com/pkg/errors"
21+
"k8s.io/klog"
2122
"sigs.k8s.io/cluster-api-provider-azure/pkg/cloud/azure"
2223
"sigs.k8s.io/cluster-api-provider-azure/pkg/cloud/azure/actuators"
2324
"sigs.k8s.io/cluster-api-provider-azure/pkg/cloud/azure/services/certificates"
@@ -62,206 +63,211 @@ func NewReconciler(scope *actuators.Scope) *Reconciler {
6263
}
6364

6465
// Reconcile reconciles all the services in pre determined order
65-
func (s *Reconciler) Reconcile() error {
66-
actuators.CreateOrUpdateNetworkAPIServerIP(s.scope)
66+
func (r *Reconciler) Reconcile() error {
67+
klog.V(2).Infof("reconciling cluster %s", r.scope.Cluster.Name)
68+
actuators.CreateOrUpdateNetworkAPIServerIP(r.scope)
6769

6870
// Store cert material in spec.
69-
if err := s.certificatesSvc.CreateOrUpdate(s.scope.Context, nil); err != nil {
70-
return errors.Wrapf(err, "failed to createorupdate certificates for cluster %s", s.scope.Cluster.Name)
71+
if err := r.certificatesSvc.Reconcile(r.scope.Context, nil); err != nil {
72+
return errors.Wrapf(err, "failed to reconcile certificates for cluster %s", r.scope.Cluster.Name)
7173
}
7274

73-
if err := s.groupsSvc.CreateOrUpdate(s.scope.Context, nil); err != nil {
74-
return errors.Wrapf(err, "failed to createorupdate resource group for cluster %s", s.scope.Cluster.Name)
75+
if err := r.groupsSvc.Reconcile(r.scope.Context, nil); err != nil {
76+
return errors.Wrapf(err, "failed to reconcile resource group for cluster %s", r.scope.Cluster.Name)
7577
}
7678

7779
vnetSpec := &virtualnetworks.Spec{
78-
Name: azure.GenerateVnetName(s.scope.Cluster.Name),
80+
Name: azure.GenerateVnetName(r.scope.Cluster.Name),
7981
CIDR: azure.DefaultVnetCIDR,
8082
}
81-
if err := s.vnetSvc.CreateOrUpdate(s.scope.Context, vnetSpec); err != nil {
82-
return errors.Wrapf(err, "failed to createorupdate virtual network for cluster %s", s.scope.Cluster.Name)
83+
if err := r.vnetSvc.Reconcile(r.scope.Context, vnetSpec); err != nil {
84+
return errors.Wrapf(err, "failed to reconcile virtual network for cluster %s", r.scope.Cluster.Name)
8385
}
84-
8586
sgSpec := &securitygroups.Spec{
86-
Name: azure.GenerateControlPlaneSecurityGroupName(s.scope.Cluster.Name),
87+
Name: azure.GenerateControlPlaneSecurityGroupName(r.scope.Cluster.Name),
8788
IsControlPlane: true,
8889
}
89-
if err := s.securityGroupSvc.CreateOrUpdate(s.scope.Context, sgSpec); err != nil {
90-
return errors.Wrapf(err, "failed to createorupdate control plane network security group for cluster %s", s.scope.Cluster.Name)
90+
if err := r.securityGroupSvc.Reconcile(r.scope.Context, sgSpec); err != nil {
91+
return errors.Wrapf(err, "failed to reconcile control plane network security group for cluster %s", r.scope.Cluster.Name)
9192
}
9293

9394
sgSpec = &securitygroups.Spec{
94-
Name: azure.GenerateNodeSecurityGroupName(s.scope.Cluster.Name),
95+
Name: azure.GenerateNodeSecurityGroupName(r.scope.Cluster.Name),
9596
IsControlPlane: false,
9697
}
97-
if err := s.securityGroupSvc.CreateOrUpdate(s.scope.Context, sgSpec); err != nil {
98-
return errors.Wrapf(err, "failed to createorupdate node network security group for cluster %s", s.scope.Cluster.Name)
98+
if err := r.securityGroupSvc.Reconcile(r.scope.Context, sgSpec); err != nil {
99+
return errors.Wrapf(err, "failed to reconcile node network security group for cluster %s", r.scope.Cluster.Name)
99100
}
100101

101102
rtSpec := &routetables.Spec{
102-
Name: azure.GenerateNodeRouteTableName(s.scope.Cluster.Name),
103+
Name: azure.GenerateNodeRouteTableName(r.scope.Cluster.Name),
103104
}
104-
if err := s.routeTableSvc.CreateOrUpdate(s.scope.Context, rtSpec); err != nil {
105-
return errors.Wrapf(err, "failed to createorupdate node route table for cluster %s", s.scope.Cluster.Name)
105+
if err := r.routeTableSvc.Reconcile(r.scope.Context, rtSpec); err != nil {
106+
return errors.Wrapf(err, "failed to reconcile node route table for cluster %s", r.scope.Cluster.Name)
106107
}
107108

108109
subnetSpec := &subnets.Spec{
109-
Name: azure.GenerateControlPlaneSubnetName(s.scope.Cluster.Name),
110+
Name: azure.GenerateControlPlaneSubnetName(r.scope.Cluster.Name),
110111
CIDR: azure.DefaultControlPlaneSubnetCIDR,
111-
VnetName: azure.GenerateVnetName(s.scope.Cluster.Name),
112-
SecurityGroupName: azure.GenerateControlPlaneSecurityGroupName(s.scope.Cluster.Name),
112+
VnetName: azure.GenerateVnetName(r.scope.Cluster.Name),
113+
SecurityGroupName: azure.GenerateControlPlaneSecurityGroupName(r.scope.Cluster.Name),
113114
}
114-
if err := s.subnetsSvc.CreateOrUpdate(s.scope.Context, subnetSpec); err != nil {
115-
return errors.Wrapf(err, "failed to createorupdate control plane subnet for cluster %s", s.scope.Cluster.Name)
115+
if err := r.subnetsSvc.Reconcile(r.scope.Context, subnetSpec); err != nil {
116+
return errors.Wrapf(err, "failed to reconcile control plane subnet for cluster %s", r.scope.Cluster.Name)
116117
}
117118

118119
subnetSpec = &subnets.Spec{
119-
Name: azure.GenerateNodeSubnetName(s.scope.Cluster.Name),
120+
Name: azure.GenerateNodeSubnetName(r.scope.Cluster.Name),
120121
CIDR: azure.DefaultNodeSubnetCIDR,
121-
VnetName: azure.GenerateVnetName(s.scope.Cluster.Name),
122-
SecurityGroupName: azure.GenerateNodeSecurityGroupName(s.scope.Cluster.Name),
123-
RouteTableName: azure.GenerateNodeRouteTableName(s.scope.Cluster.Name),
122+
VnetName: azure.GenerateVnetName(r.scope.Cluster.Name),
123+
SecurityGroupName: azure.GenerateNodeSecurityGroupName(r.scope.Cluster.Name),
124+
RouteTableName: azure.GenerateNodeRouteTableName(r.scope.Cluster.Name),
124125
}
125-
if err := s.subnetsSvc.CreateOrUpdate(s.scope.Context, subnetSpec); err != nil {
126-
return errors.Wrapf(err, "failed to createorupdate node subnet for cluster %s", s.scope.Cluster.Name)
126+
if err := r.subnetsSvc.Reconcile(r.scope.Context, subnetSpec); err != nil {
127+
return errors.Wrapf(err, "failed to reconcile node subnet for cluster %s", r.scope.Cluster.Name)
127128
}
128129

129130
internalLBSpec := &internalloadbalancers.Spec{
130-
Name: azure.GenerateInternalLBName(s.scope.Cluster.Name),
131-
SubnetName: azure.GenerateControlPlaneSubnetName(s.scope.Cluster.Name),
132-
VnetName: azure.GenerateVnetName(s.scope.Cluster.Name),
131+
Name: azure.GenerateInternalLBName(r.scope.Cluster.Name),
132+
SubnetName: azure.GenerateControlPlaneSubnetName(r.scope.Cluster.Name),
133+
VnetName: azure.GenerateVnetName(r.scope.Cluster.Name),
133134
IPAddress: azure.DefaultInternalLBIPAddress,
134135
}
135-
if err := s.internalLBSvc.CreateOrUpdate(s.scope.Context, internalLBSpec); err != nil {
136-
return errors.Wrapf(err, "failed to createorupdate control plane internal load balancer for cluster %s", s.scope.Cluster.Name)
136+
if err := r.internalLBSvc.Reconcile(r.scope.Context, internalLBSpec); err != nil {
137+
return errors.Wrapf(err, "failed to reconcile control plane internal load balancer for cluster %s", r.scope.Cluster.Name)
137138
}
138139

139140
publicIPSpec := &publicips.Spec{
140-
Name: s.scope.Network().APIServerIP.Name,
141+
Name: r.scope.Network().APIServerIP.Name,
141142
}
142-
if err := s.publicIPSvc.CreateOrUpdate(s.scope.Context, publicIPSpec); err != nil {
143-
return errors.Wrapf(err, "failed to createorupdate control plane public ip for cluster %s", s.scope.Cluster.Name)
143+
if err := r.publicIPSvc.Reconcile(r.scope.Context, publicIPSpec); err != nil {
144+
return errors.Wrapf(err, "failed to reconcile control plane public ip for cluster %s", r.scope.Cluster.Name)
144145
}
145146

146147
publicLBSpec := &publicloadbalancers.Spec{
147-
Name: azure.GeneratePublicLBName(s.scope.Cluster.Name),
148-
PublicIPName: s.scope.Network().APIServerIP.Name,
148+
Name: azure.GeneratePublicLBName(r.scope.Cluster.Name),
149+
PublicIPName: r.scope.Network().APIServerIP.Name,
149150
}
150-
if err := s.publicLBSvc.CreateOrUpdate(s.scope.Context, publicLBSpec); err != nil {
151-
return errors.Wrapf(err, "failed to createorupdate control plane public load balancer for cluster %s", s.scope.Cluster.Name)
151+
if err := r.publicLBSvc.Reconcile(r.scope.Context, publicLBSpec); err != nil {
152+
return errors.Wrapf(err, "failed to reconcile control plane public load balancer for cluster %s", r.scope.Cluster.Name)
152153
}
153154

155+
klog.V(2).Infof("successfully reconciled cluster %s", r.scope.Cluster.Name)
154156
return nil
155157
}
156158

157159
// Delete reconciles all the services in pre determined order
158-
func (s *Reconciler) Delete() error {
159-
if err := s.deleteLB(); err != nil {
160+
func (r *Reconciler) Delete() error {
161+
if err := r.deleteLB(); err != nil {
160162
return errors.Wrap(err, "failed to delete load balancer")
161163
}
162164

163-
if err := s.deleteSubnets(); err != nil {
165+
if err := r.deleteSubnets(); err != nil {
164166
return errors.Wrap(err, "failed to delete subnets")
165167
}
166168

167169
rtSpec := &routetables.Spec{
168-
Name: azure.GenerateNodeRouteTableName(s.scope.Cluster.Name),
170+
Name: azure.GenerateNodeRouteTableName(r.scope.Cluster.Name),
169171
}
170-
if err := s.routeTableSvc.Delete(s.scope.Context, rtSpec); err != nil {
172+
if err := r.routeTableSvc.Delete(r.scope.Context, rtSpec); err != nil {
171173
if !azure.ResourceNotFound(err) {
172-
return errors.Wrapf(err, "failed to delete route table %s for cluster %s", azure.GenerateNodeRouteTableName(s.scope.Cluster.Name), s.scope.Cluster.Name)
174+
return errors.Wrapf(err, "failed to delete route table %s for cluster %s", azure.GenerateNodeRouteTableName(r.scope.Cluster.Name), r.scope.Cluster.Name)
173175
}
174176
}
175177

176-
if err := s.deleteNSG(); err != nil {
178+
if err := r.deleteNSG(); err != nil {
177179
return errors.Wrap(err, "failed to delete network security group")
178180
}
179181

180182
vnetSpec := &virtualnetworks.Spec{
181-
Name: azure.GenerateVnetName(s.scope.Cluster.Name),
183+
Name: azure.GenerateVnetName(r.scope.Cluster.Name),
182184
}
183-
if err := s.vnetSvc.Delete(s.scope.Context, vnetSpec); err != nil {
185+
if err := r.vnetSvc.Delete(r.scope.Context, vnetSpec); err != nil {
184186
if !azure.ResourceNotFound(err) {
185-
return errors.Wrapf(err, "failed to delete virtual network %s for cluster %s", azure.GenerateVnetName(s.scope.Cluster.Name), s.scope.Cluster.Name)
187+
return errors.Wrapf(err, "failed to delete virtual network %s for cluster %s", azure.GenerateVnetName(r.scope.Cluster.Name), r.scope.Cluster.Name)
186188
}
187189
}
188190

189-
if err := s.groupsSvc.Delete(s.scope.Context, nil); err != nil {
191+
if err := r.groupsSvc.Delete(r.scope.Context, nil); err != nil {
190192
if !azure.ResourceNotFound(err) {
191-
return errors.Wrapf(err, "failed to delete resource group for cluster %s", s.scope.Cluster.Name)
193+
return errors.Wrapf(err, "failed to delete resource group for cluster %s", r.scope.Cluster.Name)
192194
}
193195
}
196+
194197
return nil
195198
}
196199

197-
func (s *Reconciler) deleteLB() error {
200+
func (r *Reconciler) deleteLB() error {
198201
publicLBSpec := &publicloadbalancers.Spec{
199-
Name: azure.GeneratePublicLBName(s.scope.Cluster.Name),
202+
Name: azure.GeneratePublicLBName(r.scope.Cluster.Name),
200203
}
201-
if err := s.publicLBSvc.Delete(s.scope.Context, publicLBSpec); err != nil {
204+
if err := r.publicLBSvc.Delete(r.scope.Context, publicLBSpec); err != nil {
202205
if !azure.ResourceNotFound(err) {
203-
return errors.Wrapf(err, "failed to delete lb %s for cluster %s", azure.GeneratePublicLBName(s.scope.Cluster.Name), s.scope.Cluster.Name)
206+
return errors.Wrapf(err, "failed to delete lb %s for cluster %s", azure.GeneratePublicLBName(r.scope.Cluster.Name), r.scope.Cluster.Name)
204207
}
205208
}
206209
publicIPSpec := &publicips.Spec{
207-
Name: s.scope.Network().APIServerIP.Name,
210+
Name: r.scope.Network().APIServerIP.Name,
208211
}
209-
if err := s.publicIPSvc.Delete(s.scope.Context, publicIPSpec); err != nil {
212+
if err := r.publicIPSvc.Delete(r.scope.Context, publicIPSpec); err != nil {
210213
if !azure.ResourceNotFound(err) {
211-
return errors.Wrapf(err, "failed to delete public ip %s for cluster %s", s.scope.Network().APIServerIP.Name, s.scope.Cluster.Name)
214+
return errors.Wrapf(err, "failed to delete public ip %s for cluster %s", r.scope.Network().APIServerIP.Name, r.scope.Cluster.Name)
212215
}
213216
}
214217

215218
internalLBSpec := &internalloadbalancers.Spec{
216-
Name: azure.GenerateInternalLBName(s.scope.Cluster.Name),
219+
Name: azure.GenerateInternalLBName(r.scope.Cluster.Name),
217220
}
218-
if err := s.internalLBSvc.Delete(s.scope.Context, internalLBSpec); err != nil {
221+
if err := r.internalLBSvc.Delete(r.scope.Context, internalLBSpec); err != nil {
219222
if !azure.ResourceNotFound(err) {
220-
return errors.Wrapf(err, "failed to internal load balancer %s for cluster %s", azure.GenerateInternalLBName(s.scope.Cluster.Name), s.scope.Cluster.Name)
223+
return errors.Wrapf(err, "failed to internal load balancer %s for cluster %s", azure.GenerateInternalLBName(r.scope.Cluster.Name), r.scope.Cluster.Name)
221224
}
222225
}
226+
223227
return nil
224228
}
225229

226-
func (s *Reconciler) deleteSubnets() error {
230+
func (r *Reconciler) deleteSubnets() error {
227231
subnetSpec := &subnets.Spec{
228-
Name: azure.GenerateNodeSubnetName(s.scope.Cluster.Name),
229-
VnetName: azure.GenerateVnetName(s.scope.Cluster.Name),
232+
Name: azure.GenerateNodeSubnetName(r.scope.Cluster.Name),
233+
VnetName: azure.GenerateVnetName(r.scope.Cluster.Name),
230234
}
231-
if err := s.subnetsSvc.Delete(s.scope.Context, subnetSpec); err != nil {
235+
if err := r.subnetsSvc.Delete(r.scope.Context, subnetSpec); err != nil {
232236
if !azure.ResourceNotFound(err) {
233-
return errors.Wrapf(err, "failed to delete %s subnet for cluster %s", azure.GenerateNodeSubnetName(s.scope.Cluster.Name), s.scope.Cluster.Name)
237+
return errors.Wrapf(err, "failed to delete %s subnet for cluster %s", azure.GenerateNodeSubnetName(r.scope.Cluster.Name), r.scope.Cluster.Name)
234238
}
235239
}
236240

237241
subnetSpec = &subnets.Spec{
238-
Name: azure.GenerateControlPlaneSubnetName(s.scope.Cluster.Name),
239-
VnetName: azure.GenerateVnetName(s.scope.Cluster.Name),
242+
Name: azure.GenerateControlPlaneSubnetName(r.scope.Cluster.Name),
243+
VnetName: azure.GenerateVnetName(r.scope.Cluster.Name),
240244
}
241-
if err := s.subnetsSvc.Delete(s.scope.Context, subnetSpec); err != nil {
245+
if err := r.subnetsSvc.Delete(r.scope.Context, subnetSpec); err != nil {
242246
if !azure.ResourceNotFound(err) {
243-
return errors.Wrapf(err, "failed to delete %s subnet for cluster %s", azure.GenerateControlPlaneSubnetName(s.scope.Cluster.Name), s.scope.Cluster.Name)
247+
return errors.Wrapf(err, "failed to delete %s subnet for cluster %s", azure.GenerateControlPlaneSubnetName(r.scope.Cluster.Name), r.scope.Cluster.Name)
244248
}
245249
}
250+
246251
return nil
247252
}
248253

249-
func (s *Reconciler) deleteNSG() error {
254+
func (r *Reconciler) deleteNSG() error {
250255
sgSpec := &securitygroups.Spec{
251-
Name: azure.GenerateNodeSecurityGroupName(s.scope.Cluster.Name),
256+
Name: azure.GenerateNodeSecurityGroupName(r.scope.Cluster.Name),
252257
}
253-
if err := s.securityGroupSvc.Delete(s.scope.Context, sgSpec); err != nil {
258+
if err := r.securityGroupSvc.Delete(r.scope.Context, sgSpec); err != nil {
254259
if !azure.ResourceNotFound(err) {
255-
return errors.Wrapf(err, "failed to delete security group %s for cluster %s", azure.GenerateNodeSecurityGroupName(s.scope.Cluster.Name), s.scope.Cluster.Name)
260+
return errors.Wrapf(err, "failed to delete security group %s for cluster %s", azure.GenerateNodeSecurityGroupName(r.scope.Cluster.Name), r.scope.Cluster.Name)
256261
}
257262
}
258263
sgSpec = &securitygroups.Spec{
259-
Name: azure.GenerateControlPlaneSecurityGroupName(s.scope.Cluster.Name),
264+
Name: azure.GenerateControlPlaneSecurityGroupName(r.scope.Cluster.Name),
260265
}
261-
if err := s.securityGroupSvc.Delete(s.scope.Context, sgSpec); err != nil {
266+
if err := r.securityGroupSvc.Delete(r.scope.Context, sgSpec); err != nil {
262267
if !azure.ResourceNotFound(err) {
263-
return errors.Wrapf(err, "failed to delete security group %s for cluster %s", azure.GenerateControlPlaneSecurityGroupName(s.scope.Cluster.Name), s.scope.Cluster.Name)
268+
return errors.Wrapf(err, "failed to delete security group %s for cluster %s", azure.GenerateControlPlaneSecurityGroupName(r.scope.Cluster.Name), r.scope.Cluster.Name)
264269
}
265270
}
271+
266272
return nil
267273
}

0 commit comments

Comments
 (0)