# coding=utf-8
# *** WARNING: this file was generated by the Pulumi SDK Generator. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

from enum import Enum

__all__ = [
    'AddonType',
    'AffinityStrength',
    'AffinityType',
    'AvailabilityStrategy',
    'AzureHybridBenefitType',
    'DhcpTypeEnum',
    'DnsServiceLogLevelEnum',
    'EncryptionState',
    'InternetEnum',
    'MountOptionEnum',
    'PlacementPolicyState',
    'PlacementPolicyType',
    'PortMirroringDirectionEnum',
    'ResourceIdentityType',
    'ScriptExecutionParameterType',
    'SslEnum',
]


class AddonType(str, Enum):
    """
    The type of private cloud addon
    """
    SRM = "SRM"
    VR = "VR"
    HCX = "HCX"
    ARC = "Arc"


class AffinityStrength(str, Enum):
    """
    vm-host placement policy affinity strength (should/must)
    """
    SHOULD = "Should"
    MUST = "Must"


class AffinityType(str, Enum):
    """
    placement policy affinity type
    """
    AFFINITY = "Affinity"
    ANTI_AFFINITY = "AntiAffinity"


class AvailabilityStrategy(str, Enum):
    """
    The availability strategy for the private cloud
    """
    SINGLE_ZONE = "SingleZone"
    DUAL_ZONE = "DualZone"


class AzureHybridBenefitType(str, Enum):
    """
    placement policy azure hybrid benefit opt-in type
    """
    SQL_HOST = "SqlHost"
    NONE = "None"


class DhcpTypeEnum(str, Enum):
    """
    Type of DHCP: SERVER or RELAY.
    """
    SERVER = "SERVER"
    RELAY = "RELAY"


class DnsServiceLogLevelEnum(str, Enum):
    """
    DNS Service log level.
    """
    DEBUG = "DEBUG"
    INFO = "INFO"
    WARNING = "WARNING"
    ERROR = "ERROR"
    FATAL = "FATAL"


class EncryptionState(str, Enum):
    """
    Status of customer managed encryption key
    """
    ENABLED = "Enabled"
    DISABLED = "Disabled"


class InternetEnum(str, Enum):
    """
    Connectivity to internet is enabled or disabled
    """
    ENABLED = "Enabled"
    DISABLED = "Disabled"


class MountOptionEnum(str, Enum):
    """
    Mode that describes whether the LUN has to be mounted as a datastore or attached as a LUN
    """
    MOUNT = "MOUNT"
    ATTACH = "ATTACH"


class PlacementPolicyState(str, Enum):
    """
    Whether the placement policy is enabled or disabled
    """
    ENABLED = "Enabled"
    DISABLED = "Disabled"


class PlacementPolicyType(str, Enum):
    """
    placement policy type
    """
    VM_VM = "VmVm"
    VM_HOST = "VmHost"


class PortMirroringDirectionEnum(str, Enum):
    """
    Direction of port mirroring profile.
    """
    INGRESS = "INGRESS"
    EGRESS = "EGRESS"
    BIDIRECTIONAL = "BIDIRECTIONAL"


class ResourceIdentityType(str, Enum):
    """
    The type of identity used for the private cloud. The type 'SystemAssigned' refers to an implicitly created identity. The type 'None' will remove any identities from the Private Cloud.
    """
    SYSTEM_ASSIGNED = "SystemAssigned"
    NONE = "None"


class ScriptExecutionParameterType(str, Enum):
    """
    The type of execution parameter
    """
    VALUE = "Value"
    SECURE_VALUE = "SecureValue"
    CREDENTIAL = "Credential"


class SslEnum(str, Enum):
    """
    Protect LDAP communication using SSL certificate (LDAPS)
    """
    ENABLED = "Enabled"
    DISABLED = "Disabled"
