Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion linode_api4/objects/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from .dbase import DerivedBase
from .serializable import JSONObject
from .filtering import and_, or_
from .region import Region
from .region import Region, Capability
from .image import Image
from .linode import *
from .linode_interfaces import *
Expand Down
60 changes: 60 additions & 0 deletions linode_api4/objects/region.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,66 @@

from linode_api4.errors import UnexpectedResponseError
from linode_api4.objects.base import Base, JSONObject, Property
from linode_api4.objects.serializable import StrEnum


class Capability(StrEnum):
"""
An enum class representing the capabilities that Linode offers
Comment thread
mgwoj marked this conversation as resolved.
Outdated
across different regions and services.

These capabilities indicate what services are available in each data center.
"""

ACLB = "Akamai Cloud Load Balancer"
ACLP = "Akamai Cloud Pulse"
ACLPStreams = "Akamai Cloud Pulse Streams"
AkamaiRAMProtection = "Akamai RAM Protection"
Backups = "Backups"
BareMetal = "Bare Metal"
Comment thread
dawiddzhafarov marked this conversation as resolved.
Outdated
BlockStorage = "Block Storage"
BlockStorageEncryption = "Block Storage Encryption"
BlockStorageMigrations = "Block Storage Migrations"
BlockStoragePerformanceB1 = "Block Storage Performance B1"
BlockStoragePerformanceB1Default = "Block Storage Performance B1 Default"
CloudFirewall = "Cloud Firewall"
CloudFirewallRuleSet = "Cloud Firewall Rule Set"
CloudNAT = "Cloud NAT"
DBAAS = "Managed Databases"
DBAASBeta = "Managed Databases Beta"
DiskEncryption = "Disk Encryption"
DistributedPlans = "Distributed Plans"
EdgePlans = "Edge Plans"
GPU = "GPU Linodes"
KubernetesEnterprise = "Kubernetes Enterprise"
KubernetesEnterpriseBYOVPC = "Kubernetes Enterprise BYO VPC"
KubernetesEnterpriseDualStack = "Kubernetes Enterprise Dual Stack"
LADiskEncryption = "LA Disk Encryption"
LinodeInterfaces = "Linode Interfaces"
Linodes = "Linodes"
LKE = "Kubernetes"
LKEControlPlaneACL = "LKE Network Access Control List (IP ACL)"
LKEHAControlPlanes = "LKE HA Control Planes"
MachineImages = "Machine Images"
MaintenancePolicy = "Maintenance Policy"
Metadata = "Metadata"
NLB = "Network LoadBalancer"
NodeBalancers = "NodeBalancers"
ObjectStorage = "Object Storage"
ObjectStorageAccessKeyRegions = "Object Storage Access Key Regions"
ObjectStorageEndpointTypes = "Object Storage Endpoint Types"
PlacementGroup = "Placement Group"
PremiumPlans = "Premium Plans"
QuadraT1UVPU = "NETINT Quadra T1U"
SMTPEnabled = "SMTP Enabled"
StackScripts = "StackScripts"
SupportTicketSeverity = "Support Ticket Severity"
Vlans = "Vlans"
VPCs = "VPCs"
VPCDualStack = "VPC Dual Stack"
VPCIPv6Stack = "VPC IPv6 Stack"
VPCIPv6LargePrefixes = "VPC IPv6 Large Prefixes"
VPCsExtra = "VPCs Extra"


@dataclass
Expand Down