Skip to content

Commit 36dc8cd

Browse files
Generate Strawberry filter enums from ChoiceSets (#18676)
* Add as_num() method to ChoiceSet * Update circuits enums * Update DCIM enums * Update extras enums * Update IPAM enums * Add tenancy enums * Update virtualization enums * Update VPN enums * Update wireless enums * Update netbox enums * Permit TenantType.group to be null
1 parent f1d7ad8 commit 36dc8cd

File tree

13 files changed

+214
-1755
lines changed

13 files changed

+214
-1755
lines changed

netbox/circuits/graphql/enums.py

Lines changed: 10 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -1,86 +1,20 @@
1-
from enum import Enum
21
import strawberry
32

4-
__all__ = [
3+
from circuits.choices import *
4+
5+
__all__ = (
56
'CircuitStatusEnum',
67
'CircuitCommitRateEnum',
78
'CircuitTerminationSideEnum',
89
'CircuitTerminationPortSpeedEnum',
910
'CircuitPriorityEnum',
1011
'VirtualCircuitTerminationRoleEnum',
11-
]
12-
13-
#
14-
# Circuits
15-
#
16-
17-
18-
@strawberry.enum
19-
class CircuitStatusEnum(Enum):
20-
STATUS_DEPROVISIONING = 'deprovisioning'
21-
STATUS_ACTIVE = 'active'
22-
STATUS_PLANNED = 'planned'
23-
STATUS_PROVISIONING = 'provisioning'
24-
STATUS_OFFLINE = 'offline'
25-
STATUS_DECOMMISSIONED = 'decommissioned'
26-
27-
28-
@strawberry.enum
29-
class CircuitCommitRateEnum(Enum):
30-
TEN_MBPS = 10000
31-
HUNDRED_MBPS = 100000
32-
ONE_GBPS = 1000000
33-
TEN_GBPS = 10000000
34-
TWENTY_FIVE_GBPS = 25000000
35-
FORTY_GBPS = 40000000
36-
HUNDRED_GBPS = 100000000
37-
TWO_HUNDRED_GBPS = 200000000
38-
FOUR_HUNDRED_GBPS = 400000000
39-
T1 = 1544
40-
E1 = 2048
41-
42-
43-
#
44-
# CircuitTerminations
45-
#
46-
47-
48-
@strawberry.enum
49-
class CircuitTerminationSideEnum(Enum):
50-
SIDE_A = 'A'
51-
SIDE_Z = 'Z'
52-
53-
54-
@strawberry.enum
55-
class CircuitTerminationPortSpeedEnum(Enum):
56-
TEN_MBPS = 10000
57-
HUNDRED_MBPS = 100000
58-
ONE_GBPS = 1000000
59-
TEN_GBPS = 10000000
60-
TWENTY_FIVE_GBPS = 25000000
61-
FORTY_GBPS = 40000000
62-
HUNDRED_GBPS = 100000000
63-
TWO_HUNDRED_GBPS = 200000000
64-
FOUR_HUNDRED_GBPS = 400000000
65-
T1 = 1544
66-
E1 = 2048
67-
68-
69-
@strawberry.enum
70-
class CircuitPriorityEnum(Enum):
71-
PRIORITY_PRIMARY = 'primary'
72-
PRIORITY_SECONDARY = 'secondary'
73-
PRIORITY_TERTIARY = 'tertiary'
74-
PRIORITY_INACTIVE = 'inactive'
75-
76-
77-
#
78-
# Virtual circuits
79-
#
12+
)
8013

8114

82-
@strawberry.enum
83-
class VirtualCircuitTerminationRoleEnum(Enum):
84-
ROLE_PEER = 'peer'
85-
ROLE_HUB = 'hub'
86-
ROLE_SPOKE = 'spoke'
15+
CircuitCommitRateEnum = strawberry.enum(CircuitCommitRateChoices.as_enum())
16+
CircuitPriorityEnum = strawberry.enum(CircuitPriorityChoices.as_enum())
17+
CircuitStatusEnum = strawberry.enum(CircuitStatusChoices.as_enum())
18+
CircuitTerminationSideEnum = strawberry.enum(CircuitTerminationSideChoices.as_enum())
19+
CircuitTerminationPortSpeedEnum = strawberry.enum(CircuitTerminationPortSpeedChoices.as_enum())
20+
VirtualCircuitTerminationRoleEnum = strawberry.enum(VirtualCircuitTerminationRoleChoices.as_enum())

0 commit comments

Comments
 (0)