{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Network.AWS.OpsWorks.Types.Sum -- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- module Network.AWS.OpsWorks.Types.Sum where import Network.AWS.Prelude data AppAttributesKeys = AWSFlowRubySettings | AutoBundleOnDeploy | DocumentRoot | RailsEnv deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText AppAttributesKeys where parser = takeLowerText >>= \case "awsflowrubysettings" -> pure AWSFlowRubySettings "autobundleondeploy" -> pure AutoBundleOnDeploy "documentroot" -> pure DocumentRoot "railsenv" -> pure RailsEnv e -> fromTextError $ "Failure parsing AppAttributesKeys from value: '" <> e <> "'. Accepted values: awsflowrubysettings, autobundleondeploy, documentroot, railsenv" instance ToText AppAttributesKeys where toText = \case AWSFlowRubySettings -> "AwsFlowRubySettings" AutoBundleOnDeploy -> "AutoBundleOnDeploy" DocumentRoot -> "DocumentRoot" RailsEnv -> "RailsEnv" instance Hashable AppAttributesKeys instance NFData AppAttributesKeys instance ToByteString AppAttributesKeys instance ToQuery AppAttributesKeys instance ToHeader AppAttributesKeys instance ToJSON AppAttributesKeys where toJSON = toJSONText instance FromJSON AppAttributesKeys where parseJSON = parseJSONText "AppAttributesKeys" data AppType = ATAWSFlowRuby | ATJava | ATNodejs | ATOther | ATPHP | ATRails | ATStatic deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText AppType where parser = takeLowerText >>= \case "aws-flow-ruby" -> pure ATAWSFlowRuby "java" -> pure ATJava "nodejs" -> pure ATNodejs "other" -> pure ATOther "php" -> pure ATPHP "rails" -> pure ATRails "static" -> pure ATStatic e -> fromTextError $ "Failure parsing AppType from value: '" <> e <> "'. Accepted values: aws-flow-ruby, java, nodejs, other, php, rails, static" instance ToText AppType where toText = \case ATAWSFlowRuby -> "aws-flow-ruby" ATJava -> "java" ATNodejs -> "nodejs" ATOther -> "other" ATPHP -> "php" ATRails -> "rails" ATStatic -> "static" instance Hashable AppType instance NFData AppType instance ToByteString AppType instance ToQuery AppType instance ToHeader AppType instance ToJSON AppType where toJSON = toJSONText instance FromJSON AppType where parseJSON = parseJSONText "AppType" data Architecture = I386 | X86_64 deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText Architecture where parser = takeLowerText >>= \case "i386" -> pure I386 "x86_64" -> pure X86_64 e -> fromTextError $ "Failure parsing Architecture from value: '" <> e <> "'. Accepted values: i386, x86_64" instance ToText Architecture where toText = \case I386 -> "i386" X86_64 -> "x86_64" instance Hashable Architecture instance NFData Architecture instance ToByteString Architecture instance ToQuery Architecture instance ToHeader Architecture instance ToJSON Architecture where toJSON = toJSONText instance FromJSON Architecture where parseJSON = parseJSONText "Architecture" data AutoScalingType = Load | Timer deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText AutoScalingType where parser = takeLowerText >>= \case "load" -> pure Load "timer" -> pure Timer e -> fromTextError $ "Failure parsing AutoScalingType from value: '" <> e <> "'. Accepted values: load, timer" instance ToText AutoScalingType where toText = \case Load -> "load" Timer -> "timer" instance Hashable AutoScalingType instance NFData AutoScalingType instance ToByteString AutoScalingType instance ToQuery AutoScalingType instance ToHeader AutoScalingType instance ToJSON AutoScalingType where toJSON = toJSONText instance FromJSON AutoScalingType where parseJSON = parseJSONText "AutoScalingType" -- | Specifies the encoding of the log file so that the file can be read correctly. The default is @utf_8@ . Encodings supported by Python @codecs.decode()@ can be used here. -- -- data CloudWatchLogsEncoding = Ascii | BIG5 | Big5hkscs | CP037 | CP1006 | CP1026 | CP1140 | CP1250 | CP1251 | CP1252 | CP1253 | CP1254 | CP1255 | CP1256 | CP1257 | CP1258 | CP424 | CP437 | CP500 | CP720 | CP737 | CP775 | CP850 | CP852 | CP855 | CP856 | CP857 | CP858 | CP860 | CP861 | CP862 | CP863 | CP864 | CP865 | CP866 | CP869 | CP874 | CP875 | CP932 | CP949 | CP950 | EucJISX0213 | EucJis2004 | EucJp | EucKr | GB18030 | GB2312 | Gbk | HZ | ISO2022Jp | ISO2022Jp1 | ISO2022Jp2 | ISO2022Jp2004 | ISO2022Jp3 | ISO2022JpExt | ISO2022Kr | ISO885910 | ISO885913 | ISO885914 | ISO885915 | ISO885916 | ISO88592 | ISO88593 | ISO88594 | ISO88595 | ISO88596 | ISO88597 | ISO88598 | ISO88599 | Johab | KOI8r | KOI8u | Latin1 | MACCyrillic | MACGreek | MACIceland | MACLATIN2 | MACRoman | MACTurkish | PTCP154 | ShiftJISX0213 | ShiftJis | ShiftJis2004 | Utf16 | Utf16Be | Utf16Le | Utf32 | Utf32Be | Utf32Le | Utf7 | Utf8 | Utf8Sig deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText CloudWatchLogsEncoding where parser = takeLowerText >>= \case "ascii" -> pure Ascii "big5" -> pure BIG5 "big5hkscs" -> pure Big5hkscs "cp037" -> pure CP037 "cp1006" -> pure CP1006 "cp1026" -> pure CP1026 "cp1140" -> pure CP1140 "cp1250" -> pure CP1250 "cp1251" -> pure CP1251 "cp1252" -> pure CP1252 "cp1253" -> pure CP1253 "cp1254" -> pure CP1254 "cp1255" -> pure CP1255 "cp1256" -> pure CP1256 "cp1257" -> pure CP1257 "cp1258" -> pure CP1258 "cp424" -> pure CP424 "cp437" -> pure CP437 "cp500" -> pure CP500 "cp720" -> pure CP720 "cp737" -> pure CP737 "cp775" -> pure CP775 "cp850" -> pure CP850 "cp852" -> pure CP852 "cp855" -> pure CP855 "cp856" -> pure CP856 "cp857" -> pure CP857 "cp858" -> pure CP858 "cp860" -> pure CP860 "cp861" -> pure CP861 "cp862" -> pure CP862 "cp863" -> pure CP863 "cp864" -> pure CP864 "cp865" -> pure CP865 "cp866" -> pure CP866 "cp869" -> pure CP869 "cp874" -> pure CP874 "cp875" -> pure CP875 "cp932" -> pure CP932 "cp949" -> pure CP949 "cp950" -> pure CP950 "euc_jisx0213" -> pure EucJISX0213 "euc_jis_2004" -> pure EucJis2004 "euc_jp" -> pure EucJp "euc_kr" -> pure EucKr "gb18030" -> pure GB18030 "gb2312" -> pure GB2312 "gbk" -> pure Gbk "hz" -> pure HZ "iso2022_jp" -> pure ISO2022Jp "iso2022_jp_1" -> pure ISO2022Jp1 "iso2022_jp_2" -> pure ISO2022Jp2 "iso2022_jp_2004" -> pure ISO2022Jp2004 "iso2022_jp_3" -> pure ISO2022Jp3 "iso2022_jp_ext" -> pure ISO2022JpExt "iso2022_kr" -> pure ISO2022Kr "iso8859_10" -> pure ISO885910 "iso8859_13" -> pure ISO885913 "iso8859_14" -> pure ISO885914 "iso8859_15" -> pure ISO885915 "iso8859_16" -> pure ISO885916 "iso8859_2" -> pure ISO88592 "iso8859_3" -> pure ISO88593 "iso8859_4" -> pure ISO88594 "iso8859_5" -> pure ISO88595 "iso8859_6" -> pure ISO88596 "iso8859_7" -> pure ISO88597 "iso8859_8" -> pure ISO88598 "iso8859_9" -> pure ISO88599 "johab" -> pure Johab "koi8_r" -> pure KOI8r "koi8_u" -> pure KOI8u "latin_1" -> pure Latin1 "mac_cyrillic" -> pure MACCyrillic "mac_greek" -> pure MACGreek "mac_iceland" -> pure MACIceland "mac_latin2" -> pure MACLATIN2 "mac_roman" -> pure MACRoman "mac_turkish" -> pure MACTurkish "ptcp154" -> pure PTCP154 "shift_jisx0213" -> pure ShiftJISX0213 "shift_jis" -> pure ShiftJis "shift_jis_2004" -> pure ShiftJis2004 "utf_16" -> pure Utf16 "utf_16_be" -> pure Utf16Be "utf_16_le" -> pure Utf16Le "utf_32" -> pure Utf32 "utf_32_be" -> pure Utf32Be "utf_32_le" -> pure Utf32Le "utf_7" -> pure Utf7 "utf_8" -> pure Utf8 "utf_8_sig" -> pure Utf8Sig e -> fromTextError $ "Failure parsing CloudWatchLogsEncoding from value: '" <> e <> "'. Accepted values: ascii, big5, big5hkscs, cp037, cp1006, cp1026, cp1140, cp1250, cp1251, cp1252, cp1253, cp1254, cp1255, cp1256, cp1257, cp1258, cp424, cp437, cp500, cp720, cp737, cp775, cp850, cp852, cp855, cp856, cp857, cp858, cp860, cp861, cp862, cp863, cp864, cp865, cp866, cp869, cp874, cp875, cp932, cp949, cp950, euc_jisx0213, euc_jis_2004, euc_jp, euc_kr, gb18030, gb2312, gbk, hz, iso2022_jp, iso2022_jp_1, iso2022_jp_2, iso2022_jp_2004, iso2022_jp_3, iso2022_jp_ext, iso2022_kr, iso8859_10, iso8859_13, iso8859_14, iso8859_15, iso8859_16, iso8859_2, iso8859_3, iso8859_4, iso8859_5, iso8859_6, iso8859_7, iso8859_8, iso8859_9, johab, koi8_r, koi8_u, latin_1, mac_cyrillic, mac_greek, mac_iceland, mac_latin2, mac_roman, mac_turkish, ptcp154, shift_jisx0213, shift_jis, shift_jis_2004, utf_16, utf_16_be, utf_16_le, utf_32, utf_32_be, utf_32_le, utf_7, utf_8, utf_8_sig" instance ToText CloudWatchLogsEncoding where toText = \case Ascii -> "ascii" BIG5 -> "big5" Big5hkscs -> "big5hkscs" CP037 -> "cp037" CP1006 -> "cp1006" CP1026 -> "cp1026" CP1140 -> "cp1140" CP1250 -> "cp1250" CP1251 -> "cp1251" CP1252 -> "cp1252" CP1253 -> "cp1253" CP1254 -> "cp1254" CP1255 -> "cp1255" CP1256 -> "cp1256" CP1257 -> "cp1257" CP1258 -> "cp1258" CP424 -> "cp424" CP437 -> "cp437" CP500 -> "cp500" CP720 -> "cp720" CP737 -> "cp737" CP775 -> "cp775" CP850 -> "cp850" CP852 -> "cp852" CP855 -> "cp855" CP856 -> "cp856" CP857 -> "cp857" CP858 -> "cp858" CP860 -> "cp860" CP861 -> "cp861" CP862 -> "cp862" CP863 -> "cp863" CP864 -> "cp864" CP865 -> "cp865" CP866 -> "cp866" CP869 -> "cp869" CP874 -> "cp874" CP875 -> "cp875" CP932 -> "cp932" CP949 -> "cp949" CP950 -> "cp950" EucJISX0213 -> "euc_jisx0213" EucJis2004 -> "euc_jis_2004" EucJp -> "euc_jp" EucKr -> "euc_kr" GB18030 -> "gb18030" GB2312 -> "gb2312" Gbk -> "gbk" HZ -> "hz" ISO2022Jp -> "iso2022_jp" ISO2022Jp1 -> "iso2022_jp_1" ISO2022Jp2 -> "iso2022_jp_2" ISO2022Jp2004 -> "iso2022_jp_2004" ISO2022Jp3 -> "iso2022_jp_3" ISO2022JpExt -> "iso2022_jp_ext" ISO2022Kr -> "iso2022_kr" ISO885910 -> "iso8859_10" ISO885913 -> "iso8859_13" ISO885914 -> "iso8859_14" ISO885915 -> "iso8859_15" ISO885916 -> "iso8859_16" ISO88592 -> "iso8859_2" ISO88593 -> "iso8859_3" ISO88594 -> "iso8859_4" ISO88595 -> "iso8859_5" ISO88596 -> "iso8859_6" ISO88597 -> "iso8859_7" ISO88598 -> "iso8859_8" ISO88599 -> "iso8859_9" Johab -> "johab" KOI8r -> "koi8_r" KOI8u -> "koi8_u" Latin1 -> "latin_1" MACCyrillic -> "mac_cyrillic" MACGreek -> "mac_greek" MACIceland -> "mac_iceland" MACLATIN2 -> "mac_latin2" MACRoman -> "mac_roman" MACTurkish -> "mac_turkish" PTCP154 -> "ptcp154" ShiftJISX0213 -> "shift_jisx0213" ShiftJis -> "shift_jis" ShiftJis2004 -> "shift_jis_2004" Utf16 -> "utf_16" Utf16Be -> "utf_16_be" Utf16Le -> "utf_16_le" Utf32 -> "utf_32" Utf32Be -> "utf_32_be" Utf32Le -> "utf_32_le" Utf7 -> "utf_7" Utf8 -> "utf_8" Utf8Sig -> "utf_8_sig" instance Hashable CloudWatchLogsEncoding instance NFData CloudWatchLogsEncoding instance ToByteString CloudWatchLogsEncoding instance ToQuery CloudWatchLogsEncoding instance ToHeader CloudWatchLogsEncoding instance ToJSON CloudWatchLogsEncoding where toJSON = toJSONText instance FromJSON CloudWatchLogsEncoding where parseJSON = parseJSONText "CloudWatchLogsEncoding" -- | Specifies where to start to read data (start_of_file or end_of_file). The default is start_of_file. It's only used if there is no state persisted for that log stream. -- -- data CloudWatchLogsInitialPosition = EndOfFile | StartOfFile deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText CloudWatchLogsInitialPosition where parser = takeLowerText >>= \case "end_of_file" -> pure EndOfFile "start_of_file" -> pure StartOfFile e -> fromTextError $ "Failure parsing CloudWatchLogsInitialPosition from value: '" <> e <> "'. Accepted values: end_of_file, start_of_file" instance ToText CloudWatchLogsInitialPosition where toText = \case EndOfFile -> "end_of_file" StartOfFile -> "start_of_file" instance Hashable CloudWatchLogsInitialPosition instance NFData CloudWatchLogsInitialPosition instance ToByteString CloudWatchLogsInitialPosition instance ToQuery CloudWatchLogsInitialPosition instance ToHeader CloudWatchLogsInitialPosition instance ToJSON CloudWatchLogsInitialPosition where toJSON = toJSONText instance FromJSON CloudWatchLogsInitialPosition where parseJSON = parseJSONText "CloudWatchLogsInitialPosition" -- | The preferred time zone for logs streamed to CloudWatch Logs. Valid values are @LOCAL@ and @UTC@ , for Coordinated Universal Time. -- -- data CloudWatchLogsTimeZone = Local | Utc deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText CloudWatchLogsTimeZone where parser = takeLowerText >>= \case "local" -> pure Local "utc" -> pure Utc e -> fromTextError $ "Failure parsing CloudWatchLogsTimeZone from value: '" <> e <> "'. Accepted values: local, utc" instance ToText CloudWatchLogsTimeZone where toText = \case Local -> "LOCAL" Utc -> "UTC" instance Hashable CloudWatchLogsTimeZone instance NFData CloudWatchLogsTimeZone instance ToByteString CloudWatchLogsTimeZone instance ToQuery CloudWatchLogsTimeZone instance ToHeader CloudWatchLogsTimeZone instance ToJSON CloudWatchLogsTimeZone where toJSON = toJSONText instance FromJSON CloudWatchLogsTimeZone where parseJSON = parseJSONText "CloudWatchLogsTimeZone" data DeploymentCommandName = Configure | Deploy | ExecuteRecipes | InstallDependencies | Restart | Rollback | Setup | Start | Stop | Undeploy | UpdateCustomCookbooks | UpdateDependencies deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText DeploymentCommandName where parser = takeLowerText >>= \case "configure" -> pure Configure "deploy" -> pure Deploy "execute_recipes" -> pure ExecuteRecipes "install_dependencies" -> pure InstallDependencies "restart" -> pure Restart "rollback" -> pure Rollback "setup" -> pure Setup "start" -> pure Start "stop" -> pure Stop "undeploy" -> pure Undeploy "update_custom_cookbooks" -> pure UpdateCustomCookbooks "update_dependencies" -> pure UpdateDependencies e -> fromTextError $ "Failure parsing DeploymentCommandName from value: '" <> e <> "'. Accepted values: configure, deploy, execute_recipes, install_dependencies, restart, rollback, setup, start, stop, undeploy, update_custom_cookbooks, update_dependencies" instance ToText DeploymentCommandName where toText = \case Configure -> "configure" Deploy -> "deploy" ExecuteRecipes -> "execute_recipes" InstallDependencies -> "install_dependencies" Restart -> "restart" Rollback -> "rollback" Setup -> "setup" Start -> "start" Stop -> "stop" Undeploy -> "undeploy" UpdateCustomCookbooks -> "update_custom_cookbooks" UpdateDependencies -> "update_dependencies" instance Hashable DeploymentCommandName instance NFData DeploymentCommandName instance ToByteString DeploymentCommandName instance ToQuery DeploymentCommandName instance ToHeader DeploymentCommandName instance ToJSON DeploymentCommandName where toJSON = toJSONText instance FromJSON DeploymentCommandName where parseJSON = parseJSONText "DeploymentCommandName" data LayerAttributesKeys = BundlerVersion | EcsClusterARN | EnableHaproxyStats | GangliaPassword | GangliaURL | GangliaUser | HaproxyHealthCheckMethod | HaproxyHealthCheckURL | HaproxyStatsPassword | HaproxyStatsURL | HaproxyStatsUser | JVM | JVMOptions | JVMVersion | JavaAppServer | JavaAppServerVersion | ManageBundler | MemcachedMemory | MysqlRootPassword | MysqlRootPasswordUbiquitous | NodejsVersion | PassengerVersion | RailsStack | RubyVersion | RubygemsVersion deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText LayerAttributesKeys where parser = takeLowerText >>= \case "bundlerversion" -> pure BundlerVersion "ecsclusterarn" -> pure EcsClusterARN "enablehaproxystats" -> pure EnableHaproxyStats "gangliapassword" -> pure GangliaPassword "gangliaurl" -> pure GangliaURL "gangliauser" -> pure GangliaUser "haproxyhealthcheckmethod" -> pure HaproxyHealthCheckMethod "haproxyhealthcheckurl" -> pure HaproxyHealthCheckURL "haproxystatspassword" -> pure HaproxyStatsPassword "haproxystatsurl" -> pure HaproxyStatsURL "haproxystatsuser" -> pure HaproxyStatsUser "jvm" -> pure JVM "jvmoptions" -> pure JVMOptions "jvmversion" -> pure JVMVersion "javaappserver" -> pure JavaAppServer "javaappserverversion" -> pure JavaAppServerVersion "managebundler" -> pure ManageBundler "memcachedmemory" -> pure MemcachedMemory "mysqlrootpassword" -> pure MysqlRootPassword "mysqlrootpasswordubiquitous" -> pure MysqlRootPasswordUbiquitous "nodejsversion" -> pure NodejsVersion "passengerversion" -> pure PassengerVersion "railsstack" -> pure RailsStack "rubyversion" -> pure RubyVersion "rubygemsversion" -> pure RubygemsVersion e -> fromTextError $ "Failure parsing LayerAttributesKeys from value: '" <> e <> "'. Accepted values: bundlerversion, ecsclusterarn, enablehaproxystats, gangliapassword, gangliaurl, gangliauser, haproxyhealthcheckmethod, haproxyhealthcheckurl, haproxystatspassword, haproxystatsurl, haproxystatsuser, jvm, jvmoptions, jvmversion, javaappserver, javaappserverversion, managebundler, memcachedmemory, mysqlrootpassword, mysqlrootpasswordubiquitous, nodejsversion, passengerversion, railsstack, rubyversion, rubygemsversion" instance ToText LayerAttributesKeys where toText = \case BundlerVersion -> "BundlerVersion" EcsClusterARN -> "EcsClusterArn" EnableHaproxyStats -> "EnableHaproxyStats" GangliaPassword -> "GangliaPassword" GangliaURL -> "GangliaUrl" GangliaUser -> "GangliaUser" HaproxyHealthCheckMethod -> "HaproxyHealthCheckMethod" HaproxyHealthCheckURL -> "HaproxyHealthCheckUrl" HaproxyStatsPassword -> "HaproxyStatsPassword" HaproxyStatsURL -> "HaproxyStatsUrl" HaproxyStatsUser -> "HaproxyStatsUser" JVM -> "Jvm" JVMOptions -> "JvmOptions" JVMVersion -> "JvmVersion" JavaAppServer -> "JavaAppServer" JavaAppServerVersion -> "JavaAppServerVersion" ManageBundler -> "ManageBundler" MemcachedMemory -> "MemcachedMemory" MysqlRootPassword -> "MysqlRootPassword" MysqlRootPasswordUbiquitous -> "MysqlRootPasswordUbiquitous" NodejsVersion -> "NodejsVersion" PassengerVersion -> "PassengerVersion" RailsStack -> "RailsStack" RubyVersion -> "RubyVersion" RubygemsVersion -> "RubygemsVersion" instance Hashable LayerAttributesKeys instance NFData LayerAttributesKeys instance ToByteString LayerAttributesKeys instance ToQuery LayerAttributesKeys instance ToHeader LayerAttributesKeys instance ToJSON LayerAttributesKeys where toJSON = toJSONText instance FromJSON LayerAttributesKeys where parseJSON = parseJSONText "LayerAttributesKeys" data LayerType = AWSFlowRuby | Custom | DBMaster | EcsCluster | JavaApp | LB | Memcached | MonitoringMaster | NodejsApp | PHPApp | RailsApp | Web deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText LayerType where parser = takeLowerText >>= \case "aws-flow-ruby" -> pure AWSFlowRuby "custom" -> pure Custom "db-master" -> pure DBMaster "ecs-cluster" -> pure EcsCluster "java-app" -> pure JavaApp "lb" -> pure LB "memcached" -> pure Memcached "monitoring-master" -> pure MonitoringMaster "nodejs-app" -> pure NodejsApp "php-app" -> pure PHPApp "rails-app" -> pure RailsApp "web" -> pure Web e -> fromTextError $ "Failure parsing LayerType from value: '" <> e <> "'. Accepted values: aws-flow-ruby, custom, db-master, ecs-cluster, java-app, lb, memcached, monitoring-master, nodejs-app, php-app, rails-app, web" instance ToText LayerType where toText = \case AWSFlowRuby -> "aws-flow-ruby" Custom -> "custom" DBMaster -> "db-master" EcsCluster -> "ecs-cluster" JavaApp -> "java-app" LB -> "lb" Memcached -> "memcached" MonitoringMaster -> "monitoring-master" NodejsApp -> "nodejs-app" PHPApp -> "php-app" RailsApp -> "rails-app" Web -> "web" instance Hashable LayerType instance NFData LayerType instance ToByteString LayerType instance ToQuery LayerType instance ToHeader LayerType instance ToJSON LayerType where toJSON = toJSONText instance FromJSON LayerType where parseJSON = parseJSONText "LayerType" data RootDeviceType = EBS | InstanceStore deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText RootDeviceType where parser = takeLowerText >>= \case "ebs" -> pure EBS "instance-store" -> pure InstanceStore e -> fromTextError $ "Failure parsing RootDeviceType from value: '" <> e <> "'. Accepted values: ebs, instance-store" instance ToText RootDeviceType where toText = \case EBS -> "ebs" InstanceStore -> "instance-store" instance Hashable RootDeviceType instance NFData RootDeviceType instance ToByteString RootDeviceType instance ToQuery RootDeviceType instance ToHeader RootDeviceType instance ToJSON RootDeviceType where toJSON = toJSONText instance FromJSON RootDeviceType where parseJSON = parseJSONText "RootDeviceType" data SourceType = Archive | Git | S3 | SVN deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText SourceType where parser = takeLowerText >>= \case "archive" -> pure Archive "git" -> pure Git "s3" -> pure S3 "svn" -> pure SVN e -> fromTextError $ "Failure parsing SourceType from value: '" <> e <> "'. Accepted values: archive, git, s3, svn" instance ToText SourceType where toText = \case Archive -> "archive" Git -> "git" S3 -> "s3" SVN -> "svn" instance Hashable SourceType instance NFData SourceType instance ToByteString SourceType instance ToQuery SourceType instance ToHeader SourceType instance ToJSON SourceType where toJSON = toJSONText instance FromJSON SourceType where parseJSON = parseJSONText "SourceType" data StackAttributesKeys = Color deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText StackAttributesKeys where parser = takeLowerText >>= \case "color" -> pure Color e -> fromTextError $ "Failure parsing StackAttributesKeys from value: '" <> e <> "'. Accepted values: color" instance ToText StackAttributesKeys where toText = \case Color -> "Color" instance Hashable StackAttributesKeys instance NFData StackAttributesKeys instance ToByteString StackAttributesKeys instance ToQuery StackAttributesKeys instance ToHeader StackAttributesKeys instance ToJSON StackAttributesKeys where toJSON = toJSONText instance FromJSON StackAttributesKeys where parseJSON = parseJSONText "StackAttributesKeys" data VirtualizationType = HVM | Paravirtual deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText VirtualizationType where parser = takeLowerText >>= \case "hvm" -> pure HVM "paravirtual" -> pure Paravirtual e -> fromTextError $ "Failure parsing VirtualizationType from value: '" <> e <> "'. Accepted values: hvm, paravirtual" instance ToText VirtualizationType where toText = \case HVM -> "hvm" Paravirtual -> "paravirtual" instance Hashable VirtualizationType instance NFData VirtualizationType instance ToByteString VirtualizationType instance ToQuery VirtualizationType instance ToHeader VirtualizationType instance FromJSON VirtualizationType where parseJSON = parseJSONText "VirtualizationType" data VolumeType = GP2 | IO1 | Standard deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText VolumeType where parser = takeLowerText >>= \case "gp2" -> pure GP2 "io1" -> pure IO1 "standard" -> pure Standard e -> fromTextError $ "Failure parsing VolumeType from value: '" <> e <> "'. Accepted values: gp2, io1, standard" instance ToText VolumeType where toText = \case GP2 -> "gp2" IO1 -> "io1" Standard -> "standard" instance Hashable VolumeType instance NFData VolumeType instance ToByteString VolumeType instance ToQuery VolumeType instance ToHeader VolumeType instance ToJSON VolumeType where toJSON = toJSONText instance FromJSON VolumeType where parseJSON = parseJSONText "VolumeType"