Skip to content

Commit 14767d5

Browse files
adding cyclops linter for max 30
1 parent 9b3edbe commit 14767d5

File tree

2 files changed

+48
-38
lines changed

2 files changed

+48
-38
lines changed

.golangci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,13 @@ linters:
2424
- goconst # Find repeated strings that could be replaced by a constant
2525
- unconvert # Detect redundant type conversions
2626
- unused # Detect unused constants, variables, functions and types
27+
- cyclop # Check code complexity
2728
settings:
2829
unused:
2930
# Mark all struct fields that have been written to as used.
3031
field-writes-are-uses: false
32+
cyclop:
33+
max-complexity: 30
3134
formatters:
3235
enable:
3336
- goimports

internal/storage/driver/memory/instance.go

Lines changed: 45 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -298,50 +298,57 @@ func (s *instances) matchInstanceState(instanceID string, states []dbmodel.Insta
298298
return true
299299
}
300300

301-
for _, s := range states {
302-
switch s {
303-
case dbmodel.InstanceSucceeded:
304-
if op.State == domain.Succeeded && op.Type != internal.OperationTypeDeprovision {
305-
return true
306-
}
307-
case dbmodel.InstanceFailed:
308-
if op.State == domain.Failed && (op.Type == internal.OperationTypeProvision || op.Type == internal.OperationTypeDeprovision) {
309-
return true
310-
}
311-
case dbmodel.InstanceError:
312-
if op.State == domain.Failed && op.Type != internal.OperationTypeProvision && op.Type != internal.OperationTypeDeprovision {
313-
return true
314-
}
315-
case dbmodel.InstanceProvisioning:
316-
if op.Type == internal.OperationTypeProvision && op.State == domain.InProgress {
317-
return true
318-
}
319-
case dbmodel.InstanceDeprovisioning:
320-
if op.Type == internal.OperationTypeDeprovision && op.State == domain.InProgress {
321-
return true
322-
}
323-
case dbmodel.InstanceUpgrading:
324-
if op.Type == internal.OperationTypeUpgradeCluster && op.State == domain.InProgress {
325-
return true
326-
}
327-
case dbmodel.InstanceUpdating:
328-
if op.Type == internal.OperationTypeUpdate && op.State == domain.InProgress {
329-
return true
330-
}
331-
case dbmodel.InstanceDeprovisioned:
332-
if op.State == domain.Succeeded && op.Type == internal.OperationTypeDeprovision {
333-
return true
334-
}
335-
case dbmodel.InstanceNotDeprovisioned:
336-
if op.State != domain.Succeeded || op.Type != internal.OperationTypeDeprovision {
337-
return true
338-
}
301+
for _, state := range states {
302+
if matched := s.matchState(state, op); matched {
303+
return matched
339304
}
340305
}
341306

342307
return false
343308
}
344309

310+
func (s *instances) matchState(state dbmodel.InstanceState, op *internal.Operation) bool {
311+
switch state {
312+
case dbmodel.InstanceSucceeded:
313+
if op.State == domain.Succeeded && op.Type != internal.OperationTypeDeprovision {
314+
return true
315+
}
316+
case dbmodel.InstanceFailed:
317+
if op.State == domain.Failed && (op.Type == internal.OperationTypeProvision || op.Type == internal.OperationTypeDeprovision) {
318+
return true
319+
}
320+
case dbmodel.InstanceError:
321+
if op.State == domain.Failed && op.Type != internal.OperationTypeProvision && op.Type != internal.OperationTypeDeprovision {
322+
return true
323+
}
324+
case dbmodel.InstanceProvisioning:
325+
if op.Type == internal.OperationTypeProvision && op.State == domain.InProgress {
326+
return true
327+
}
328+
case dbmodel.InstanceDeprovisioning:
329+
if op.Type == internal.OperationTypeDeprovision && op.State == domain.InProgress {
330+
return true
331+
}
332+
case dbmodel.InstanceUpgrading:
333+
if op.Type == internal.OperationTypeUpgradeCluster && op.State == domain.InProgress {
334+
return true
335+
}
336+
case dbmodel.InstanceUpdating:
337+
if op.Type == internal.OperationTypeUpdate && op.State == domain.InProgress {
338+
return true
339+
}
340+
case dbmodel.InstanceDeprovisioned:
341+
if op.State == domain.Succeeded && op.Type == internal.OperationTypeDeprovision {
342+
return true
343+
}
344+
case dbmodel.InstanceNotDeprovisioned:
345+
if op.State != domain.Succeeded || op.Type != internal.OperationTypeDeprovision {
346+
return true
347+
}
348+
}
349+
return false
350+
}
351+
345352
func (s *instances) ListDeletedInstanceIDs(int) ([]string, error) {
346353
s.mu.Lock()
347354
defer s.mu.Unlock()

0 commit comments

Comments
 (0)