-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Amazon Elastic Beanstalk SDK.
--   
--   The types from this library are intended to be used with
--   <a>amazonka</a>, which provides mechanisms for specifying AuthN/AuthZ
--   information, sending requests, and receiving responses.
--   
--   Lenses are used for constructing and manipulating types, due to the
--   depth of nesting of AWS types and transparency regarding
--   de/serialisation into more palatable Haskell values. The provided
--   lenses should be compatible with any of the major lens libraries such
--   as <a>lens</a> or <a>lens-family-core</a>.
--   
--   See <a>Network.AWS.ElasticBeanstalk</a> or <a>the AWS
--   documentation</a> to get started.
@package amazonka-elasticbeanstalk
@version 1.6.0


module Network.AWS.ElasticBeanstalk.Types

-- | API version <tt>2010-12-01</tt> of the Amazon Elastic Beanstalk SDK
--   configuration.
elasticBeanstalk :: Service

-- | One or more input parameters is not valid. Please correct the input
--   parameters and try the operation again.
_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of Amazon S3 buckets.
_TooManyBucketsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account does not have a subscription to Amazon S3.
_S3SubscriptionRequiredException :: AsError a => Getting (First ServiceError) a ServiceError

-- | Unable to perform the specified operation because another operation
--   that effects an element in this activity is already in progress.
_OperationInProgressException :: AsError a => Getting (First ServiceError) a ServiceError

-- | You cannot delete the platform version because there are still
--   environments running on it.
_PlatformVersionStillReferencedException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of application versions.
_TooManyApplicationVersionsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of configuration
--   templates.
_TooManyConfigurationTemplatesException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The type of the specified Amazon Resource Name (ARN) isn't supported
--   for this operation.
_ResourceTypeNotSupportedException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account does not have sufficient privileges for one or
--   more AWS services.
_InsufficientPrivilegesException :: AsError a => Getting (First ServiceError) a ServiceError

-- | A generic service exception has occurred.
_ElasticBeanstalkServiceException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The number of tags in the resource would exceed the number of tags
--   that each resource can have.
--   
--   To calculate this, the operation considers both the number of tags the
--   resource already has and the tags this operation would add if it
--   succeeded.
_TooManyTagsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of applications.
_TooManyApplicationsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | You have exceeded the maximum number of allowed platforms associated
--   with the account.
_TooManyPlatformsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | Cannot modify the managed action in its current state.
_ManagedActionInvalidStateException :: AsError a => Getting (First ServiceError) a ServiceError

-- | Unable to delete the Amazon S3 source bundle associated with the
--   application version. The application version was deleted successfully.
_SourceBundleDeletionException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified S3 bucket does not belong to the S3 region in which the
--   service is running. The following regions are supported:
--   
--   <ul>
--   <li>IAD/us-east-1</li>
--   <li>PDX/us-west-2</li>
--   <li>DUB/eu-west-1</li>
--   </ul>
_S3LocationNotInServiceRegionException :: AsError a => Getting (First ServiceError) a ServiceError

-- | AWS CodeBuild is not available in the specified region.
_CodeBuildNotInServiceRegionException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of environments.
_TooManyEnvironmentsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | A resource doesn't exist for the specified Amazon Resource Name (ARN).
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
data ActionHistoryStatus
AHSCompleted :: ActionHistoryStatus
AHSFailed :: ActionHistoryStatus
AHSUnknown :: ActionHistoryStatus
data ActionStatus
ASPending :: ActionStatus
ASRunning :: ActionStatus
ASScheduled :: ActionStatus
ASUnknown :: ActionStatus
data ActionType
InstanceRefresh :: ActionType
PlatformUpdate :: ActionType
Unknown :: ActionType
data ApplicationVersionStatus
AVSBuilding :: ApplicationVersionStatus
AVSFailed :: ApplicationVersionStatus
AVSProcessed :: ApplicationVersionStatus
AVSProcessing :: ApplicationVersionStatus
AVSUnprocessed :: ApplicationVersionStatus
data ComputeType
BuildGENERAL1Large :: ComputeType
BuildGENERAL1Medium :: ComputeType
BuildGENERAL1Small :: ComputeType
data ConfigurationDeploymentStatus
CDSDeployed :: ConfigurationDeploymentStatus
CDSFailed :: ConfigurationDeploymentStatus
CDSPending :: ConfigurationDeploymentStatus
data ConfigurationOptionValueType
List :: ConfigurationOptionValueType
Scalar :: ConfigurationOptionValueType
data EnvironmentHealth
Green :: EnvironmentHealth
Grey :: EnvironmentHealth
Red :: EnvironmentHealth
Yellow :: EnvironmentHealth
data EnvironmentHealthAttribute
EHAAll :: EnvironmentHealthAttribute
EHAApplicationMetrics :: EnvironmentHealthAttribute
EHACauses :: EnvironmentHealthAttribute
EHAColor :: EnvironmentHealthAttribute
EHAHealthStatus :: EnvironmentHealthAttribute
EHAInstancesHealth :: EnvironmentHealthAttribute
EHARefreshedAt :: EnvironmentHealthAttribute
EHAStatus :: EnvironmentHealthAttribute
data EnvironmentHealthStatus
EHSDegraded :: EnvironmentHealthStatus
EHSInfo :: EnvironmentHealthStatus
EHSNoData :: EnvironmentHealthStatus
EHSOK :: EnvironmentHealthStatus
EHSPending :: EnvironmentHealthStatus
EHSSevere :: EnvironmentHealthStatus
EHSUnknown :: EnvironmentHealthStatus
EHSWarning :: EnvironmentHealthStatus
data EnvironmentInfoType
Bundle :: EnvironmentInfoType
Tail :: EnvironmentInfoType
data EnvironmentStatus
ESLaunching :: EnvironmentStatus
ESReady :: EnvironmentStatus
ESTerminated :: EnvironmentStatus
ESTerminating :: EnvironmentStatus
ESUpdating :: EnvironmentStatus
data EventSeverity
LevelDebug :: EventSeverity
LevelError' :: EventSeverity
LevelFatal :: EventSeverity
LevelInfo :: EventSeverity
LevelTrace :: EventSeverity
LevelWarn :: EventSeverity
data FailureType
CancellationFailed :: FailureType
InternalFailure :: FailureType
InvalidEnvironmentState :: FailureType
PermissionsError :: FailureType
RollbackFailed :: FailureType
RollbackSuccessful :: FailureType
UpdateCancelled :: FailureType
data InstancesHealthAttribute
All :: InstancesHealthAttribute
ApplicationMetrics :: InstancesHealthAttribute
AvailabilityZone :: InstancesHealthAttribute
Causes :: InstancesHealthAttribute
Color :: InstancesHealthAttribute
Deployment :: InstancesHealthAttribute
HealthStatus :: InstancesHealthAttribute
InstanceType :: InstancesHealthAttribute
LaunchedAt :: InstancesHealthAttribute
RefreshedAt :: InstancesHealthAttribute
System :: InstancesHealthAttribute
data PlatformStatus
Creating :: PlatformStatus
Deleted :: PlatformStatus
Deleting :: PlatformStatus
Failed :: PlatformStatus
Ready :: PlatformStatus
data SourceRepository
CodeCommit :: SourceRepository
S3 :: SourceRepository
data SourceType
Git :: SourceType
Zip :: SourceType
data ValidationSeverity
Error' :: ValidationSeverity
Warning :: ValidationSeverity

-- | Describes the properties of an application.
--   
--   <i>See:</i> <a>applicationDescription</a> smart constructor.
data ApplicationDescription

-- | Creates a value of <a>ApplicationDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>adApplicationARN</a> - The Amazon Resource Name (ARN) of the
--   application.</li>
--   <li><a>adVersions</a> - The names of the versions for this
--   application.</li>
--   <li><a>adDateUpdated</a> - The date when the application was last
--   modified.</li>
--   <li><a>adDateCreated</a> - The date when the application was
--   created.</li>
--   <li><a>adApplicationName</a> - The name of the application.</li>
--   <li><a>adConfigurationTemplates</a> - The names of the configuration
--   templates associated with this application.</li>
--   <li><a>adResourceLifecycleConfig</a> - The lifecycle settings for the
--   application.</li>
--   <li><a>adDescription</a> - User-defined description of the
--   application.</li>
--   </ul>
applicationDescription :: ApplicationDescription

-- | The Amazon Resource Name (ARN) of the application.
adApplicationARN :: Lens' ApplicationDescription (Maybe Text)

-- | The names of the versions for this application.
adVersions :: Lens' ApplicationDescription [Text]

-- | The date when the application was last modified.
adDateUpdated :: Lens' ApplicationDescription (Maybe UTCTime)

-- | The date when the application was created.
adDateCreated :: Lens' ApplicationDescription (Maybe UTCTime)

-- | The name of the application.
adApplicationName :: Lens' ApplicationDescription (Maybe Text)

-- | The names of the configuration templates associated with this
--   application.
adConfigurationTemplates :: Lens' ApplicationDescription [Text]

-- | The lifecycle settings for the application.
adResourceLifecycleConfig :: Lens' ApplicationDescription (Maybe ApplicationResourceLifecycleConfig)

-- | User-defined description of the application.
adDescription :: Lens' ApplicationDescription (Maybe Text)

-- | Result message containing a single description of an application.
--   
--   <i>See:</i> <a>applicationDescriptionMessage</a> smart constructor.
data ApplicationDescriptionMessage

-- | Creates a value of <a>ApplicationDescriptionMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>admApplication</a> - The <a>ApplicationDescription</a> of the
--   application.</li>
--   </ul>
applicationDescriptionMessage :: ApplicationDescriptionMessage

-- | The <a>ApplicationDescription</a> of the application.
admApplication :: Lens' ApplicationDescriptionMessage (Maybe ApplicationDescription)

-- | Application request metrics for an AWS Elastic Beanstalk environment.
--   
--   <i>See:</i> <a>applicationMetrics</a> smart constructor.
data ApplicationMetrics

-- | Creates a value of <a>ApplicationMetrics</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>amRequestCount</a> - Average number of requests handled by the
--   web server per second over the last 10 seconds.</li>
--   <li><a>amLatency</a> - Represents the average latency for the slowest
--   X percent of requests over the last 10 seconds. Latencies are in
--   seconds with one millisecond resolution.</li>
--   <li><a>amStatusCodes</a> - Represents the percentage of requests over
--   the last 10 seconds that resulted in each type of status code
--   response.</li>
--   <li><a>amDuration</a> - The amount of time that the metrics cover
--   (usually 10 seconds). For example, you might have 5 requests
--   (<tt>request_count</tt> ) within the most recent time slice of 10
--   seconds (<tt>duration</tt> ).</li>
--   </ul>
applicationMetrics :: ApplicationMetrics

-- | Average number of requests handled by the web server per second over
--   the last 10 seconds.
amRequestCount :: Lens' ApplicationMetrics (Maybe Int)

-- | Represents the average latency for the slowest X percent of requests
--   over the last 10 seconds. Latencies are in seconds with one
--   millisecond resolution.
amLatency :: Lens' ApplicationMetrics (Maybe Latency)

-- | Represents the percentage of requests over the last 10 seconds that
--   resulted in each type of status code response.
amStatusCodes :: Lens' ApplicationMetrics (Maybe StatusCodes)

-- | The amount of time that the metrics cover (usually 10 seconds). For
--   example, you might have 5 requests (<tt>request_count</tt> ) within
--   the most recent time slice of 10 seconds (<tt>duration</tt> ).
amDuration :: Lens' ApplicationMetrics (Maybe Int)

-- | The resource lifecycle configuration for an application. Defines
--   lifecycle settings for resources that belong to the application, and
--   the service role that Elastic Beanstalk assumes in order to apply
--   lifecycle settings. The version lifecycle configuration defines
--   lifecycle settings for application versions.
--   
--   <i>See:</i> <a>applicationResourceLifecycleConfig</a> smart
--   constructor.
data ApplicationResourceLifecycleConfig

-- | Creates a value of <a>ApplicationResourceLifecycleConfig</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>arlcVersionLifecycleConfig</a> - The application version
--   lifecycle configuration.</li>
--   <li><a>arlcServiceRole</a> - The ARN of an IAM service role that
--   Elastic Beanstalk has permission to assume.</li>
--   </ul>
applicationResourceLifecycleConfig :: ApplicationResourceLifecycleConfig

-- | The application version lifecycle configuration.
arlcVersionLifecycleConfig :: Lens' ApplicationResourceLifecycleConfig (Maybe ApplicationVersionLifecycleConfig)

-- | The ARN of an IAM service role that Elastic Beanstalk has permission
--   to assume.
arlcServiceRole :: Lens' ApplicationResourceLifecycleConfig (Maybe Text)

-- | Describes the properties of an application version.
--   
--   <i>See:</i> <a>applicationVersionDescription</a> smart constructor.
data ApplicationVersionDescription

-- | Creates a value of <a>ApplicationVersionDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avdStatus</a> - The processing status of the application
--   version.</li>
--   <li><a>avdSourceBundle</a> - The storage location of the application
--   version's source bundle in Amazon S3.</li>
--   <li><a>avdDateUpdated</a> - The last modified date of the application
--   version.</li>
--   <li><a>avdDateCreated</a> - The creation date of the application
--   version.</li>
--   <li><a>avdVersionLabel</a> - A unique identifier for the application
--   version.</li>
--   <li><a>avdSourceBuildInformation</a> - If the version's source code
--   was retrieved from AWS CodeCommit, the location of the source code for
--   the application version.</li>
--   <li><a>avdApplicationName</a> - The name of the application to which
--   the application version belongs.</li>
--   <li><a>avdApplicationVersionARN</a> - The Amazon Resource Name (ARN)
--   of the application version.</li>
--   <li><a>avdBuildARN</a> - Reference to the artifact from the AWS
--   CodeBuild build.</li>
--   <li><a>avdDescription</a> - The description of the application
--   version.</li>
--   </ul>
applicationVersionDescription :: ApplicationVersionDescription

-- | The processing status of the application version.
avdStatus :: Lens' ApplicationVersionDescription (Maybe ApplicationVersionStatus)

-- | The storage location of the application version's source bundle in
--   Amazon S3.
avdSourceBundle :: Lens' ApplicationVersionDescription (Maybe S3Location)

-- | The last modified date of the application version.
avdDateUpdated :: Lens' ApplicationVersionDescription (Maybe UTCTime)

-- | The creation date of the application version.
avdDateCreated :: Lens' ApplicationVersionDescription (Maybe UTCTime)

-- | A unique identifier for the application version.
avdVersionLabel :: Lens' ApplicationVersionDescription (Maybe Text)

-- | If the version's source code was retrieved from AWS CodeCommit, the
--   location of the source code for the application version.
avdSourceBuildInformation :: Lens' ApplicationVersionDescription (Maybe SourceBuildInformation)

-- | The name of the application to which the application version belongs.
avdApplicationName :: Lens' ApplicationVersionDescription (Maybe Text)

-- | The Amazon Resource Name (ARN) of the application version.
avdApplicationVersionARN :: Lens' ApplicationVersionDescription (Maybe Text)

-- | Reference to the artifact from the AWS CodeBuild build.
avdBuildARN :: Lens' ApplicationVersionDescription (Maybe Text)

-- | The description of the application version.
avdDescription :: Lens' ApplicationVersionDescription (Maybe Text)

-- | Result message wrapping a single description of an application
--   version.
--   
--   <i>See:</i> <a>applicationVersionDescriptionMessage</a> smart
--   constructor.
data ApplicationVersionDescriptionMessage

-- | Creates a value of <a>ApplicationVersionDescriptionMessage</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avdmApplicationVersion</a> - The
--   <a>ApplicationVersionDescription</a> of the application version.</li>
--   </ul>
applicationVersionDescriptionMessage :: ApplicationVersionDescriptionMessage

-- | The <a>ApplicationVersionDescription</a> of the application version.
avdmApplicationVersion :: Lens' ApplicationVersionDescriptionMessage (Maybe ApplicationVersionDescription)

-- | The application version lifecycle settings for an application. Defines
--   the rules that Elastic Beanstalk applies to an application's versions
--   in order to avoid hitting the per-region limit for application
--   versions.
--   
--   When Elastic Beanstalk deletes an application version from its
--   database, you can no longer deploy that version to an environment. The
--   source bundle remains in S3 unless you configure the rule to delete
--   it.
--   
--   <i>See:</i> <a>applicationVersionLifecycleConfig</a> smart
--   constructor.
data ApplicationVersionLifecycleConfig

-- | Creates a value of <a>ApplicationVersionLifecycleConfig</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avlcMaxAgeRule</a> - Specify a max age rule to restrict the
--   length of time that application versions are retained for an
--   application.</li>
--   <li><a>avlcMaxCountRule</a> - Specify a max count rule to restrict the
--   number of application versions that are retained for an
--   application.</li>
--   </ul>
applicationVersionLifecycleConfig :: ApplicationVersionLifecycleConfig

-- | Specify a max age rule to restrict the length of time that application
--   versions are retained for an application.
avlcMaxAgeRule :: Lens' ApplicationVersionLifecycleConfig (Maybe MaxAgeRule)

-- | Specify a max count rule to restrict the number of application
--   versions that are retained for an application.
avlcMaxCountRule :: Lens' ApplicationVersionLifecycleConfig (Maybe MaxCountRule)

-- | Describes an Auto Scaling launch configuration.
--   
--   <i>See:</i> <a>autoScalingGroup</a> smart constructor.
data AutoScalingGroup

-- | Creates a value of <a>AutoScalingGroup</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>asgName</a> - The name of the <tt>AutoScalingGroup</tt> .</li>
--   </ul>
autoScalingGroup :: AutoScalingGroup

-- | The name of the <tt>AutoScalingGroup</tt> .
asgName :: Lens' AutoScalingGroup (Maybe Text)

-- | Settings for an AWS CodeBuild build.
--   
--   <i>See:</i> <a>buildConfiguration</a> smart constructor.
data BuildConfiguration

-- | Creates a value of <a>BuildConfiguration</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>bcArtifactName</a> - The name of the artifact of the CodeBuild
--   build. If provided, Elastic Beanstalk stores the build artifact in the
--   S3 location <i>S3-bucket</i> <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> -<i>artifact-name</i>
--   .zip. If not provided, Elastic Beanstalk stores the build artifact in
--   the S3 location <i>S3-bucket</i>
--   <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> .zip.</li>
--   <li><a>bcComputeType</a> - Information about the compute resources the
--   build project will use. * <tt>BUILD_GENERAL1_SMALL: Use up to 3 GB
--   memory and 2 vCPUs for builds</tt> * <tt>BUILD_GENERAL1_MEDIUM: Use up
--   to 7 GB memory and 4 vCPUs for builds</tt> * <tt>BUILD_GENERAL1_LARGE:
--   Use up to 15 GB memory and 8 vCPUs for builds</tt></li>
--   <li><a>bcTimeoutInMinutes</a> - How long in minutes, from 5 to 480 (8
--   hours), for AWS CodeBuild to wait until timing out any related build
--   that does not get marked as completed. The default is 60 minutes.</li>
--   <li><a>bcCodeBuildServiceRole</a> - The Amazon Resource Name (ARN) of
--   the AWS Identity and Access Management (IAM) role that enables AWS
--   CodeBuild to interact with dependent AWS services on behalf of the AWS
--   account.</li>
--   <li><a>bcImage</a> - The ID of the Docker image to use for this build
--   project.</li>
--   </ul>
buildConfiguration :: Text -> Text -> BuildConfiguration

-- | The name of the artifact of the CodeBuild build. If provided, Elastic
--   Beanstalk stores the build artifact in the S3 location
--   <i>S3-bucket</i> <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> -<i>artifact-name</i>
--   .zip. If not provided, Elastic Beanstalk stores the build artifact in
--   the S3 location <i>S3-bucket</i>
--   <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> .zip.
bcArtifactName :: Lens' BuildConfiguration (Maybe Text)

-- | Information about the compute resources the build project will use. *
--   <tt>BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for
--   builds</tt> * <tt>BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4
--   vCPUs for builds</tt> * <tt>BUILD_GENERAL1_LARGE: Use up to 15 GB
--   memory and 8 vCPUs for builds</tt>
bcComputeType :: Lens' BuildConfiguration (Maybe ComputeType)

-- | How long in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to
--   wait until timing out any related build that does not get marked as
--   completed. The default is 60 minutes.
bcTimeoutInMinutes :: Lens' BuildConfiguration (Maybe Int)

-- | The Amazon Resource Name (ARN) of the AWS Identity and Access
--   Management (IAM) role that enables AWS CodeBuild to interact with
--   dependent AWS services on behalf of the AWS account.
bcCodeBuildServiceRole :: Lens' BuildConfiguration Text

-- | The ID of the Docker image to use for this build project.
bcImage :: Lens' BuildConfiguration Text

-- | The builder used to build the custom platform.
--   
--   <i>See:</i> <a>builder</a> smart constructor.
data Builder

-- | Creates a value of <a>Builder</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>bARN</a> - The ARN of the builder.</li>
--   </ul>
builder :: Builder

-- | The ARN of the builder.
bARN :: Lens' Builder (Maybe Text)

-- | CPU utilization metrics for an instance.
--   
--   <i>See:</i> <a>cpuUtilization</a> smart constructor.
data CPUUtilization

-- | Creates a value of <a>CPUUtilization</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cuSoftIRQ</a> - Percentage of time that the CPU has spent in
--   the <tt>SoftIRQ</tt> state over the last 10 seconds.</li>
--   <li><a>cuIdle</a> - Percentage of time that the CPU has spent in the
--   <tt>Idle</tt> state over the last 10 seconds.</li>
--   <li><a>cuIRQ</a> - Percentage of time that the CPU has spent in the
--   <tt>IRQ</tt> state over the last 10 seconds.</li>
--   <li><a>cuSystem</a> - Percentage of time that the CPU has spent in the
--   <tt>System</tt> state over the last 10 seconds.</li>
--   <li><a>cuUser</a> - Percentage of time that the CPU has spent in the
--   <tt>User</tt> state over the last 10 seconds.</li>
--   <li><a>cuIOWait</a> - Percentage of time that the CPU has spent in the
--   <tt>I/O Wait</tt> state over the last 10 seconds.</li>
--   <li><a>cuNice</a> - Percentage of time that the CPU has spent in the
--   <tt>Nice</tt> state over the last 10 seconds.</li>
--   </ul>
cpuUtilization :: CPUUtilization

-- | Percentage of time that the CPU has spent in the <tt>SoftIRQ</tt>
--   state over the last 10 seconds.
cuSoftIRQ :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>Idle</tt> state
--   over the last 10 seconds.
cuIdle :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>IRQ</tt> state
--   over the last 10 seconds.
cuIRQ :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>System</tt> state
--   over the last 10 seconds.
cuSystem :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>User</tt> state
--   over the last 10 seconds.
cuUser :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>I/O Wait</tt>
--   state over the last 10 seconds.
cuIOWait :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>Nice</tt> state
--   over the last 10 seconds.
cuNice :: Lens' CPUUtilization (Maybe Double)

-- | Describes the possible values for a configuration option.
--   
--   <i>See:</i> <a>configurationOptionDescription</a> smart constructor.
data ConfigurationOptionDescription

-- | Creates a value of <a>ConfigurationOptionDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>codMaxValue</a> - If specified, the configuration option must
--   be a numeric value less than this value.</li>
--   <li><a>codRegex</a> - If specified, the configuration option must be a
--   string value that satisfies this regular expression.</li>
--   <li><a>codMaxLength</a> - If specified, the configuration option must
--   be a string value no longer than this value.</li>
--   <li><a>codUserDefined</a> - An indication of whether the user defined
--   this configuration option: * <tt>true</tt> : This configuration option
--   was defined by the user. It is a valid choice for specifying if this
--   as an <tt>Option to Remove</tt> when updating configuration settings.
--   * <tt>false</tt> : This configuration was not defined by the user.
--   Constraint: You can remove only <tt>UserDefined</tt> options from a
--   configuration. Valid Values: <tt>true</tt> | <tt>false</tt></li>
--   <li><a>codNamespace</a> - A unique namespace identifying the option's
--   associated AWS resource.</li>
--   <li><a>codValueOptions</a> - If specified, values for the
--   configuration option are selected from this list.</li>
--   <li><a>codName</a> - The name of the configuration option.</li>
--   <li><a>codChangeSeverity</a> - An indication of which action is
--   required if the value for this configuration option changes: *
--   <tt>NoInterruption</tt> : There is no interruption to the environment
--   or application availability. * <tt>RestartEnvironment</tt> : The
--   environment is entirely restarted, all AWS resources are deleted and
--   recreated, and the environment is unavailable during the process. *
--   <tt>RestartApplicationServer</tt> : The environment is available the
--   entire time. However, a short application outage occurs when the
--   application servers on the running Amazon EC2 instances are
--   restarted.</li>
--   <li><a>codDefaultValue</a> - The default value for this configuration
--   option.</li>
--   <li><a>codValueType</a> - An indication of which type of values this
--   option has and whether it is allowable to select one or more than one
--   of the possible values: * <tt>Scalar</tt> : Values for this option are
--   a single selection from the possible values, or an unformatted string,
--   or numeric value governed by the <tt>MIN<i>MAX</i>Regex</tt>
--   constraints. * <tt>List</tt> : Values for this option are multiple
--   selections from the possible values. * <tt>Boolean</tt> : Values for
--   this option are either <tt>true</tt> or <tt>false</tt> . *
--   <tt>Json</tt> : Values for this option are a JSON representation of a
--   <tt>ConfigDocument</tt> .</li>
--   <li><a>codMinValue</a> - If specified, the configuration option must
--   be a numeric value greater than this value.</li>
--   </ul>
configurationOptionDescription :: ConfigurationOptionDescription

-- | If specified, the configuration option must be a numeric value less
--   than this value.
codMaxValue :: Lens' ConfigurationOptionDescription (Maybe Int)

-- | If specified, the configuration option must be a string value that
--   satisfies this regular expression.
codRegex :: Lens' ConfigurationOptionDescription (Maybe OptionRestrictionRegex)

-- | If specified, the configuration option must be a string value no
--   longer than this value.
codMaxLength :: Lens' ConfigurationOptionDescription (Maybe Int)

-- | An indication of whether the user defined this configuration option: *
--   <tt>true</tt> : This configuration option was defined by the user. It
--   is a valid choice for specifying if this as an <tt>Option to
--   Remove</tt> when updating configuration settings. * <tt>false</tt> :
--   This configuration was not defined by the user. Constraint: You can
--   remove only <tt>UserDefined</tt> options from a configuration. Valid
--   Values: <tt>true</tt> | <tt>false</tt>
codUserDefined :: Lens' ConfigurationOptionDescription (Maybe Bool)

-- | A unique namespace identifying the option's associated AWS resource.
codNamespace :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | If specified, values for the configuration option are selected from
--   this list.
codValueOptions :: Lens' ConfigurationOptionDescription [Text]

-- | The name of the configuration option.
codName :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | An indication of which action is required if the value for this
--   configuration option changes: * <tt>NoInterruption</tt> : There is no
--   interruption to the environment or application availability. *
--   <tt>RestartEnvironment</tt> : The environment is entirely restarted,
--   all AWS resources are deleted and recreated, and the environment is
--   unavailable during the process. * <tt>RestartApplicationServer</tt> :
--   The environment is available the entire time. However, a short
--   application outage occurs when the application servers on the running
--   Amazon EC2 instances are restarted.
codChangeSeverity :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | The default value for this configuration option.
codDefaultValue :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | An indication of which type of values this option has and whether it
--   is allowable to select one or more than one of the possible values: *
--   <tt>Scalar</tt> : Values for this option are a single selection from
--   the possible values, or an unformatted string, or numeric value
--   governed by the <tt>MIN<i>MAX</i>Regex</tt> constraints. *
--   <tt>List</tt> : Values for this option are multiple selections from
--   the possible values. * <tt>Boolean</tt> : Values for this option are
--   either <tt>true</tt> or <tt>false</tt> . * <tt>Json</tt> : Values for
--   this option are a JSON representation of a <tt>ConfigDocument</tt> .
codValueType :: Lens' ConfigurationOptionDescription (Maybe ConfigurationOptionValueType)

-- | If specified, the configuration option must be a numeric value greater
--   than this value.
codMinValue :: Lens' ConfigurationOptionDescription (Maybe Int)

-- | A specification identifying an individual configuration option along
--   with its current value. For a list of possible option values, go to
--   <a>Option Values</a> in the <i>AWS Elastic Beanstalk Developer
--   Guide</i> .
--   
--   <i>See:</i> <a>configurationOptionSetting</a> smart constructor.
data ConfigurationOptionSetting

-- | Creates a value of <a>ConfigurationOptionSetting</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cosOptionName</a> - The name of the configuration option.</li>
--   <li><a>cosResourceName</a> - A unique resource name for a time-based
--   scaling configuration option.</li>
--   <li><a>cosNamespace</a> - A unique namespace identifying the option's
--   associated AWS resource.</li>
--   <li><a>cosValue</a> - The current value for the configuration
--   option.</li>
--   </ul>
configurationOptionSetting :: ConfigurationOptionSetting

-- | The name of the configuration option.
cosOptionName :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | A unique resource name for a time-based scaling configuration option.
cosResourceName :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | A unique namespace identifying the option's associated AWS resource.
cosNamespace :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | The current value for the configuration option.
cosValue :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | Describes the settings for a configuration set.
--   
--   <i>See:</i> <a>configurationSettingsDescription</a> smart constructor.
data ConfigurationSettingsDescription

-- | Creates a value of <a>ConfigurationSettingsDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>csdTemplateName</a> - If not <tt>null</tt> , the name of the
--   configuration template for this configuration set.</li>
--   <li><a>csdOptionSettings</a> - A list of the configuration options and
--   their values in this configuration set.</li>
--   <li><a>csdDateUpdated</a> - The date (in UTC time) when this
--   configuration set was last modified.</li>
--   <li><a>csdDateCreated</a> - The date (in UTC time) when this
--   configuration set was created.</li>
--   <li><a>csdPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>csdEnvironmentName</a> - If not <tt>null</tt> , the name of the
--   environment for this configuration set.</li>
--   <li><a>csdApplicationName</a> - The name of the application associated
--   with this configuration set.</li>
--   <li><a>csdDeploymentStatus</a> - If this configuration set is
--   associated with an environment, the <tt>DeploymentStatus</tt>
--   parameter indicates the deployment status of this configuration set: *
--   <tt>null</tt> : This configuration is not associated with a running
--   environment. * <tt>pending</tt> : This is a draft configuration that
--   is not deployed to the associated environment but is in the process of
--   deploying. * <tt>deployed</tt> : This is the configuration that is
--   currently deployed to the associated running environment. *
--   <tt>failed</tt> : This is a draft configuration that failed to
--   successfully deploy.</li>
--   <li><a>csdSolutionStackName</a> - The name of the solution stack this
--   configuration set uses.</li>
--   <li><a>csdDescription</a> - Describes this configuration set.</li>
--   </ul>
configurationSettingsDescription :: ConfigurationSettingsDescription

-- | If not <tt>null</tt> , the name of the configuration template for this
--   configuration set.
csdTemplateName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | A list of the configuration options and their values in this
--   configuration set.
csdOptionSettings :: Lens' ConfigurationSettingsDescription [ConfigurationOptionSetting]

-- | The date (in UTC time) when this configuration set was last modified.
csdDateUpdated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The date (in UTC time) when this configuration set was created.
csdDateCreated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The ARN of the platform.
csdPlatformARN :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If not <tt>null</tt> , the name of the environment for this
--   configuration set.
csdEnvironmentName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | The name of the application associated with this configuration set.
csdApplicationName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If this configuration set is associated with an environment, the
--   <tt>DeploymentStatus</tt> parameter indicates the deployment status of
--   this configuration set: * <tt>null</tt> : This configuration is not
--   associated with a running environment. * <tt>pending</tt> : This is a
--   draft configuration that is not deployed to the associated environment
--   but is in the process of deploying. * <tt>deployed</tt> : This is the
--   configuration that is currently deployed to the associated running
--   environment. * <tt>failed</tt> : This is a draft configuration that
--   failed to successfully deploy.
csdDeploymentStatus :: Lens' ConfigurationSettingsDescription (Maybe ConfigurationDeploymentStatus)

-- | The name of the solution stack this configuration set uses.
csdSolutionStackName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | Describes this configuration set.
csdDescription :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | A custom AMI available to platforms.
--   
--   <i>See:</i> <a>customAMI</a> smart constructor.
data CustomAMI

-- | Creates a value of <a>CustomAMI</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>caVirtualizationType</a> - The type of virtualization used to
--   create the custom AMI.</li>
--   <li><a>caImageId</a> - THe ID of the image used to create the custom
--   AMI.</li>
--   </ul>
customAMI :: CustomAMI

-- | The type of virtualization used to create the custom AMI.
caVirtualizationType :: Lens' CustomAMI (Maybe Text)

-- | THe ID of the image used to create the custom AMI.
caImageId :: Lens' CustomAMI (Maybe Text)

-- | Information about an application version deployment.
--   
--   <i>See:</i> <a>deployment</a> smart constructor.
data Deployment

-- | Creates a value of <a>Deployment</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dDeploymentId</a> - The ID of the deployment. This number
--   increases by one each time that you deploy source code or change
--   instance configuration settings.</li>
--   <li><a>dStatus</a> - The status of the deployment: * <tt>In
--   Progress</tt> : The deployment is in progress. * <tt>Deployed</tt> :
--   The deployment succeeded. * <tt>Failed</tt> : The deployment
--   failed.</li>
--   <li><a>dDeploymentTime</a> - For in-progress deployments, the time
--   that the deployment started. For completed deployments, the time that
--   the deployment ended.</li>
--   <li><a>dVersionLabel</a> - The version label of the application
--   version in the deployment.</li>
--   </ul>
deployment :: Deployment

-- | The ID of the deployment. This number increases by one each time that
--   you deploy source code or change instance configuration settings.
dDeploymentId :: Lens' Deployment (Maybe Integer)

-- | The status of the deployment: * <tt>In Progress</tt> : The deployment
--   is in progress. * <tt>Deployed</tt> : The deployment succeeded. *
--   <tt>Failed</tt> : The deployment failed.
dStatus :: Lens' Deployment (Maybe Text)

-- | For in-progress deployments, the time that the deployment started. For
--   completed deployments, the time that the deployment ended.
dDeploymentTime :: Lens' Deployment (Maybe UTCTime)

-- | The version label of the application version in the deployment.
dVersionLabel :: Lens' Deployment (Maybe Text)

-- | Describes the properties of an environment.
--   
--   <i>See:</i> <a>environmentDescription</a> smart constructor.
data EnvironmentDescription

-- | Creates a value of <a>EnvironmentDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eStatus</a> - The current operational status of the
--   environment: * <tt>Launching</tt> : Environment is in the process of
--   initial deployment. * <tt>Updating</tt> : Environment is in the
--   process of updating its configuration settings or application version.
--   * <tt>Ready</tt> : Environment is available to have an action
--   performed on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.</li>
--   <li><a>eCNAME</a> - The URL to the CNAME for this environment.</li>
--   <li><a>eTemplateName</a> - The name of the configuration template used
--   to originally launch this environment.</li>
--   <li><a>eAbortableOperationInProgress</a> - Indicates if there is an
--   in-progress environment configuration update or application version
--   deployment that you can cancel. <tt>true:</tt> There is an update in
--   progress. <tt>false:</tt> There are no updates currently in
--   progress.</li>
--   <li><a>eEndpointURL</a> - For load-balanced, autoscaling environments,
--   the URL to the LoadBalancer. For single-instance environments, the IP
--   address of the instance.</li>
--   <li><a>eResources</a> - The description of the AWS resources used by
--   this environment.</li>
--   <li><a>eDateUpdated</a> - The last modified date for this
--   environment.</li>
--   <li><a>eDateCreated</a> - The creation date for this environment.</li>
--   <li><a>eHealth</a> - Describes the health status of the environment.
--   AWS Elastic Beanstalk indicates the failure levels for a running
--   environment: * <tt>Red</tt> : Indicates the environment is not
--   responsive. Occurs when three or more consecutive failures occur for
--   an environment. * <tt>Yellow</tt> : Indicates that something is wrong.
--   Occurs when two consecutive failures occur for an environment. *
--   <tt>Green</tt> : Indicates the environment is healthy and fully
--   functional. * <tt>Grey</tt> : Default health for a new environment.
--   The environment is not fully launched and health checks have not
--   started or health checks are suspended during an
--   <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt> request.
--   Default: <tt>Grey</tt></li>
--   <li><a>eVersionLabel</a> - The application version deployed in this
--   environment.</li>
--   <li><a>ePlatformARN</a> - The ARN of the platform.</li>
--   <li><a>eTier</a> - Describes the current tier of this
--   environment.</li>
--   <li><a>eEnvironmentName</a> - The name of this environment.</li>
--   <li><a>eApplicationName</a> - The name of the application associated
--   with this environment.</li>
--   <li><a>eEnvironmentARN</a> - The environment's Amazon Resource Name
--   (ARN), which can be used in other API requests that require an
--   ARN.</li>
--   <li><a>eSolutionStackName</a> - The name of the <tt>SolutionStack</tt>
--   deployed with this environment.</li>
--   <li><a>eEnvironmentId</a> - The ID of this environment.</li>
--   <li><a>eHealthStatus</a> - Returns the health status of the
--   application running in your environment. For more information, see
--   <a>Health Colors and Statuses</a> .</li>
--   <li><a>eEnvironmentLinks</a> - A list of links to other environments
--   in the same group.</li>
--   <li><a>eDescription</a> - Describes this environment.</li>
--   </ul>
environmentDescription :: EnvironmentDescription

-- | The current operational status of the environment: *
--   <tt>Launching</tt> : Environment is in the process of initial
--   deployment. * <tt>Updating</tt> : Environment is in the process of
--   updating its configuration settings or application version. *
--   <tt>Ready</tt> : Environment is available to have an action performed
--   on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.
eStatus :: Lens' EnvironmentDescription (Maybe EnvironmentStatus)

-- | The URL to the CNAME for this environment.
eCNAME :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the configuration template used to originally launch this
--   environment.
eTemplateName :: Lens' EnvironmentDescription (Maybe Text)

-- | Indicates if there is an in-progress environment configuration update
--   or application version deployment that you can cancel. <tt>true:</tt>
--   There is an update in progress. <tt>false:</tt> There are no updates
--   currently in progress.
eAbortableOperationInProgress :: Lens' EnvironmentDescription (Maybe Bool)

-- | For load-balanced, autoscaling environments, the URL to the
--   LoadBalancer. For single-instance environments, the IP address of the
--   instance.
eEndpointURL :: Lens' EnvironmentDescription (Maybe Text)

-- | The description of the AWS resources used by this environment.
eResources :: Lens' EnvironmentDescription (Maybe EnvironmentResourcesDescription)

-- | The last modified date for this environment.
eDateUpdated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | The creation date for this environment.
eDateCreated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | Describes the health status of the environment. AWS Elastic Beanstalk
--   indicates the failure levels for a running environment: * <tt>Red</tt>
--   : Indicates the environment is not responsive. Occurs when three or
--   more consecutive failures occur for an environment. * <tt>Yellow</tt>
--   : Indicates that something is wrong. Occurs when two consecutive
--   failures occur for an environment. * <tt>Green</tt> : Indicates the
--   environment is healthy and fully functional. * <tt>Grey</tt> : Default
--   health for a new environment. The environment is not fully launched
--   and health checks have not started or health checks are suspended
--   during an <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt>
--   request. Default: <tt>Grey</tt>
eHealth :: Lens' EnvironmentDescription (Maybe EnvironmentHealth)

-- | The application version deployed in this environment.
eVersionLabel :: Lens' EnvironmentDescription (Maybe Text)

-- | The ARN of the platform.
ePlatformARN :: Lens' EnvironmentDescription (Maybe Text)

-- | Describes the current tier of this environment.
eTier :: Lens' EnvironmentDescription (Maybe EnvironmentTier)

-- | The name of this environment.
eEnvironmentName :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the application associated with this environment.
eApplicationName :: Lens' EnvironmentDescription (Maybe Text)

-- | The environment's Amazon Resource Name (ARN), which can be used in
--   other API requests that require an ARN.
eEnvironmentARN :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the <tt>SolutionStack</tt> deployed with this environment.
eSolutionStackName :: Lens' EnvironmentDescription (Maybe Text)

-- | The ID of this environment.
eEnvironmentId :: Lens' EnvironmentDescription (Maybe Text)

-- | Returns the health status of the application running in your
--   environment. For more information, see <a>Health Colors and
--   Statuses</a> .
eHealthStatus :: Lens' EnvironmentDescription (Maybe EnvironmentHealthStatus)

-- | A list of links to other environments in the same group.
eEnvironmentLinks :: Lens' EnvironmentDescription [EnvironmentLink]

-- | Describes this environment.
eDescription :: Lens' EnvironmentDescription (Maybe Text)

-- | Result message containing a list of environment descriptions.
--   
--   <i>See:</i> <a>environmentDescriptionsMessage</a> smart constructor.
data EnvironmentDescriptionsMessage

-- | Creates a value of <a>EnvironmentDescriptionsMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>edmNextToken</a> - In a paginated request, the token that you
--   can pass in a subsequent request to get the next response page.</li>
--   <li><a>edmEnvironments</a> - Returns an <a>EnvironmentDescription</a>
--   list.</li>
--   </ul>
environmentDescriptionsMessage :: EnvironmentDescriptionsMessage

-- | In a paginated request, the token that you can pass in a subsequent
--   request to get the next response page.
edmNextToken :: Lens' EnvironmentDescriptionsMessage (Maybe Text)

-- | Returns an <a>EnvironmentDescription</a> list.
edmEnvironments :: Lens' EnvironmentDescriptionsMessage [EnvironmentDescription]

-- | The information retrieved from the Amazon EC2 instances.
--   
--   <i>See:</i> <a>environmentInfoDescription</a> smart constructor.
data EnvironmentInfoDescription

-- | Creates a value of <a>EnvironmentInfoDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eidSampleTimestamp</a> - The time stamp when this information
--   was retrieved.</li>
--   <li><a>eidEC2InstanceId</a> - The Amazon EC2 Instance ID for this
--   information.</li>
--   <li><a>eidInfoType</a> - The type of information retrieved.</li>
--   <li><a>eidMessage</a> - The retrieved information.</li>
--   </ul>
environmentInfoDescription :: EnvironmentInfoDescription

-- | The time stamp when this information was retrieved.
eidSampleTimestamp :: Lens' EnvironmentInfoDescription (Maybe UTCTime)

-- | The Amazon EC2 Instance ID for this information.
eidEC2InstanceId :: Lens' EnvironmentInfoDescription (Maybe Text)

-- | The type of information retrieved.
eidInfoType :: Lens' EnvironmentInfoDescription (Maybe EnvironmentInfoType)

-- | The retrieved information.
eidMessage :: Lens' EnvironmentInfoDescription (Maybe Text)

-- | A link to another environment, defined in the environment's manifest.
--   Links provide connection information in system properties that can be
--   used to connect to another environment in the same group. See
--   <a>Environment Manifest (env.yaml)</a> for details.
--   
--   <i>See:</i> <a>environmentLink</a> smart constructor.
data EnvironmentLink

-- | Creates a value of <a>EnvironmentLink</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>elLinkName</a> - The name of the link.</li>
--   <li><a>elEnvironmentName</a> - The name of the linked environment (the
--   dependency).</li>
--   </ul>
environmentLink :: EnvironmentLink

-- | The name of the link.
elLinkName :: Lens' EnvironmentLink (Maybe Text)

-- | The name of the linked environment (the dependency).
elEnvironmentName :: Lens' EnvironmentLink (Maybe Text)

-- | Describes the AWS resources in use by this environment. This data is
--   live.
--   
--   <i>See:</i> <a>environmentResourceDescription</a> smart constructor.
data EnvironmentResourceDescription

-- | Creates a value of <a>EnvironmentResourceDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>erdQueues</a> - The queues used by this environment.</li>
--   <li><a>erdTriggers</a> - The <tt>AutoScaling</tt> triggers in use by
--   this environment.</li>
--   <li><a>erdLoadBalancers</a> - The LoadBalancers in use by this
--   environment.</li>
--   <li><a>erdEnvironmentName</a> - The name of the environment.</li>
--   <li><a>erdInstances</a> - The Amazon EC2 instances used by this
--   environment.</li>
--   <li><a>erdLaunchConfigurations</a> - The Auto Scaling launch
--   configurations in use by this environment.</li>
--   <li><a>erdAutoScalingGroups</a> - The <tt>AutoScalingGroups</tt> used
--   by this environment.</li>
--   </ul>
environmentResourceDescription :: EnvironmentResourceDescription

-- | The queues used by this environment.
erdQueues :: Lens' EnvironmentResourceDescription [Queue]

-- | The <tt>AutoScaling</tt> triggers in use by this environment.
erdTriggers :: Lens' EnvironmentResourceDescription [Trigger]

-- | The LoadBalancers in use by this environment.
erdLoadBalancers :: Lens' EnvironmentResourceDescription [LoadBalancer]

-- | The name of the environment.
erdEnvironmentName :: Lens' EnvironmentResourceDescription (Maybe Text)

-- | The Amazon EC2 instances used by this environment.
erdInstances :: Lens' EnvironmentResourceDescription [Instance]

-- | The Auto Scaling launch configurations in use by this environment.
erdLaunchConfigurations :: Lens' EnvironmentResourceDescription [LaunchConfiguration]

-- | The <tt>AutoScalingGroups</tt> used by this environment.
erdAutoScalingGroups :: Lens' EnvironmentResourceDescription [AutoScalingGroup]

-- | Describes the AWS resources in use by this environment. This data is
--   not live data.
--   
--   <i>See:</i> <a>environmentResourcesDescription</a> smart constructor.
data EnvironmentResourcesDescription

-- | Creates a value of <a>EnvironmentResourcesDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>erdLoadBalancer</a> - Describes the LoadBalancer.</li>
--   </ul>
environmentResourcesDescription :: EnvironmentResourcesDescription

-- | Describes the LoadBalancer.
erdLoadBalancer :: Lens' EnvironmentResourcesDescription (Maybe LoadBalancerDescription)

-- | Describes the properties of an environment tier
--   
--   <i>See:</i> <a>environmentTier</a> smart constructor.
data EnvironmentTier

-- | Creates a value of <a>EnvironmentTier</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>etName</a> - The name of this environment tier.</li>
--   <li><a>etVersion</a> - The version of this environment tier.</li>
--   <li><a>etType</a> - The type of this environment tier.</li>
--   </ul>
environmentTier :: EnvironmentTier

-- | The name of this environment tier.
etName :: Lens' EnvironmentTier (Maybe Text)

-- | The version of this environment tier.
etVersion :: Lens' EnvironmentTier (Maybe Text)

-- | The type of this environment tier.
etType :: Lens' EnvironmentTier (Maybe Text)

-- | Describes an event.
--   
--   <i>See:</i> <a>eventDescription</a> smart constructor.
data EventDescription

-- | Creates a value of <a>EventDescription</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>edRequestId</a> - The web service request ID for the activity
--   of this event.</li>
--   <li><a>edTemplateName</a> - The name of the configuration associated
--   with this event.</li>
--   <li><a>edSeverity</a> - The severity level of this event.</li>
--   <li><a>edVersionLabel</a> - The release label for the application
--   version associated with this event.</li>
--   <li><a>edPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>edEnvironmentName</a> - The name of the environment associated
--   with this event.</li>
--   <li><a>edApplicationName</a> - The application associated with the
--   event.</li>
--   <li><a>edEventDate</a> - The date when the event occurred.</li>
--   <li><a>edMessage</a> - The event message.</li>
--   </ul>
eventDescription :: EventDescription

-- | The web service request ID for the activity of this event.
edRequestId :: Lens' EventDescription (Maybe Text)

-- | The name of the configuration associated with this event.
edTemplateName :: Lens' EventDescription (Maybe Text)

-- | The severity level of this event.
edSeverity :: Lens' EventDescription (Maybe EventSeverity)

-- | The release label for the application version associated with this
--   event.
edVersionLabel :: Lens' EventDescription (Maybe Text)

-- | The ARN of the platform.
edPlatformARN :: Lens' EventDescription (Maybe Text)

-- | The name of the environment associated with this event.
edEnvironmentName :: Lens' EventDescription (Maybe Text)

-- | The application associated with the event.
edApplicationName :: Lens' EventDescription (Maybe Text)

-- | The date when the event occurred.
edEventDate :: Lens' EventDescription (Maybe UTCTime)

-- | The event message.
edMessage :: Lens' EventDescription (Maybe Text)

-- | The description of an Amazon EC2 instance.
--   
--   <i>See:</i> <a>instance'</a> smart constructor.
data Instance

-- | Creates a value of <a>Instance</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>iId</a> - The ID of the Amazon EC2 instance.</li>
--   </ul>
instance' :: Instance

-- | The ID of the Amazon EC2 instance.
iId :: Lens' Instance (Maybe Text)

-- | Represents summary information about the health of an instance. For
--   more information, see <a>Health Colors and Statuses</a> .
--   
--   <i>See:</i> <a>instanceHealthSummary</a> smart constructor.
data InstanceHealthSummary

-- | Creates a value of <a>InstanceHealthSummary</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ihsOK</a> - <b>Green.</b> An instance is passing health checks
--   and the health agent is not reporting any problems.</li>
--   <li><a>ihsPending</a> - <b>Grey.</b> An operation is in progress on an
--   instance within the command timeout.</li>
--   <li><a>ihsSevere</a> - <b>Red.</b> The health agent is reporting a
--   very high number of request failures or other issues for an instance
--   or environment.</li>
--   <li><a>ihsUnknown</a> - <b>Grey.</b> AWS Elastic Beanstalk and the
--   health agent are reporting an insufficient amount of data on an
--   instance.</li>
--   <li><a>ihsNoData</a> - <b>Grey.</b> AWS Elastic Beanstalk and the
--   health agent are reporting no data on an instance.</li>
--   <li><a>ihsWarning</a> - <b>Yellow.</b> The health agent is reporting a
--   moderate number of request failures or other issues for an instance or
--   environment.</li>
--   <li><a>ihsDegraded</a> - <b>Red.</b> The health agent is reporting a
--   high number of request failures or other issues for an instance or
--   environment.</li>
--   <li><a>ihsInfo</a> - <b>Green.</b> An operation is in progress on an
--   instance.</li>
--   </ul>
instanceHealthSummary :: InstanceHealthSummary

-- | <b>Green.</b> An instance is passing health checks and the health
--   agent is not reporting any problems.
ihsOK :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Grey.</b> An operation is in progress on an instance within the
--   command timeout.
ihsPending :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Red.</b> The health agent is reporting a very high number of
--   request failures or other issues for an instance or environment.
ihsSevere :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Grey.</b> AWS Elastic Beanstalk and the health agent are reporting
--   an insufficient amount of data on an instance.
ihsUnknown :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Grey.</b> AWS Elastic Beanstalk and the health agent are reporting
--   no data on an instance.
ihsNoData :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Yellow.</b> The health agent is reporting a moderate number of
--   request failures or other issues for an instance or environment.
ihsWarning :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Red.</b> The health agent is reporting a high number of request
--   failures or other issues for an instance or environment.
ihsDegraded :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Green.</b> An operation is in progress on an instance.
ihsInfo :: Lens' InstanceHealthSummary (Maybe Int)

-- | Represents the average latency for the slowest X percent of requests
--   over the last 10 seconds.
--   
--   <i>See:</i> <a>latency</a> smart constructor.
data Latency

-- | Creates a value of <a>Latency</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lP75</a> - The average latency for the slowest 25 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP50</a> - The average latency for the slowest 50 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP85</a> - The average latency for the slowest 15 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP999</a> - The average latency for the slowest 0.1 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP90</a> - The average latency for the slowest 10 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP95</a> - The average latency for the slowest 5 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP99</a> - The average latency for the slowest 1 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP10</a> - The average latency for the slowest 90 percent of
--   requests over the last 10 seconds.</li>
--   </ul>
latency :: Latency

-- | The average latency for the slowest 25 percent of requests over the
--   last 10 seconds.
lP75 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 50 percent of requests over the
--   last 10 seconds.
lP50 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 15 percent of requests over the
--   last 10 seconds.
lP85 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 0.1 percent of requests over the
--   last 10 seconds.
lP999 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 10 percent of requests over the
--   last 10 seconds.
lP90 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 5 percent of requests over the
--   last 10 seconds.
lP95 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 1 percent of requests over the
--   last 10 seconds.
lP99 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 90 percent of requests over the
--   last 10 seconds.
lP10 :: Lens' Latency (Maybe Double)

-- | Describes an Auto Scaling launch configuration.
--   
--   <i>See:</i> <a>launchConfiguration</a> smart constructor.
data LaunchConfiguration

-- | Creates a value of <a>LaunchConfiguration</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lcName</a> - The name of the launch configuration.</li>
--   </ul>
launchConfiguration :: LaunchConfiguration

-- | The name of the launch configuration.
lcName :: Lens' LaunchConfiguration (Maybe Text)

-- | Describes the properties of a Listener for the LoadBalancer.
--   
--   <i>See:</i> <a>listener</a> smart constructor.
data Listener

-- | Creates a value of <a>Listener</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lProtocol</a> - The protocol that is used by the Listener.</li>
--   <li><a>lPort</a> - The port that is used by the Listener.</li>
--   </ul>
listener :: Listener

-- | The protocol that is used by the Listener.
lProtocol :: Lens' Listener (Maybe Text)

-- | The port that is used by the Listener.
lPort :: Lens' Listener (Maybe Int)

-- | Describes a LoadBalancer.
--   
--   <i>See:</i> <a>loadBalancer</a> smart constructor.
data LoadBalancer

-- | Creates a value of <a>LoadBalancer</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lbName</a> - The name of the LoadBalancer.</li>
--   </ul>
loadBalancer :: LoadBalancer

-- | The name of the LoadBalancer.
lbName :: Lens' LoadBalancer (Maybe Text)

-- | Describes the details of a LoadBalancer.
--   
--   <i>See:</i> <a>loadBalancerDescription</a> smart constructor.
data LoadBalancerDescription

-- | Creates a value of <a>LoadBalancerDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lbdLoadBalancerName</a> - The name of the LoadBalancer.</li>
--   <li><a>lbdDomain</a> - The domain name of the LoadBalancer.</li>
--   <li><a>lbdListeners</a> - A list of Listeners used by the
--   LoadBalancer.</li>
--   </ul>
loadBalancerDescription :: LoadBalancerDescription

-- | The name of the LoadBalancer.
lbdLoadBalancerName :: Lens' LoadBalancerDescription (Maybe Text)

-- | The domain name of the LoadBalancer.
lbdDomain :: Lens' LoadBalancerDescription (Maybe Text)

-- | A list of Listeners used by the LoadBalancer.
lbdListeners :: Lens' LoadBalancerDescription [Listener]

-- | The record of an upcoming or in-progress managed action.
--   
--   <i>See:</i> <a>managedAction</a> smart constructor.
data ManagedAction

-- | Creates a value of <a>ManagedAction</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>maStatus</a> - The status of the managed action. If the action
--   is <tt>Scheduled</tt> , you can apply it immediately with
--   <tt>ApplyEnvironmentManagedAction</tt> .</li>
--   <li><a>maActionId</a> - A unique identifier for the managed
--   action.</li>
--   <li><a>maWindowStartTime</a> - The start time of the maintenance
--   window in which the managed action will execute.</li>
--   <li><a>maActionDescription</a> - A description of the managed
--   action.</li>
--   <li><a>maActionType</a> - The type of managed action.</li>
--   </ul>
managedAction :: ManagedAction

-- | The status of the managed action. If the action is <tt>Scheduled</tt>
--   , you can apply it immediately with
--   <tt>ApplyEnvironmentManagedAction</tt> .
maStatus :: Lens' ManagedAction (Maybe ActionStatus)

-- | A unique identifier for the managed action.
maActionId :: Lens' ManagedAction (Maybe Text)

-- | The start time of the maintenance window in which the managed action
--   will execute.
maWindowStartTime :: Lens' ManagedAction (Maybe UTCTime)

-- | A description of the managed action.
maActionDescription :: Lens' ManagedAction (Maybe Text)

-- | The type of managed action.
maActionType :: Lens' ManagedAction (Maybe ActionType)

-- | The record of a completed or failed managed action.
--   
--   <i>See:</i> <a>managedActionHistoryItem</a> smart constructor.
data ManagedActionHistoryItem

-- | Creates a value of <a>ManagedActionHistoryItem</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>mahiStatus</a> - The status of the action.</li>
--   <li><a>mahiFailureType</a> - If the action failed, the type of
--   failure.</li>
--   <li><a>mahiActionId</a> - A unique identifier for the managed
--   action.</li>
--   <li><a>mahiFailureDescription</a> - If the action failed, a
--   description of the failure.</li>
--   <li><a>mahiFinishedTime</a> - The date and time that the action
--   finished executing.</li>
--   <li><a>mahiActionDescription</a> - A description of the managed
--   action.</li>
--   <li><a>mahiExecutedTime</a> - The date and time that the action
--   started executing.</li>
--   <li><a>mahiActionType</a> - The type of the managed action.</li>
--   </ul>
managedActionHistoryItem :: ManagedActionHistoryItem

-- | The status of the action.
mahiStatus :: Lens' ManagedActionHistoryItem (Maybe ActionHistoryStatus)

-- | If the action failed, the type of failure.
mahiFailureType :: Lens' ManagedActionHistoryItem (Maybe FailureType)

-- | A unique identifier for the managed action.
mahiActionId :: Lens' ManagedActionHistoryItem (Maybe Text)

-- | If the action failed, a description of the failure.
mahiFailureDescription :: Lens' ManagedActionHistoryItem (Maybe Text)

-- | The date and time that the action finished executing.
mahiFinishedTime :: Lens' ManagedActionHistoryItem (Maybe UTCTime)

-- | A description of the managed action.
mahiActionDescription :: Lens' ManagedActionHistoryItem (Maybe Text)

-- | The date and time that the action started executing.
mahiExecutedTime :: Lens' ManagedActionHistoryItem (Maybe UTCTime)

-- | The type of the managed action.
mahiActionType :: Lens' ManagedActionHistoryItem (Maybe ActionType)

-- | A lifecycle rule that deletes application versions after the specified
--   number of days.
--   
--   <i>See:</i> <a>maxAgeRule</a> smart constructor.
data MaxAgeRule

-- | Creates a value of <a>MaxAgeRule</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>marDeleteSourceFromS3</a> - Set to <tt>true</tt> to delete a
--   version's source bundle from Amazon S3 when Elastic Beanstalk deletes
--   the application version.</li>
--   <li><a>marMaxAgeInDays</a> - Specify the number of days to retain an
--   application versions.</li>
--   <li><a>marEnabled</a> - Specify <tt>true</tt> to apply the rule, or
--   <tt>false</tt> to disable it.</li>
--   </ul>
maxAgeRule :: Bool -> MaxAgeRule

-- | Set to <tt>true</tt> to delete a version's source bundle from Amazon
--   S3 when Elastic Beanstalk deletes the application version.
marDeleteSourceFromS3 :: Lens' MaxAgeRule (Maybe Bool)

-- | Specify the number of days to retain an application versions.
marMaxAgeInDays :: Lens' MaxAgeRule (Maybe Int)

-- | Specify <tt>true</tt> to apply the rule, or <tt>false</tt> to disable
--   it.
marEnabled :: Lens' MaxAgeRule Bool

-- | A lifecycle rule that deletes the oldest application version when the
--   maximum count is exceeded.
--   
--   <i>See:</i> <a>maxCountRule</a> smart constructor.
data MaxCountRule

-- | Creates a value of <a>MaxCountRule</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>mcrMaxCount</a> - Specify the maximum number of application
--   versions to retain.</li>
--   <li><a>mcrDeleteSourceFromS3</a> - Set to <tt>true</tt> to delete a
--   version's source bundle from Amazon S3 when Elastic Beanstalk deletes
--   the application version.</li>
--   <li><a>mcrEnabled</a> - Specify <tt>true</tt> to apply the rule, or
--   <tt>false</tt> to disable it.</li>
--   </ul>
maxCountRule :: Bool -> MaxCountRule

-- | Specify the maximum number of application versions to retain.
mcrMaxCount :: Lens' MaxCountRule (Maybe Int)

-- | Set to <tt>true</tt> to delete a version's source bundle from Amazon
--   S3 when Elastic Beanstalk deletes the application version.
mcrDeleteSourceFromS3 :: Lens' MaxCountRule (Maybe Bool)

-- | Specify <tt>true</tt> to apply the rule, or <tt>false</tt> to disable
--   it.
mcrEnabled :: Lens' MaxCountRule Bool

-- | A regular expression representing a restriction on a string
--   configuration option value.
--   
--   <i>See:</i> <a>optionRestrictionRegex</a> smart constructor.
data OptionRestrictionRegex

-- | Creates a value of <a>OptionRestrictionRegex</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>orrPattern</a> - The regular expression pattern that a string
--   configuration option value with this restriction must match.</li>
--   <li><a>orrLabel</a> - A unique name representing this regular
--   expression.</li>
--   </ul>
optionRestrictionRegex :: OptionRestrictionRegex

-- | The regular expression pattern that a string configuration option
--   value with this restriction must match.
orrPattern :: Lens' OptionRestrictionRegex (Maybe Text)

-- | A unique name representing this regular expression.
orrLabel :: Lens' OptionRestrictionRegex (Maybe Text)

-- | A specification identifying an individual configuration option.
--   
--   <i>See:</i> <a>optionSpecification</a> smart constructor.
data OptionSpecification

-- | Creates a value of <a>OptionSpecification</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>osOptionName</a> - The name of the configuration option.</li>
--   <li><a>osResourceName</a> - A unique resource name for a time-based
--   scaling configuration option.</li>
--   <li><a>osNamespace</a> - A unique namespace identifying the option's
--   associated AWS resource.</li>
--   </ul>
optionSpecification :: OptionSpecification

-- | The name of the configuration option.
osOptionName :: Lens' OptionSpecification (Maybe Text)

-- | A unique resource name for a time-based scaling configuration option.
osResourceName :: Lens' OptionSpecification (Maybe Text)

-- | A unique namespace identifying the option's associated AWS resource.
osNamespace :: Lens' OptionSpecification (Maybe Text)

-- | Detailed information about a platform.
--   
--   <i>See:</i> <a>platformDescription</a> smart constructor.
data PlatformDescription

-- | Creates a value of <a>PlatformDescription</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pdSupportedAddonList</a> - The additions supported by the
--   platform.</li>
--   <li><a>pdPlatformCategory</a> - The category of the platform.</li>
--   <li><a>pdPlatformVersion</a> - The version of the platform.</li>
--   <li><a>pdPlatformStatus</a> - The status of the platform.</li>
--   <li><a>pdMaintainer</a> - Information about the maintainer of the
--   platform.</li>
--   <li><a>pdPlatformOwner</a> - The AWS account ID of the person who
--   created the platform.</li>
--   <li><a>pdDateUpdated</a> - The date when the platform was last
--   updated.</li>
--   <li><a>pdCustomAMIList</a> - The custom AMIs supported by the
--   platform.</li>
--   <li><a>pdDateCreated</a> - The date when the platform was
--   created.</li>
--   <li><a>pdOperatingSystemName</a> - The operating system used by the
--   platform.</li>
--   <li><a>pdFrameworks</a> - The frameworks supported by the
--   platform.</li>
--   <li><a>pdPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>pdOperatingSystemVersion</a> - The version of the operating
--   system used by the platform.</li>
--   <li><a>pdProgrammingLanguages</a> - The programming languages
--   supported by the platform.</li>
--   <li><a>pdSolutionStackName</a> - The name of the solution stack used
--   by the platform.</li>
--   <li><a>pdPlatformName</a> - The name of the platform.</li>
--   <li><a>pdDescription</a> - The description of the platform.</li>
--   <li><a>pdSupportedTierList</a> - The tiers supported by the
--   platform.</li>
--   </ul>
platformDescription :: PlatformDescription

-- | The additions supported by the platform.
pdSupportedAddonList :: Lens' PlatformDescription [Text]

-- | The category of the platform.
pdPlatformCategory :: Lens' PlatformDescription (Maybe Text)

-- | The version of the platform.
pdPlatformVersion :: Lens' PlatformDescription (Maybe Text)

-- | The status of the platform.
pdPlatformStatus :: Lens' PlatformDescription (Maybe PlatformStatus)

-- | Information about the maintainer of the platform.
pdMaintainer :: Lens' PlatformDescription (Maybe Text)

-- | The AWS account ID of the person who created the platform.
pdPlatformOwner :: Lens' PlatformDescription (Maybe Text)

-- | The date when the platform was last updated.
pdDateUpdated :: Lens' PlatformDescription (Maybe UTCTime)

-- | The custom AMIs supported by the platform.
pdCustomAMIList :: Lens' PlatformDescription [CustomAMI]

-- | The date when the platform was created.
pdDateCreated :: Lens' PlatformDescription (Maybe UTCTime)

-- | The operating system used by the platform.
pdOperatingSystemName :: Lens' PlatformDescription (Maybe Text)

-- | The frameworks supported by the platform.
pdFrameworks :: Lens' PlatformDescription [PlatformFramework]

-- | The ARN of the platform.
pdPlatformARN :: Lens' PlatformDescription (Maybe Text)

-- | The version of the operating system used by the platform.
pdOperatingSystemVersion :: Lens' PlatformDescription (Maybe Text)

-- | The programming languages supported by the platform.
pdProgrammingLanguages :: Lens' PlatformDescription [PlatformProgrammingLanguage]

-- | The name of the solution stack used by the platform.
pdSolutionStackName :: Lens' PlatformDescription (Maybe Text)

-- | The name of the platform.
pdPlatformName :: Lens' PlatformDescription (Maybe Text)

-- | The description of the platform.
pdDescription :: Lens' PlatformDescription (Maybe Text)

-- | The tiers supported by the platform.
pdSupportedTierList :: Lens' PlatformDescription [Text]

-- | Specify criteria to restrict the results when listing custom
--   platforms.
--   
--   The filter is evaluated as the expression:
--   
--   <tt>Type</tt> <tt>Operator</tt> <tt>Values[i]</tt>
--   
--   <i>See:</i> <a>platformFilter</a> smart constructor.
data PlatformFilter

-- | Creates a value of <a>PlatformFilter</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pfValues</a> - The list of values applied to the custom
--   platform attribute.</li>
--   <li><a>pfOperator</a> - The operator to apply to the <tt>Type</tt>
--   with each of the <tt>Values</tt> . Valid Values: <tt>=</tt> (equal to)
--   | <tt>!=</tt> (not equal to) | <tt>&lt;</tt> (less than) |
--   <tt>&lt;=</tt> (less than or equal to) | <tt>&gt;</tt> (greater than)
--   | <tt>&gt;=</tt> (greater than or equal to) | <tt>contains</tt> |
--   <tt>begins_with</tt> | <tt>ends_with</tt></li>
--   <li><a>pfType</a> - The custom platform attribute to which the filter
--   values are applied. Valid Values: <tt>PlatformName</tt> |
--   <tt>PlatformVersion</tt> | <tt>PlatformStatus</tt> |
--   <tt>PlatformOwner</tt></li>
--   </ul>
platformFilter :: PlatformFilter

-- | The list of values applied to the custom platform attribute.
pfValues :: Lens' PlatformFilter [Text]

-- | The operator to apply to the <tt>Type</tt> with each of the
--   <tt>Values</tt> . Valid Values: <tt>=</tt> (equal to) | <tt>!=</tt>
--   (not equal to) | <tt>&lt;</tt> (less than) | <tt>&lt;=</tt> (less than
--   or equal to) | <tt>&gt;</tt> (greater than) | <tt>&gt;=</tt> (greater
--   than or equal to) | <tt>contains</tt> | <tt>begins_with</tt> |
--   <tt>ends_with</tt>
pfOperator :: Lens' PlatformFilter (Maybe Text)

-- | The custom platform attribute to which the filter values are applied.
--   Valid Values: <tt>PlatformName</tt> | <tt>PlatformVersion</tt> |
--   <tt>PlatformStatus</tt> | <tt>PlatformOwner</tt>
pfType :: Lens' PlatformFilter (Maybe Text)

-- | A framework supported by the custom platform.
--   
--   <i>See:</i> <a>platformFramework</a> smart constructor.
data PlatformFramework

-- | Creates a value of <a>PlatformFramework</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pfName</a> - The name of the framework.</li>
--   <li><a>pfVersion</a> - The version of the framework.</li>
--   </ul>
platformFramework :: PlatformFramework

-- | The name of the framework.
pfName :: Lens' PlatformFramework (Maybe Text)

-- | The version of the framework.
pfVersion :: Lens' PlatformFramework (Maybe Text)

-- | A programming language supported by the platform.
--   
--   <i>See:</i> <a>platformProgrammingLanguage</a> smart constructor.
data PlatformProgrammingLanguage

-- | Creates a value of <a>PlatformProgrammingLanguage</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pplName</a> - The name of the programming language.</li>
--   <li><a>pplVersion</a> - The version of the programming language.</li>
--   </ul>
platformProgrammingLanguage :: PlatformProgrammingLanguage

-- | The name of the programming language.
pplName :: Lens' PlatformProgrammingLanguage (Maybe Text)

-- | The version of the programming language.
pplVersion :: Lens' PlatformProgrammingLanguage (Maybe Text)

-- | Detailed information about a platform.
--   
--   <i>See:</i> <a>platformSummary</a> smart constructor.
data PlatformSummary

-- | Creates a value of <a>PlatformSummary</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>psSupportedAddonList</a> - The additions associated with the
--   platform.</li>
--   <li><a>psPlatformCategory</a> - The category of platform.</li>
--   <li><a>psPlatformStatus</a> - The status of the platform. You can
--   create an environment from the platform once it is ready.</li>
--   <li><a>psPlatformOwner</a> - The AWS account ID of the person who
--   created the platform.</li>
--   <li><a>psOperatingSystemName</a> - The operating system used by the
--   platform.</li>
--   <li><a>psPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>psOperatingSystemVersion</a> - The version of the operating
--   system used by the platform.</li>
--   <li><a>psSupportedTierList</a> - The tiers in which the platform
--   runs.</li>
--   </ul>
platformSummary :: PlatformSummary

-- | The additions associated with the platform.
psSupportedAddonList :: Lens' PlatformSummary [Text]

-- | The category of platform.
psPlatformCategory :: Lens' PlatformSummary (Maybe Text)

-- | The status of the platform. You can create an environment from the
--   platform once it is ready.
psPlatformStatus :: Lens' PlatformSummary (Maybe PlatformStatus)

-- | The AWS account ID of the person who created the platform.
psPlatformOwner :: Lens' PlatformSummary (Maybe Text)

-- | The operating system used by the platform.
psOperatingSystemName :: Lens' PlatformSummary (Maybe Text)

-- | The ARN of the platform.
psPlatformARN :: Lens' PlatformSummary (Maybe Text)

-- | The version of the operating system used by the platform.
psOperatingSystemVersion :: Lens' PlatformSummary (Maybe Text)

-- | The tiers in which the platform runs.
psSupportedTierList :: Lens' PlatformSummary [Text]

-- | Describes a queue.
--   
--   <i>See:</i> <a>queue</a> smart constructor.
data Queue

-- | Creates a value of <a>Queue</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>qURL</a> - The URL of the queue.</li>
--   <li><a>qName</a> - The name of the queue.</li>
--   </ul>
queue :: Queue

-- | The URL of the queue.
qURL :: Lens' Queue (Maybe Text)

-- | The name of the queue.
qName :: Lens' Queue (Maybe Text)

-- | The AWS Elastic Beanstalk quota information for a single resource type
--   in an AWS account. It reflects the resource's limits for this account.
--   
--   <i>See:</i> <a>resourceQuota</a> smart constructor.
data ResourceQuota

-- | Creates a value of <a>ResourceQuota</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rqMaximum</a> - The maximum number of instances of this Elastic
--   Beanstalk resource type that an AWS account can use.</li>
--   </ul>
resourceQuota :: ResourceQuota

-- | The maximum number of instances of this Elastic Beanstalk resource
--   type that an AWS account can use.
rqMaximum :: Lens' ResourceQuota (Maybe Int)

-- | A set of per-resource AWS Elastic Beanstalk quotas associated with an
--   AWS account. They reflect Elastic Beanstalk resource limits for this
--   account.
--   
--   <i>See:</i> <a>resourceQuotas</a> smart constructor.
data ResourceQuotas

-- | Creates a value of <a>ResourceQuotas</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rqApplicationQuota</a> - The quota for applications in the AWS
--   account.</li>
--   <li><a>rqCustomPlatformQuota</a> - The quota for custom platforms in
--   the AWS account.</li>
--   <li><a>rqApplicationVersionQuota</a> - The quota for application
--   versions in the AWS account.</li>
--   <li><a>rqEnvironmentQuota</a> - The quota for environments in the AWS
--   account.</li>
--   <li><a>rqConfigurationTemplateQuota</a> - The quota for configuration
--   templates in the AWS account.</li>
--   </ul>
resourceQuotas :: ResourceQuotas

-- | The quota for applications in the AWS account.
rqApplicationQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for custom platforms in the AWS account.
rqCustomPlatformQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for application versions in the AWS account.
rqApplicationVersionQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for environments in the AWS account.
rqEnvironmentQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for configuration templates in the AWS account.
rqConfigurationTemplateQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The bucket and key of an item stored in Amazon S3.
--   
--   <i>See:</i> <a>s3Location</a> smart constructor.
data S3Location

-- | Creates a value of <a>S3Location</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>slS3Key</a> - The Amazon S3 key where the data is located.</li>
--   <li><a>slS3Bucket</a> - The Amazon S3 bucket where the data is
--   located.</li>
--   </ul>
s3Location :: S3Location

-- | The Amazon S3 key where the data is located.
slS3Key :: Lens' S3Location (Maybe Text)

-- | The Amazon S3 bucket where the data is located.
slS3Bucket :: Lens' S3Location (Maybe Text)

-- | Detailed health information about an Amazon EC2 instance in your
--   Elastic Beanstalk environment.
--   
--   <i>See:</i> <a>singleInstanceHealth</a> smart constructor.
data SingleInstanceHealth

-- | Creates a value of <a>SingleInstanceHealth</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sihInstanceId</a> - The ID of the Amazon EC2 instance.</li>
--   <li><a>sihCauses</a> - Represents the causes, which provide more
--   information about the current health status.</li>
--   <li><a>sihSystem</a> - Operating system metrics from the
--   instance.</li>
--   <li><a>sihApplicationMetrics</a> - Request metrics from your
--   application.</li>
--   <li><a>sihColor</a> - Represents the color indicator that gives you
--   information about the health of the EC2 instance. For more
--   information, see <a>Health Colors and Statuses</a> .</li>
--   <li><a>sihInstanceType</a> - The instance's type.</li>
--   <li><a>sihAvailabilityZone</a> - The availability zone in which the
--   instance runs.</li>
--   <li><a>sihHealthStatus</a> - Returns the health status of the
--   specified instance. For more information, see <a>Health Colors and
--   Statuses</a> .</li>
--   <li><a>sihDeployment</a> - Information about the most recent
--   deployment to an instance.</li>
--   <li><a>sihLaunchedAt</a> - The time at which the EC2 instance was
--   launched.</li>
--   </ul>
singleInstanceHealth :: SingleInstanceHealth

-- | The ID of the Amazon EC2 instance.
sihInstanceId :: Lens' SingleInstanceHealth (Maybe Text)

-- | Represents the causes, which provide more information about the
--   current health status.
sihCauses :: Lens' SingleInstanceHealth [Text]

-- | Operating system metrics from the instance.
sihSystem :: Lens' SingleInstanceHealth (Maybe SystemStatus)

-- | Request metrics from your application.
sihApplicationMetrics :: Lens' SingleInstanceHealth (Maybe ApplicationMetrics)

-- | Represents the color indicator that gives you information about the
--   health of the EC2 instance. For more information, see <a>Health Colors
--   and Statuses</a> .
sihColor :: Lens' SingleInstanceHealth (Maybe Text)

-- | The instance's type.
sihInstanceType :: Lens' SingleInstanceHealth (Maybe Text)

-- | The availability zone in which the instance runs.
sihAvailabilityZone :: Lens' SingleInstanceHealth (Maybe Text)

-- | Returns the health status of the specified instance. For more
--   information, see <a>Health Colors and Statuses</a> .
sihHealthStatus :: Lens' SingleInstanceHealth (Maybe Text)

-- | Information about the most recent deployment to an instance.
sihDeployment :: Lens' SingleInstanceHealth (Maybe Deployment)

-- | The time at which the EC2 instance was launched.
sihLaunchedAt :: Lens' SingleInstanceHealth (Maybe UTCTime)

-- | Describes the solution stack.
--   
--   <i>See:</i> <a>solutionStackDescription</a> smart constructor.
data SolutionStackDescription

-- | Creates a value of <a>SolutionStackDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ssdPermittedFileTypes</a> - The permitted file types allowed
--   for a solution stack.</li>
--   <li><a>ssdSolutionStackName</a> - The name of the solution stack.</li>
--   </ul>
solutionStackDescription :: SolutionStackDescription

-- | The permitted file types allowed for a solution stack.
ssdPermittedFileTypes :: Lens' SolutionStackDescription [Text]

-- | The name of the solution stack.
ssdSolutionStackName :: Lens' SolutionStackDescription (Maybe Text)

-- | Location of the source code for an application version.
--   
--   <i>See:</i> <a>sourceBuildInformation</a> smart constructor.
data SourceBuildInformation

-- | Creates a value of <a>SourceBuildInformation</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sbiSourceType</a> - The type of repository. * <tt>Git</tt> *
--   <tt>Zip</tt></li>
--   <li><a>sbiSourceRepository</a> - Location where the repository is
--   stored. * <tt>CodeCommit</tt> * <tt>S3</tt></li>
--   <li><a>sbiSourceLocation</a> - The location of the source code, as a
--   formatted string, depending on the value of <tt>SourceRepository</tt>
--   * For <tt>CodeCommit</tt> , the format is the repository name and
--   commit ID, separated by a forward slash. For example,
--   <tt>my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a</tt> . * For
--   <tt>S3</tt> , the format is the S3 bucket name and object key,
--   separated by a forward slash. For example,
--   <tt>my-s3-bucket<i>Folders</i>my-source-file</tt> .</li>
--   </ul>
sourceBuildInformation :: SourceType -> SourceRepository -> Text -> SourceBuildInformation

-- | The type of repository. * <tt>Git</tt> * <tt>Zip</tt>
sbiSourceType :: Lens' SourceBuildInformation SourceType

-- | Location where the repository is stored. * <tt>CodeCommit</tt> *
--   <tt>S3</tt>
sbiSourceRepository :: Lens' SourceBuildInformation SourceRepository

-- | The location of the source code, as a formatted string, depending on
--   the value of <tt>SourceRepository</tt> * For <tt>CodeCommit</tt> , the
--   format is the repository name and commit ID, separated by a forward
--   slash. For example,
--   <tt>my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a</tt> . * For
--   <tt>S3</tt> , the format is the S3 bucket name and object key,
--   separated by a forward slash. For example,
--   <tt>my-s3-bucket<i>Folders</i>my-source-file</tt> .
sbiSourceLocation :: Lens' SourceBuildInformation Text

-- | A specification for an environment configuration
--   
--   <i>See:</i> <a>sourceConfiguration</a> smart constructor.
data SourceConfiguration

-- | Creates a value of <a>SourceConfiguration</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>scTemplateName</a> - The name of the configuration
--   template.</li>
--   <li><a>scApplicationName</a> - The name of the application associated
--   with the configuration.</li>
--   </ul>
sourceConfiguration :: SourceConfiguration

-- | The name of the configuration template.
scTemplateName :: Lens' SourceConfiguration (Maybe Text)

-- | The name of the application associated with the configuration.
scApplicationName :: Lens' SourceConfiguration (Maybe Text)

-- | Represents the percentage of requests over the last 10 seconds that
--   resulted in each type of status code response. For more information,
--   see <a>Status Code Definitions</a> .
--   
--   <i>See:</i> <a>statusCodes</a> smart constructor.
data StatusCodes

-- | Creates a value of <a>StatusCodes</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>scStatus2xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 2xx (200, 201, etc.) status code.</li>
--   <li><a>scStatus3xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 3xx (300, 301, etc.) status code.</li>
--   <li><a>scStatus4xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 4xx (400, 401, etc.) status code.</li>
--   <li><a>scStatus5xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 5xx (500, 501, etc.) status code.</li>
--   </ul>
statusCodes :: StatusCodes

-- | The percentage of requests over the last 10 seconds that resulted in a
--   2xx (200, 201, etc.) status code.
scStatus2xx :: Lens' StatusCodes (Maybe Int)

-- | The percentage of requests over the last 10 seconds that resulted in a
--   3xx (300, 301, etc.) status code.
scStatus3xx :: Lens' StatusCodes (Maybe Int)

-- | The percentage of requests over the last 10 seconds that resulted in a
--   4xx (400, 401, etc.) status code.
scStatus4xx :: Lens' StatusCodes (Maybe Int)

-- | The percentage of requests over the last 10 seconds that resulted in a
--   5xx (500, 501, etc.) status code.
scStatus5xx :: Lens' StatusCodes (Maybe Int)

-- | CPU utilization and load average metrics for an Amazon EC2 instance.
--   
--   <i>See:</i> <a>systemStatus</a> smart constructor.
data SystemStatus

-- | Creates a value of <a>SystemStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ssCPUUtilization</a> - CPU utilization metrics for the
--   instance.</li>
--   <li><a>ssLoadAverage</a> - Load average in the last 1-minute,
--   5-minute, and 15-minute periods. For more information, see
--   <a>Operating System Metrics</a> .</li>
--   </ul>
systemStatus :: SystemStatus

-- | CPU utilization metrics for the instance.
ssCPUUtilization :: Lens' SystemStatus (Maybe CPUUtilization)

-- | Load average in the last 1-minute, 5-minute, and 15-minute periods.
--   For more information, see <a>Operating System Metrics</a> .
ssLoadAverage :: Lens' SystemStatus [Double]

-- | Describes a tag applied to a resource in an environment.
--   
--   <i>See:</i> <a>tag</a> smart constructor.
data Tag

-- | Creates a value of <a>Tag</a> with the minimum fields required to make
--   a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>tagValue</a> - The value of the tag.</li>
--   <li><a>tagKey</a> - The key of the tag.</li>
--   </ul>
tag :: Tag

-- | The value of the tag.
tagValue :: Lens' Tag (Maybe Text)

-- | The key of the tag.
tagKey :: Lens' Tag (Maybe Text)

-- | Describes a trigger.
--   
--   <i>See:</i> <a>trigger</a> smart constructor.
data Trigger

-- | Creates a value of <a>Trigger</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>tName</a> - The name of the trigger.</li>
--   </ul>
trigger :: Trigger

-- | The name of the trigger.
tName :: Lens' Trigger (Maybe Text)

-- | An error or warning for a desired configuration option value.
--   
--   <i>See:</i> <a>validationMessage</a> smart constructor.
data ValidationMessage

-- | Creates a value of <a>ValidationMessage</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>vmOptionName</a> - The name of the option.</li>
--   <li><a>vmSeverity</a> - An indication of the severity of this message:
--   * <tt>error</tt> : This message indicates that this is not a valid
--   setting for an option. * <tt>warning</tt> : This message is providing
--   information you should take into account.</li>
--   <li><a>vmNamespace</a> - The namespace to which the option
--   belongs.</li>
--   <li><a>vmMessage</a> - A message describing the error or warning.</li>
--   </ul>
validationMessage :: ValidationMessage

-- | The name of the option.
vmOptionName :: Lens' ValidationMessage (Maybe Text)

-- | An indication of the severity of this message: * <tt>error</tt> : This
--   message indicates that this is not a valid setting for an option. *
--   <tt>warning</tt> : This message is providing information you should
--   take into account.
vmSeverity :: Lens' ValidationMessage (Maybe ValidationSeverity)

-- | The namespace to which the option belongs.
vmNamespace :: Lens' ValidationMessage (Maybe Text)

-- | A message describing the error or warning.
vmMessage :: Lens' ValidationMessage (Maybe Text)


-- | Terminates the specified environment.
module Network.AWS.ElasticBeanstalk.TerminateEnvironment

-- | Creates a value of <a>TerminateEnvironment</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>teForceTerminate</a> - Terminates the target environment even
--   if another environment in the same group is dependent on it.</li>
--   <li><a>teTerminateResources</a> - Indicates whether the associated AWS
--   resources should shut down when the environment is terminated: *
--   <tt>true</tt> : The specified environment as well as the associated
--   AWS resources, such as Auto Scaling group and LoadBalancer, are
--   terminated. * <tt>false</tt> : AWS Elastic Beanstalk resource
--   management is removed from the environment, but the AWS resources
--   continue to operate. For more information, see the <a>AWS Elastic
--   Beanstalk User Guide.</a> Default: <tt>true</tt> Valid Values:
--   <tt>true</tt> | <tt>false</tt></li>
--   <li><a>teEnvironmentName</a> - The name of the environment to
--   terminate. Condition: You must specify either this or an
--   EnvironmentId, or both. If you do not specify either, AWS Elastic
--   Beanstalk returns <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>teEnvironmentId</a> - The ID of the environment to terminate.
--   Condition: You must specify either this or an EnvironmentName, or
--   both. If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   </ul>
terminateEnvironment :: TerminateEnvironment

-- | Request to terminate an environment.
--   
--   <i>See:</i> <a>terminateEnvironment</a> smart constructor.
data TerminateEnvironment

-- | Terminates the target environment even if another environment in the
--   same group is dependent on it.
teForceTerminate :: Lens' TerminateEnvironment (Maybe Bool)

-- | Indicates whether the associated AWS resources should shut down when
--   the environment is terminated: * <tt>true</tt> : The specified
--   environment as well as the associated AWS resources, such as Auto
--   Scaling group and LoadBalancer, are terminated. * <tt>false</tt> : AWS
--   Elastic Beanstalk resource management is removed from the environment,
--   but the AWS resources continue to operate. For more information, see
--   the <a>AWS Elastic Beanstalk User Guide.</a> Default: <tt>true</tt>
--   Valid Values: <tt>true</tt> | <tt>false</tt>
teTerminateResources :: Lens' TerminateEnvironment (Maybe Bool)

-- | The name of the environment to terminate. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
teEnvironmentName :: Lens' TerminateEnvironment (Maybe Text)

-- | The ID of the environment to terminate. Condition: You must specify
--   either this or an EnvironmentName, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
teEnvironmentId :: Lens' TerminateEnvironment (Maybe Text)

-- | Creates a value of <a>EnvironmentDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eStatus</a> - The current operational status of the
--   environment: * <tt>Launching</tt> : Environment is in the process of
--   initial deployment. * <tt>Updating</tt> : Environment is in the
--   process of updating its configuration settings or application version.
--   * <tt>Ready</tt> : Environment is available to have an action
--   performed on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.</li>
--   <li><a>eCNAME</a> - The URL to the CNAME for this environment.</li>
--   <li><a>eTemplateName</a> - The name of the configuration template used
--   to originally launch this environment.</li>
--   <li><a>eAbortableOperationInProgress</a> - Indicates if there is an
--   in-progress environment configuration update or application version
--   deployment that you can cancel. <tt>true:</tt> There is an update in
--   progress. <tt>false:</tt> There are no updates currently in
--   progress.</li>
--   <li><a>eEndpointURL</a> - For load-balanced, autoscaling environments,
--   the URL to the LoadBalancer. For single-instance environments, the IP
--   address of the instance.</li>
--   <li><a>eResources</a> - The description of the AWS resources used by
--   this environment.</li>
--   <li><a>eDateUpdated</a> - The last modified date for this
--   environment.</li>
--   <li><a>eDateCreated</a> - The creation date for this environment.</li>
--   <li><a>eHealth</a> - Describes the health status of the environment.
--   AWS Elastic Beanstalk indicates the failure levels for a running
--   environment: * <tt>Red</tt> : Indicates the environment is not
--   responsive. Occurs when three or more consecutive failures occur for
--   an environment. * <tt>Yellow</tt> : Indicates that something is wrong.
--   Occurs when two consecutive failures occur for an environment. *
--   <tt>Green</tt> : Indicates the environment is healthy and fully
--   functional. * <tt>Grey</tt> : Default health for a new environment.
--   The environment is not fully launched and health checks have not
--   started or health checks are suspended during an
--   <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt> request.
--   Default: <tt>Grey</tt></li>
--   <li><a>eVersionLabel</a> - The application version deployed in this
--   environment.</li>
--   <li><a>ePlatformARN</a> - The ARN of the platform.</li>
--   <li><a>eTier</a> - Describes the current tier of this
--   environment.</li>
--   <li><a>eEnvironmentName</a> - The name of this environment.</li>
--   <li><a>eApplicationName</a> - The name of the application associated
--   with this environment.</li>
--   <li><a>eEnvironmentARN</a> - The environment's Amazon Resource Name
--   (ARN), which can be used in other API requests that require an
--   ARN.</li>
--   <li><a>eSolutionStackName</a> - The name of the <tt>SolutionStack</tt>
--   deployed with this environment.</li>
--   <li><a>eEnvironmentId</a> - The ID of this environment.</li>
--   <li><a>eHealthStatus</a> - Returns the health status of the
--   application running in your environment. For more information, see
--   <a>Health Colors and Statuses</a> .</li>
--   <li><a>eEnvironmentLinks</a> - A list of links to other environments
--   in the same group.</li>
--   <li><a>eDescription</a> - Describes this environment.</li>
--   </ul>
environmentDescription :: EnvironmentDescription

-- | Describes the properties of an environment.
--   
--   <i>See:</i> <a>environmentDescription</a> smart constructor.
data EnvironmentDescription

-- | The current operational status of the environment: *
--   <tt>Launching</tt> : Environment is in the process of initial
--   deployment. * <tt>Updating</tt> : Environment is in the process of
--   updating its configuration settings or application version. *
--   <tt>Ready</tt> : Environment is available to have an action performed
--   on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.
eStatus :: Lens' EnvironmentDescription (Maybe EnvironmentStatus)

-- | The URL to the CNAME for this environment.
eCNAME :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the configuration template used to originally launch this
--   environment.
eTemplateName :: Lens' EnvironmentDescription (Maybe Text)

-- | Indicates if there is an in-progress environment configuration update
--   or application version deployment that you can cancel. <tt>true:</tt>
--   There is an update in progress. <tt>false:</tt> There are no updates
--   currently in progress.
eAbortableOperationInProgress :: Lens' EnvironmentDescription (Maybe Bool)

-- | For load-balanced, autoscaling environments, the URL to the
--   LoadBalancer. For single-instance environments, the IP address of the
--   instance.
eEndpointURL :: Lens' EnvironmentDescription (Maybe Text)

-- | The description of the AWS resources used by this environment.
eResources :: Lens' EnvironmentDescription (Maybe EnvironmentResourcesDescription)

-- | The last modified date for this environment.
eDateUpdated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | The creation date for this environment.
eDateCreated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | Describes the health status of the environment. AWS Elastic Beanstalk
--   indicates the failure levels for a running environment: * <tt>Red</tt>
--   : Indicates the environment is not responsive. Occurs when three or
--   more consecutive failures occur for an environment. * <tt>Yellow</tt>
--   : Indicates that something is wrong. Occurs when two consecutive
--   failures occur for an environment. * <tt>Green</tt> : Indicates the
--   environment is healthy and fully functional. * <tt>Grey</tt> : Default
--   health for a new environment. The environment is not fully launched
--   and health checks have not started or health checks are suspended
--   during an <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt>
--   request. Default: <tt>Grey</tt>
eHealth :: Lens' EnvironmentDescription (Maybe EnvironmentHealth)

-- | The application version deployed in this environment.
eVersionLabel :: Lens' EnvironmentDescription (Maybe Text)

-- | The ARN of the platform.
ePlatformARN :: Lens' EnvironmentDescription (Maybe Text)

-- | Describes the current tier of this environment.
eTier :: Lens' EnvironmentDescription (Maybe EnvironmentTier)

-- | The name of this environment.
eEnvironmentName :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the application associated with this environment.
eApplicationName :: Lens' EnvironmentDescription (Maybe Text)

-- | The environment's Amazon Resource Name (ARN), which can be used in
--   other API requests that require an ARN.
eEnvironmentARN :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the <tt>SolutionStack</tt> deployed with this environment.
eSolutionStackName :: Lens' EnvironmentDescription (Maybe Text)

-- | The ID of this environment.
eEnvironmentId :: Lens' EnvironmentDescription (Maybe Text)

-- | Returns the health status of the application running in your
--   environment. For more information, see <a>Health Colors and
--   Statuses</a> .
eHealthStatus :: Lens' EnvironmentDescription (Maybe EnvironmentHealthStatus)

-- | A list of links to other environments in the same group.
eEnvironmentLinks :: Lens' EnvironmentDescription [EnvironmentLink]

-- | Describes this environment.
eDescription :: Lens' EnvironmentDescription (Maybe Text)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Data.Data.Data Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.TerminateEnvironment.TerminateEnvironment


-- | Swaps the CNAMEs of two environments.
module Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs

-- | Creates a value of <a>SwapEnvironmentCNAMEs</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>secnameDestinationEnvironmentName</a> - The name of the
--   destination environment. Condition: You must specify at least the
--   <tt>DestinationEnvironmentID</tt> or the
--   <tt>DestinationEnvironmentName</tt> . You may also specify both. You
--   must specify the <tt>SourceEnvironmentName</tt> with the
--   <tt>DestinationEnvironmentName</tt> .</li>
--   <li><a>secnameDestinationEnvironmentId</a> - The ID of the destination
--   environment. Condition: You must specify at least the
--   <tt>DestinationEnvironmentID</tt> or the
--   <tt>DestinationEnvironmentName</tt> . You may also specify both. You
--   must specify the <tt>SourceEnvironmentId</tt> with the
--   <tt>DestinationEnvironmentId</tt> .</li>
--   <li><a>secnameSourceEnvironmentName</a> - The name of the source
--   environment. Condition: You must specify at least the
--   <tt>SourceEnvironmentID</tt> or the <tt>SourceEnvironmentName</tt> .
--   You may also specify both. If you specify the
--   <tt>SourceEnvironmentName</tt> , you must specify the
--   <tt>DestinationEnvironmentName</tt> .</li>
--   <li><a>secnameSourceEnvironmentId</a> - The ID of the source
--   environment. Condition: You must specify at least the
--   <tt>SourceEnvironmentID</tt> or the <tt>SourceEnvironmentName</tt> .
--   You may also specify both. If you specify the
--   <tt>SourceEnvironmentId</tt> , you must specify the
--   <tt>DestinationEnvironmentId</tt> .</li>
--   </ul>
swapEnvironmentCNAMEs :: SwapEnvironmentCNAMEs

-- | Swaps the CNAMEs of two environments.
--   
--   <i>See:</i> <a>swapEnvironmentCNAMEs</a> smart constructor.
data SwapEnvironmentCNAMEs

-- | The name of the destination environment. Condition: You must specify
--   at least the <tt>DestinationEnvironmentID</tt> or the
--   <tt>DestinationEnvironmentName</tt> . You may also specify both. You
--   must specify the <tt>SourceEnvironmentName</tt> with the
--   <tt>DestinationEnvironmentName</tt> .
secnameDestinationEnvironmentName :: Lens' SwapEnvironmentCNAMEs (Maybe Text)

-- | The ID of the destination environment. Condition: You must specify at
--   least the <tt>DestinationEnvironmentID</tt> or the
--   <tt>DestinationEnvironmentName</tt> . You may also specify both. You
--   must specify the <tt>SourceEnvironmentId</tt> with the
--   <tt>DestinationEnvironmentId</tt> .
secnameDestinationEnvironmentId :: Lens' SwapEnvironmentCNAMEs (Maybe Text)

-- | The name of the source environment. Condition: You must specify at
--   least the <tt>SourceEnvironmentID</tt> or the
--   <tt>SourceEnvironmentName</tt> . You may also specify both. If you
--   specify the <tt>SourceEnvironmentName</tt> , you must specify the
--   <tt>DestinationEnvironmentName</tt> .
secnameSourceEnvironmentName :: Lens' SwapEnvironmentCNAMEs (Maybe Text)

-- | The ID of the source environment. Condition: You must specify at least
--   the <tt>SourceEnvironmentID</tt> or the <tt>SourceEnvironmentName</tt>
--   . You may also specify both. If you specify the
--   <tt>SourceEnvironmentId</tt> , you must specify the
--   <tt>DestinationEnvironmentId</tt> .
secnameSourceEnvironmentId :: Lens' SwapEnvironmentCNAMEs (Maybe Text)

-- | Creates a value of <a>SwapEnvironmentCNAMEsResponse</a> with the
--   minimum fields required to make a request.
swapEnvironmentCNAMEsResponse :: SwapEnvironmentCNAMEsResponse

-- | <i>See:</i> <a>swapEnvironmentCNAMEsResponse</a> smart constructor.
data SwapEnvironmentCNAMEsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Data.Data.Data Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.SwapEnvironmentCNAMEs.SwapEnvironmentCNAMEs


-- | Retrieves the compiled information from a
--   <tt>RequestEnvironmentInfo</tt> request.
--   
--   Related Topics
--   
--   <ul>
--   <li><tt>RequestEnvironmentInfo</tt></li>
--   </ul>
module Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo

-- | Creates a value of <a>RetrieveEnvironmentInfo</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rEnvironmentName</a> - The name of the data's environment. If
--   no such environment is found, returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>rEnvironmentId</a> - The ID of the data's environment. If no
--   such environment is found, returns an <tt>InvalidParameterValue</tt>
--   error. Condition: You must specify either this or an EnvironmentName,
--   or both. If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>rInfoType</a> - The type of information to retrieve.</li>
--   </ul>
retrieveEnvironmentInfo :: EnvironmentInfoType -> RetrieveEnvironmentInfo

-- | Request to download logs retrieved with
--   <tt>RequestEnvironmentInfo</tt> .
--   
--   <i>See:</i> <a>retrieveEnvironmentInfo</a> smart constructor.
data RetrieveEnvironmentInfo

-- | The name of the data's environment. If no such environment is found,
--   returns an <tt>InvalidParameterValue</tt> error. Condition: You must
--   specify either this or an EnvironmentId, or both. If you do not
--   specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
rEnvironmentName :: Lens' RetrieveEnvironmentInfo (Maybe Text)

-- | The ID of the data's environment. If no such environment is found,
--   returns an <tt>InvalidParameterValue</tt> error. Condition: You must
--   specify either this or an EnvironmentName, or both. If you do not
--   specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
rEnvironmentId :: Lens' RetrieveEnvironmentInfo (Maybe Text)

-- | The type of information to retrieve.
rInfoType :: Lens' RetrieveEnvironmentInfo EnvironmentInfoType

-- | Creates a value of <a>RetrieveEnvironmentInfoResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>reirsEnvironmentInfo</a> - The
--   <a>EnvironmentInfoDescription</a> of the environment.</li>
--   <li><a>reirsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
retrieveEnvironmentInfoResponse :: Int -> RetrieveEnvironmentInfoResponse

-- | Result message containing a description of the requested environment
--   info.
--   
--   <i>See:</i> <a>retrieveEnvironmentInfoResponse</a> smart constructor.
data RetrieveEnvironmentInfoResponse

-- | The <a>EnvironmentInfoDescription</a> of the environment.
reirsEnvironmentInfo :: Lens' RetrieveEnvironmentInfoResponse [EnvironmentInfoDescription]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
reirsResponseStatus :: Lens' RetrieveEnvironmentInfoResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfoResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfoResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfoResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfoResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfoResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfoResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.RetrieveEnvironmentInfo.RetrieveEnvironmentInfo


-- | Causes the environment to restart the application container server
--   running on each Amazon EC2 instance.
module Network.AWS.ElasticBeanstalk.RestartAppServer

-- | Creates a value of <a>RestartAppServer</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rasEnvironmentName</a> - The name of the environment to restart
--   the server for. Condition: You must specify either this or an
--   EnvironmentId, or both. If you do not specify either, AWS Elastic
--   Beanstalk returns <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>rasEnvironmentId</a> - The ID of the environment to restart the
--   server for. Condition: You must specify either this or an
--   EnvironmentName, or both. If you do not specify either, AWS Elastic
--   Beanstalk returns <tt>MissingRequiredParameter</tt> error.</li>
--   </ul>
restartAppServer :: RestartAppServer

-- | <i>See:</i> <a>restartAppServer</a> smart constructor.
data RestartAppServer

-- | The name of the environment to restart the server for. Condition: You
--   must specify either this or an EnvironmentId, or both. If you do not
--   specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
rasEnvironmentName :: Lens' RestartAppServer (Maybe Text)

-- | The ID of the environment to restart the server for. Condition: You
--   must specify either this or an EnvironmentName, or both. If you do not
--   specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
rasEnvironmentId :: Lens' RestartAppServer (Maybe Text)

-- | Creates a value of <a>RestartAppServerResponse</a> with the minimum
--   fields required to make a request.
restartAppServerResponse :: RestartAppServerResponse

-- | <i>See:</i> <a>restartAppServerResponse</a> smart constructor.
data RestartAppServerResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServerResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServerResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServerResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServerResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServerResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServerResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.RestartAppServer.RestartAppServer


-- | Initiates a request to compile the specified type of information of
--   the deployed environment.
--   
--   Setting the <tt>InfoType</tt> to <tt>tail</tt> compiles the last lines
--   from the application server log files of every Amazon EC2 instance in
--   your environment.
--   
--   Setting the <tt>InfoType</tt> to <tt>bundle</tt> compresses the
--   application server log files for every Amazon EC2 instance into a
--   <tt>.zip</tt> file. Legacy and .NET containers do not support bundle
--   logs.
--   
--   Use <tt>RetrieveEnvironmentInfo</tt> to obtain the set of logs.
--   
--   Related Topics
--   
--   <ul>
--   <li><tt>RetrieveEnvironmentInfo</tt></li>
--   </ul>
module Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo

-- | Creates a value of <a>RequestEnvironmentInfo</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>reiEnvironmentName</a> - The name of the environment of the
--   requested data. If no such environment is found,
--   <tt>RequestEnvironmentInfo</tt> returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>reiEnvironmentId</a> - The ID of the environment of the
--   requested data. If no such environment is found,
--   <tt>RequestEnvironmentInfo</tt> returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentName, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>reiInfoType</a> - The type of information to request.</li>
--   </ul>
requestEnvironmentInfo :: EnvironmentInfoType -> RequestEnvironmentInfo

-- | Request to retrieve logs from an environment and store them in your
--   Elastic Beanstalk storage bucket.
--   
--   <i>See:</i> <a>requestEnvironmentInfo</a> smart constructor.
data RequestEnvironmentInfo

-- | The name of the environment of the requested data. If no such
--   environment is found, <tt>RequestEnvironmentInfo</tt> returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
reiEnvironmentName :: Lens' RequestEnvironmentInfo (Maybe Text)

-- | The ID of the environment of the requested data. If no such
--   environment is found, <tt>RequestEnvironmentInfo</tt> returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentName, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
reiEnvironmentId :: Lens' RequestEnvironmentInfo (Maybe Text)

-- | The type of information to request.
reiInfoType :: Lens' RequestEnvironmentInfo EnvironmentInfoType

-- | Creates a value of <a>RequestEnvironmentInfoResponse</a> with the
--   minimum fields required to make a request.
requestEnvironmentInfoResponse :: RequestEnvironmentInfoResponse

-- | <i>See:</i> <a>requestEnvironmentInfoResponse</a> smart constructor.
data RequestEnvironmentInfoResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfoResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfoResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfoResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfoResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfoResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfoResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.RequestEnvironmentInfo.RequestEnvironmentInfo


-- | Deletes and recreates all of the AWS resources (for example: the Auto
--   Scaling group, load balancer, etc.) for a specified environment and
--   forces a restart.
module Network.AWS.ElasticBeanstalk.RebuildEnvironment

-- | Creates a value of <a>RebuildEnvironment</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>reEnvironmentName</a> - The name of the environment to rebuild.
--   Condition: You must specify either this or an EnvironmentId, or both.
--   If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>reEnvironmentId</a> - The ID of the environment to rebuild.
--   Condition: You must specify either this or an EnvironmentName, or
--   both. If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   </ul>
rebuildEnvironment :: RebuildEnvironment

-- | <i>See:</i> <a>rebuildEnvironment</a> smart constructor.
data RebuildEnvironment

-- | The name of the environment to rebuild. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
reEnvironmentName :: Lens' RebuildEnvironment (Maybe Text)

-- | The ID of the environment to rebuild. Condition: You must specify
--   either this or an EnvironmentName, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
reEnvironmentId :: Lens' RebuildEnvironment (Maybe Text)

-- | Creates a value of <a>RebuildEnvironmentResponse</a> with the minimum
--   fields required to make a request.
rebuildEnvironmentResponse :: RebuildEnvironmentResponse

-- | <i>See:</i> <a>rebuildEnvironmentResponse</a> smart constructor.
data RebuildEnvironmentResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironmentResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironmentResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironmentResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironmentResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironmentResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Data.Data.Data Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironmentResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.RebuildEnvironment.RebuildEnvironment


-- | Returns the tags applied to an AWS Elastic Beanstalk resource. The
--   response contains a list of tag key-value pairs.
--   
--   Currently, Elastic Beanstalk only supports tagging of Elastic
--   Beanstalk environments. For details about environment tagging, see
--   <a>Tagging Resources in Your Elastic Beanstalk Environment</a> .
module Network.AWS.ElasticBeanstalk.ListTagsForResource

-- | Creates a value of <a>ListTagsForResource</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ltfrResourceARN</a> - The Amazon Resource Name (ARN) of the
--   resouce for which a tag list is requested. Must be the ARN of an
--   Elastic Beanstalk environment.</li>
--   </ul>
listTagsForResource :: Text -> ListTagsForResource

-- | <i>See:</i> <a>listTagsForResource</a> smart constructor.
data ListTagsForResource

-- | The Amazon Resource Name (ARN) of the resouce for which a tag list is
--   requested. Must be the ARN of an Elastic Beanstalk environment.
ltfrResourceARN :: Lens' ListTagsForResource Text

-- | Creates a value of <a>ListTagsForResourceResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ltfrrsResourceTags</a> - A list of tag key-value pairs.</li>
--   <li><a>ltfrrsResourceARN</a> - The Amazon Resource Name (ARN) of the
--   resouce for which a tag list was requested.</li>
--   <li><a>ltfrrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
listTagsForResourceResponse :: Int -> ListTagsForResourceResponse

-- | <i>See:</i> <a>listTagsForResourceResponse</a> smart constructor.
data ListTagsForResourceResponse

-- | A list of tag key-value pairs.
ltfrrsResourceTags :: Lens' ListTagsForResourceResponse [Tag]

-- | The Amazon Resource Name (ARN) of the resouce for which a tag list was
--   requested.
ltfrrsResourceARN :: Lens' ListTagsForResourceResponse (Maybe Text)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
ltfrrsResponseStatus :: Lens' ListTagsForResourceResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResourceResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResourceResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResourceResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.ListTagsForResource.ListTagsForResource


-- | Lists the available platforms.
module Network.AWS.ElasticBeanstalk.ListPlatformVersions

-- | Creates a value of <a>ListPlatformVersions</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lpvFilters</a> - List only the platforms where the platform
--   member value relates to one of the supplied values.</li>
--   <li><a>lpvNextToken</a> - The starting index into the remaining list
--   of platforms. Use the <tt>NextToken</tt> value from a previous
--   <tt>ListPlatformVersion</tt> call.</li>
--   <li><a>lpvMaxRecords</a> - The maximum number of platform values
--   returned in one call.</li>
--   </ul>
listPlatformVersions :: ListPlatformVersions

-- | <i>See:</i> <a>listPlatformVersions</a> smart constructor.
data ListPlatformVersions

-- | List only the platforms where the platform member value relates to one
--   of the supplied values.
lpvFilters :: Lens' ListPlatformVersions [PlatformFilter]

-- | The starting index into the remaining list of platforms. Use the
--   <tt>NextToken</tt> value from a previous <tt>ListPlatformVersion</tt>
--   call.
lpvNextToken :: Lens' ListPlatformVersions (Maybe Text)

-- | The maximum number of platform values returned in one call.
lpvMaxRecords :: Lens' ListPlatformVersions (Maybe Natural)

-- | Creates a value of <a>ListPlatformVersionsResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lpvrsNextToken</a> - The starting index into the remaining list
--   of platforms. if this value is not <tt>null</tt> , you can use it in a
--   subsequent <tt>ListPlatformVersion</tt> call.</li>
--   <li><a>lpvrsPlatformSummaryList</a> - Detailed information about the
--   platforms.</li>
--   <li><a>lpvrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
listPlatformVersionsResponse :: Int -> ListPlatformVersionsResponse

-- | <i>See:</i> <a>listPlatformVersionsResponse</a> smart constructor.
data ListPlatformVersionsResponse

-- | The starting index into the remaining list of platforms. if this value
--   is not <tt>null</tt> , you can use it in a subsequent
--   <tt>ListPlatformVersion</tt> call.
lpvrsNextToken :: Lens' ListPlatformVersionsResponse (Maybe Text)

-- | Detailed information about the platforms.
lpvrsPlatformSummaryList :: Lens' ListPlatformVersionsResponse [PlatformSummary]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
lpvrsResponseStatus :: Lens' ListPlatformVersionsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersionsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersionsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersionsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersionsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersionsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.ListPlatformVersions.ListPlatformVersions


-- | Returns a list of the available solution stack names, with the public
--   version first and then in reverse chronological order.
module Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks

-- | Creates a value of <a>ListAvailableSolutionStacks</a> with the minimum
--   fields required to make a request.
listAvailableSolutionStacks :: ListAvailableSolutionStacks

-- | <i>See:</i> <a>listAvailableSolutionStacks</a> smart constructor.
data ListAvailableSolutionStacks

-- | Creates a value of <a>ListAvailableSolutionStacksResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lassrsSolutionStacks</a> - A list of available solution
--   stacks.</li>
--   <li><a>lassrsSolutionStackDetails</a> - A list of available solution
--   stacks and their <a>SolutionStackDescription</a> .</li>
--   <li><a>lassrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
listAvailableSolutionStacksResponse :: Int -> ListAvailableSolutionStacksResponse

-- | A list of available AWS Elastic Beanstalk solution stacks.
--   
--   <i>See:</i> <a>listAvailableSolutionStacksResponse</a> smart
--   constructor.
data ListAvailableSolutionStacksResponse

-- | A list of available solution stacks.
lassrsSolutionStacks :: Lens' ListAvailableSolutionStacksResponse [Text]

-- | A list of available solution stacks and their
--   <a>SolutionStackDescription</a> .
lassrsSolutionStackDetails :: Lens' ListAvailableSolutionStacksResponse [SolutionStackDescription]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
lassrsResponseStatus :: Lens' ListAvailableSolutionStacksResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacksResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacksResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacksResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacksResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacksResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacksResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.ListAvailableSolutionStacks.ListAvailableSolutionStacks


-- | Describes the version of the platform.
module Network.AWS.ElasticBeanstalk.DescribePlatformVersion

-- | Creates a value of <a>DescribePlatformVersion</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dPlatformARN</a> - The ARN of the version of the platform.</li>
--   </ul>
describePlatformVersion :: DescribePlatformVersion

-- | <i>See:</i> <a>describePlatformVersion</a> smart constructor.
data DescribePlatformVersion

-- | The ARN of the version of the platform.
dPlatformARN :: Lens' DescribePlatformVersion (Maybe Text)

-- | Creates a value of <a>DescribePlatformVersionResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>drsPlatformDescription</a> - Detailed information about the
--   version of the platform.</li>
--   <li><a>drsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describePlatformVersionResponse :: Int -> DescribePlatformVersionResponse

-- | <i>See:</i> <a>describePlatformVersionResponse</a> smart constructor.
data DescribePlatformVersionResponse

-- | Detailed information about the version of the platform.
drsPlatformDescription :: Lens' DescribePlatformVersionResponse (Maybe PlatformDescription)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
drsResponseStatus :: Lens' DescribePlatformVersionResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersionResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersionResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersionResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersionResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersionResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersionResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribePlatformVersion.DescribePlatformVersion


-- | Retrives detailed information about the health of instances in your
--   AWS Elastic Beanstalk. This operation requires <a>enhanced health
--   reporting</a> .
module Network.AWS.ElasticBeanstalk.DescribeInstancesHealth

-- | Creates a value of <a>DescribeInstancesHealth</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dihNextToken</a> - Specify the pagination token returned by a
--   previous call.</li>
--   <li><a>dihEnvironmentName</a> - Specify the AWS Elastic Beanstalk
--   environment by name.</li>
--   <li><a>dihAttributeNames</a> - Specifies the response elements you
--   wish to receive. To retrieve all attributes, set to <tt>All</tt> . If
--   no attribute names are specified, returns a list of instances.</li>
--   <li><a>dihEnvironmentId</a> - Specify the AWS Elastic Beanstalk
--   environment by ID.</li>
--   </ul>
describeInstancesHealth :: DescribeInstancesHealth

-- | Parameters for a call to <tt>DescribeInstancesHealth</tt> .
--   
--   <i>See:</i> <a>describeInstancesHealth</a> smart constructor.
data DescribeInstancesHealth

-- | Specify the pagination token returned by a previous call.
dihNextToken :: Lens' DescribeInstancesHealth (Maybe Text)

-- | Specify the AWS Elastic Beanstalk environment by name.
dihEnvironmentName :: Lens' DescribeInstancesHealth (Maybe Text)

-- | Specifies the response elements you wish to receive. To retrieve all
--   attributes, set to <tt>All</tt> . If no attribute names are specified,
--   returns a list of instances.
dihAttributeNames :: Lens' DescribeInstancesHealth [InstancesHealthAttribute]

-- | Specify the AWS Elastic Beanstalk environment by ID.
dihEnvironmentId :: Lens' DescribeInstancesHealth (Maybe Text)

-- | Creates a value of <a>DescribeInstancesHealthResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dihrsInstanceHealthList</a> - Detailed health information about
--   each instance.</li>
--   <li><a>dihrsNextToken</a> - Pagination token for the next page of
--   results, if available.</li>
--   <li><a>dihrsRefreshedAt</a> - The date and time that the health
--   information was retrieved.</li>
--   <li><a>dihrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeInstancesHealthResponse :: Int -> DescribeInstancesHealthResponse

-- | Detailed health information about the Amazon EC2 instances in an AWS
--   Elastic Beanstalk environment.
--   
--   <i>See:</i> <a>describeInstancesHealthResponse</a> smart constructor.
data DescribeInstancesHealthResponse

-- | Detailed health information about each instance.
dihrsInstanceHealthList :: Lens' DescribeInstancesHealthResponse [SingleInstanceHealth]

-- | Pagination token for the next page of results, if available.
dihrsNextToken :: Lens' DescribeInstancesHealthResponse (Maybe Text)

-- | The date and time that the health information was retrieved.
dihrsRefreshedAt :: Lens' DescribeInstancesHealthResponse (Maybe UTCTime)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dihrsResponseStatus :: Lens' DescribeInstancesHealthResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealthResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealthResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealthResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealthResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealthResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealthResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeInstancesHealth.DescribeInstancesHealth


-- | Returns list of event descriptions matching criteria up to the last 6
--   weeks.
--   
--   This operation returns paginated results.
module Network.AWS.ElasticBeanstalk.DescribeEvents

-- | Creates a value of <a>DescribeEvents</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>deRequestId</a> - If specified, AWS Elastic Beanstalk restricts
--   the described events to include only those associated with this
--   request ID.</li>
--   <li><a>deTemplateName</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to those that are associated with
--   this environment configuration.</li>
--   <li><a>deStartTime</a> - If specified, AWS Elastic Beanstalk restricts
--   the returned descriptions to those that occur on or after this
--   time.</li>
--   <li><a>deSeverity</a> - If specified, limits the events returned from
--   this call to include only those with the specified severity or
--   higher.</li>
--   <li><a>deNextToken</a> - Pagination token. If specified, the events
--   return the next batch of results.</li>
--   <li><a>deVersionLabel</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to those associated with this
--   application version.</li>
--   <li><a>dePlatformARN</a> - The ARN of the version of the custom
--   platform.</li>
--   <li><a>deEnvironmentName</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to those associated with this
--   environment.</li>
--   <li><a>deMaxRecords</a> - Specifies the maximum number of events that
--   can be returned, beginning with the most recent event.</li>
--   <li><a>deEndTime</a> - If specified, AWS Elastic Beanstalk restricts
--   the returned descriptions to those that occur up to, but not
--   including, the <tt>EndTime</tt> .</li>
--   <li><a>deApplicationName</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to include only those associated
--   with this application.</li>
--   <li><a>deEnvironmentId</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to those associated with this
--   environment.</li>
--   </ul>
describeEvents :: DescribeEvents

-- | Request to retrieve a list of events for an environment.
--   
--   <i>See:</i> <a>describeEvents</a> smart constructor.
data DescribeEvents

-- | If specified, AWS Elastic Beanstalk restricts the described events to
--   include only those associated with this request ID.
deRequestId :: Lens' DescribeEvents (Maybe Text)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to those that are associated with this environment
--   configuration.
deTemplateName :: Lens' DescribeEvents (Maybe Text)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to those that occur on or after this time.
deStartTime :: Lens' DescribeEvents (Maybe UTCTime)

-- | If specified, limits the events returned from this call to include
--   only those with the specified severity or higher.
deSeverity :: Lens' DescribeEvents (Maybe EventSeverity)

-- | Pagination token. If specified, the events return the next batch of
--   results.
deNextToken :: Lens' DescribeEvents (Maybe Text)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to those associated with this application version.
deVersionLabel :: Lens' DescribeEvents (Maybe Text)

-- | The ARN of the version of the custom platform.
dePlatformARN :: Lens' DescribeEvents (Maybe Text)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to those associated with this environment.
deEnvironmentName :: Lens' DescribeEvents (Maybe Text)

-- | Specifies the maximum number of events that can be returned, beginning
--   with the most recent event.
deMaxRecords :: Lens' DescribeEvents (Maybe Natural)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to those that occur up to, but not including, the
--   <tt>EndTime</tt> .
deEndTime :: Lens' DescribeEvents (Maybe UTCTime)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to include only those associated with this application.
deApplicationName :: Lens' DescribeEvents (Maybe Text)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to those associated with this environment.
deEnvironmentId :: Lens' DescribeEvents (Maybe Text)

-- | Creates a value of <a>DescribeEventsResponse</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dersNextToken</a> - If returned, this indicates that there are
--   more results to obtain. Use this token in the next
--   <a>DescribeEvents</a> call to get the next batch of events.</li>
--   <li><a>dersEvents</a> - A list of <a>EventDescription</a> .</li>
--   <li><a>dersResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeEventsResponse :: Int -> DescribeEventsResponse

-- | Result message wrapping a list of event descriptions.
--   
--   <i>See:</i> <a>describeEventsResponse</a> smart constructor.
data DescribeEventsResponse

-- | If returned, this indicates that there are more results to obtain. Use
--   this token in the next <a>DescribeEvents</a> call to get the next
--   batch of events.
dersNextToken :: Lens' DescribeEventsResponse (Maybe Text)

-- | A list of <a>EventDescription</a> .
dersEvents :: Lens' DescribeEventsResponse [EventDescription]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dersResponseStatus :: Lens' DescribeEventsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEventsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEventsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEventsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEventsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEventsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEventsResponse
instance Network.AWS.Pager.AWSPager Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeEvents.DescribeEvents


-- | Returns descriptions for existing environments.
module Network.AWS.ElasticBeanstalk.DescribeEnvironments

-- | Creates a value of <a>DescribeEnvironments</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>desEnvironmentIds</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to include only those that have
--   the specified IDs.</li>
--   <li><a>desEnvironmentNames</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to include only those that have
--   the specified names.</li>
--   <li><a>desNextToken</a> - For a paginated request. Specify a token
--   from a previous response page to retrieve the next response page. All
--   other parameter values must be identical to the ones specified in the
--   initial request. If no <tt>NextToken</tt> is specified, the first page
--   is retrieved.</li>
--   <li><a>desVersionLabel</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to include only those that are
--   associated with this application version.</li>
--   <li><a>desMaxRecords</a> - For a paginated request. Specify a maximum
--   number of environments to include in each response. If no
--   <tt>MaxRecords</tt> is specified, all available environments are
--   retrieved in a single response.</li>
--   <li><a>desApplicationName</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to include only those that are
--   associated with this application.</li>
--   <li><a>desIncludedDeletedBackTo</a> - If specified when
--   <tt>IncludeDeleted</tt> is set to <tt>true</tt> , then environments
--   deleted after this date are displayed.</li>
--   <li><a>desIncludeDeleted</a> - Indicates whether to include deleted
--   environments: <tt>true</tt> : Environments that have been deleted
--   after <tt>IncludedDeletedBackTo</tt> are displayed. <tt>false</tt> :
--   Do not include deleted environments.</li>
--   </ul>
describeEnvironments :: DescribeEnvironments

-- | Request to describe one or more environments.
--   
--   <i>See:</i> <a>describeEnvironments</a> smart constructor.
data DescribeEnvironments

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to include only those that have the specified IDs.
desEnvironmentIds :: Lens' DescribeEnvironments [Text]

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to include only those that have the specified names.
desEnvironmentNames :: Lens' DescribeEnvironments [Text]

-- | For a paginated request. Specify a token from a previous response page
--   to retrieve the next response page. All other parameter values must be
--   identical to the ones specified in the initial request. If no
--   <tt>NextToken</tt> is specified, the first page is retrieved.
desNextToken :: Lens' DescribeEnvironments (Maybe Text)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to include only those that are associated with this
--   application version.
desVersionLabel :: Lens' DescribeEnvironments (Maybe Text)

-- | For a paginated request. Specify a maximum number of environments to
--   include in each response. If no <tt>MaxRecords</tt> is specified, all
--   available environments are retrieved in a single response.
desMaxRecords :: Lens' DescribeEnvironments (Maybe Natural)

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to include only those that are associated with this
--   application.
desApplicationName :: Lens' DescribeEnvironments (Maybe Text)

-- | If specified when <tt>IncludeDeleted</tt> is set to <tt>true</tt> ,
--   then environments deleted after this date are displayed.
desIncludedDeletedBackTo :: Lens' DescribeEnvironments (Maybe UTCTime)

-- | Indicates whether to include deleted environments: <tt>true</tt> :
--   Environments that have been deleted after
--   <tt>IncludedDeletedBackTo</tt> are displayed. <tt>false</tt> : Do not
--   include deleted environments.
desIncludeDeleted :: Lens' DescribeEnvironments (Maybe Bool)

-- | Creates a value of <a>EnvironmentDescriptionsMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>edmNextToken</a> - In a paginated request, the token that you
--   can pass in a subsequent request to get the next response page.</li>
--   <li><a>edmEnvironments</a> - Returns an <a>EnvironmentDescription</a>
--   list.</li>
--   </ul>
environmentDescriptionsMessage :: EnvironmentDescriptionsMessage

-- | Result message containing a list of environment descriptions.
--   
--   <i>See:</i> <a>environmentDescriptionsMessage</a> smart constructor.
data EnvironmentDescriptionsMessage

-- | In a paginated request, the token that you can pass in a subsequent
--   request to get the next response page.
edmNextToken :: Lens' EnvironmentDescriptionsMessage (Maybe Text)

-- | Returns an <a>EnvironmentDescription</a> list.
edmEnvironments :: Lens' EnvironmentDescriptionsMessage [EnvironmentDescription]
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeEnvironments.DescribeEnvironments


-- | Returns AWS resources for this environment.
module Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources

-- | Creates a value of <a>DescribeEnvironmentResources</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>derEnvironmentName</a> - The name of the environment to
--   retrieve AWS resource usage data. Condition: You must specify either
--   this or an EnvironmentId, or both. If you do not specify either, AWS
--   Elastic Beanstalk returns <tt>MissingRequiredParameter</tt>
--   error.</li>
--   <li><a>derEnvironmentId</a> - The ID of the environment to retrieve
--   AWS resource usage data. Condition: You must specify either this or an
--   EnvironmentName, or both. If you do not specify either, AWS Elastic
--   Beanstalk returns <tt>MissingRequiredParameter</tt> error.</li>
--   </ul>
describeEnvironmentResources :: DescribeEnvironmentResources

-- | Request to describe the resources in an environment.
--   
--   <i>See:</i> <a>describeEnvironmentResources</a> smart constructor.
data DescribeEnvironmentResources

-- | The name of the environment to retrieve AWS resource usage data.
--   Condition: You must specify either this or an EnvironmentId, or both.
--   If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
derEnvironmentName :: Lens' DescribeEnvironmentResources (Maybe Text)

-- | The ID of the environment to retrieve AWS resource usage data.
--   Condition: You must specify either this or an EnvironmentName, or
--   both. If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
derEnvironmentId :: Lens' DescribeEnvironmentResources (Maybe Text)

-- | Creates a value of <a>DescribeEnvironmentResourcesResponse</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>derrsEnvironmentResources</a> - A list of
--   <a>EnvironmentResourceDescription</a> .</li>
--   <li><a>derrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeEnvironmentResourcesResponse :: Int -> DescribeEnvironmentResourcesResponse

-- | Result message containing a list of environment resource descriptions.
--   
--   <i>See:</i> <a>describeEnvironmentResourcesResponse</a> smart
--   constructor.
data DescribeEnvironmentResourcesResponse

-- | A list of <a>EnvironmentResourceDescription</a> .
derrsEnvironmentResources :: Lens' DescribeEnvironmentResourcesResponse (Maybe EnvironmentResourceDescription)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
derrsResponseStatus :: Lens' DescribeEnvironmentResourcesResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResourcesResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResourcesResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResourcesResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResourcesResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResourcesResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResourcesResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeEnvironmentResources.DescribeEnvironmentResources


-- | Lists an environment's upcoming and in-progress managed actions.
module Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions

-- | Creates a value of <a>DescribeEnvironmentManagedActions</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>demaStatus</a> - To show only actions with a particular status,
--   specify a status.</li>
--   <li><a>demaEnvironmentName</a> - The name of the target
--   environment.</li>
--   <li><a>demaEnvironmentId</a> - The environment ID of the target
--   environment.</li>
--   </ul>
describeEnvironmentManagedActions :: DescribeEnvironmentManagedActions

-- | Request to list an environment's upcoming and in-progress managed
--   actions.
--   
--   <i>See:</i> <a>describeEnvironmentManagedActions</a> smart
--   constructor.
data DescribeEnvironmentManagedActions

-- | To show only actions with a particular status, specify a status.
demaStatus :: Lens' DescribeEnvironmentManagedActions (Maybe ActionStatus)

-- | The name of the target environment.
demaEnvironmentName :: Lens' DescribeEnvironmentManagedActions (Maybe Text)

-- | The environment ID of the target environment.
demaEnvironmentId :: Lens' DescribeEnvironmentManagedActions (Maybe Text)

-- | Creates a value of <a>DescribeEnvironmentManagedActionsResponse</a>
--   with the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>demarsManagedActions</a> - A list of upcoming and in-progress
--   managed actions.</li>
--   <li><a>demarsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeEnvironmentManagedActionsResponse :: Int -> DescribeEnvironmentManagedActionsResponse

-- | The result message containing a list of managed actions.
--   
--   <i>See:</i> <a>describeEnvironmentManagedActionsResponse</a> smart
--   constructor.
data DescribeEnvironmentManagedActionsResponse

-- | A list of upcoming and in-progress managed actions.
demarsManagedActions :: Lens' DescribeEnvironmentManagedActionsResponse (Maybe (NonEmpty ManagedAction))

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
demarsResponseStatus :: Lens' DescribeEnvironmentManagedActionsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActionsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActionsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActionsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActionsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActionsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActions.DescribeEnvironmentManagedActions


-- | Lists an environment's completed and failed managed actions.
module Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory

-- | Creates a value of <a>DescribeEnvironmentManagedActionHistory</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>demahNextToken</a> - The pagination token returned by a
--   previous request.</li>
--   <li><a>demahEnvironmentName</a> - The name of the target
--   environment.</li>
--   <li><a>demahMaxItems</a> - The maximum number of items to return for a
--   single request.</li>
--   <li><a>demahEnvironmentId</a> - The environment ID of the target
--   environment.</li>
--   </ul>
describeEnvironmentManagedActionHistory :: DescribeEnvironmentManagedActionHistory

-- | Request to list completed and failed managed actions.
--   
--   <i>See:</i> <a>describeEnvironmentManagedActionHistory</a> smart
--   constructor.
data DescribeEnvironmentManagedActionHistory

-- | The pagination token returned by a previous request.
demahNextToken :: Lens' DescribeEnvironmentManagedActionHistory (Maybe Text)

-- | The name of the target environment.
demahEnvironmentName :: Lens' DescribeEnvironmentManagedActionHistory (Maybe Text)

-- | The maximum number of items to return for a single request.
demahMaxItems :: Lens' DescribeEnvironmentManagedActionHistory (Maybe Int)

-- | The environment ID of the target environment.
demahEnvironmentId :: Lens' DescribeEnvironmentManagedActionHistory (Maybe Text)

-- | Creates a value of
--   <a>DescribeEnvironmentManagedActionHistoryResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>demahrsManagedActionHistoryItems</a> - A list of completed and
--   failed managed actions.</li>
--   <li><a>demahrsNextToken</a> - A pagination token that you pass to
--   <a>DescribeEnvironmentManagedActionHistory</a> to get the next page of
--   results.</li>
--   <li><a>demahrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeEnvironmentManagedActionHistoryResponse :: Int -> DescribeEnvironmentManagedActionHistoryResponse

-- | A result message containing a list of completed and failed managed
--   actions.
--   
--   <i>See:</i> <a>describeEnvironmentManagedActionHistoryResponse</a>
--   smart constructor.
data DescribeEnvironmentManagedActionHistoryResponse

-- | A list of completed and failed managed actions.
demahrsManagedActionHistoryItems :: Lens' DescribeEnvironmentManagedActionHistoryResponse (Maybe (NonEmpty ManagedActionHistoryItem))

-- | A pagination token that you pass to
--   <a>DescribeEnvironmentManagedActionHistory</a> to get the next page of
--   results.
demahrsNextToken :: Lens' DescribeEnvironmentManagedActionHistoryResponse (Maybe Text)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
demahrsResponseStatus :: Lens' DescribeEnvironmentManagedActionHistoryResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistoryResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistoryResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistoryResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistoryResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistoryResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistoryResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeEnvironmentManagedActionHistory.DescribeEnvironmentManagedActionHistory


-- | Returns information about the overall health of the specified
--   environment. The <b>DescribeEnvironmentHealth</b> operation is only
--   available with AWS Elastic Beanstalk Enhanced Health.
module Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth

-- | Creates a value of <a>DescribeEnvironmentHealth</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dehEnvironmentName</a> - Specify the environment by name. You
--   must specify either this or an EnvironmentName, or both.</li>
--   <li><a>dehAttributeNames</a> - Specify the response elements to
--   return. To retrieve all attributes, set to <tt>All</tt> . If no
--   attribute names are specified, returns the name of the
--   environment.</li>
--   <li><a>dehEnvironmentId</a> - Specify the environment by ID. You must
--   specify either this or an EnvironmentName, or both.</li>
--   </ul>
describeEnvironmentHealth :: DescribeEnvironmentHealth

-- | See the example below to learn how to create a request body.
--   
--   <i>See:</i> <a>describeEnvironmentHealth</a> smart constructor.
data DescribeEnvironmentHealth

-- | Specify the environment by name. You must specify either this or an
--   EnvironmentName, or both.
dehEnvironmentName :: Lens' DescribeEnvironmentHealth (Maybe Text)

-- | Specify the response elements to return. To retrieve all attributes,
--   set to <tt>All</tt> . If no attribute names are specified, returns the
--   name of the environment.
dehAttributeNames :: Lens' DescribeEnvironmentHealth [EnvironmentHealthAttribute]

-- | Specify the environment by ID. You must specify either this or an
--   EnvironmentName, or both.
dehEnvironmentId :: Lens' DescribeEnvironmentHealth (Maybe Text)

-- | Creates a value of <a>DescribeEnvironmentHealthResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dehrsStatus</a> - The environment's operational status.
--   <tt>Ready</tt> , <tt>Launching</tt> , <tt>Updating</tt> ,
--   <tt>Terminating</tt> , or <tt>Terminated</tt> .</li>
--   <li><a>dehrsCauses</a> - Descriptions of the data that contributed to
--   the environment's current health status.</li>
--   <li><a>dehrsApplicationMetrics</a> - Application request metrics for
--   the environment.</li>
--   <li><a>dehrsColor</a> - The <a>health color</a> of the
--   environment.</li>
--   <li><a>dehrsEnvironmentName</a> - The environment's name.</li>
--   <li><a>dehrsHealthStatus</a> - The <a>health status</a> of the
--   environment. For example, <tt>Ok</tt> .</li>
--   <li><a>dehrsInstancesHealth</a> - Summary health information for the
--   instances in the environment.</li>
--   <li><a>dehrsRefreshedAt</a> - The date and time that the health
--   information was retrieved.</li>
--   <li><a>dehrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeEnvironmentHealthResponse :: Int -> DescribeEnvironmentHealthResponse

-- | Health details for an AWS Elastic Beanstalk environment.
--   
--   <i>See:</i> <a>describeEnvironmentHealthResponse</a> smart
--   constructor.
data DescribeEnvironmentHealthResponse

-- | The environment's operational status. <tt>Ready</tt> ,
--   <tt>Launching</tt> , <tt>Updating</tt> , <tt>Terminating</tt> , or
--   <tt>Terminated</tt> .
dehrsStatus :: Lens' DescribeEnvironmentHealthResponse (Maybe EnvironmentHealth)

-- | Descriptions of the data that contributed to the environment's current
--   health status.
dehrsCauses :: Lens' DescribeEnvironmentHealthResponse [Text]

-- | Application request metrics for the environment.
dehrsApplicationMetrics :: Lens' DescribeEnvironmentHealthResponse (Maybe ApplicationMetrics)

-- | The <a>health color</a> of the environment.
dehrsColor :: Lens' DescribeEnvironmentHealthResponse (Maybe Text)

-- | The environment's name.
dehrsEnvironmentName :: Lens' DescribeEnvironmentHealthResponse (Maybe Text)

-- | The <a>health status</a> of the environment. For example, <tt>Ok</tt>
--   .
dehrsHealthStatus :: Lens' DescribeEnvironmentHealthResponse (Maybe Text)

-- | Summary health information for the instances in the environment.
dehrsInstancesHealth :: Lens' DescribeEnvironmentHealthResponse (Maybe InstanceHealthSummary)

-- | The date and time that the health information was retrieved.
dehrsRefreshedAt :: Lens' DescribeEnvironmentHealthResponse (Maybe UTCTime)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dehrsResponseStatus :: Lens' DescribeEnvironmentHealthResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealthResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealthResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealthResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealthResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealthResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealthResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeEnvironmentHealth.DescribeEnvironmentHealth


-- | Returns a description of the settings for the specified configuration
--   set, that is, either a configuration template or the configuration set
--   associated with a running environment.
--   
--   When describing the settings for the configuration set associated with
--   a running environment, it is possible to receive two sets of setting
--   descriptions. One is the deployed configuration set, and the other is
--   a draft configuration of an environment that is either in the process
--   of deployment or that failed to deploy.
--   
--   Related Topics
--   
--   <ul>
--   <li><tt>DeleteEnvironmentConfiguration</tt></li>
--   </ul>
module Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings

-- | Creates a value of <a>DescribeConfigurationSettings</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dcsTemplateName</a> - The name of the configuration template to
--   describe. Conditional: You must specify either this parameter or an
--   EnvironmentName, but not both. If you specify both, AWS Elastic
--   Beanstalk returns an <tt>InvalidParameterCombination</tt> error. If
--   you do not specify either, AWS Elastic Beanstalk returns a
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>dcsEnvironmentName</a> - The name of the environment to
--   describe. Condition: You must specify either this or a TemplateName,
--   but not both. If you specify both, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterCombination</tt> error. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>dcsApplicationName</a> - The application for the environment or
--   configuration template.</li>
--   </ul>
describeConfigurationSettings :: Text -> DescribeConfigurationSettings

-- | Result message containing all of the configuration settings for a
--   specified solution stack or configuration template.
--   
--   <i>See:</i> <a>describeConfigurationSettings</a> smart constructor.
data DescribeConfigurationSettings

-- | The name of the configuration template to describe. Conditional: You
--   must specify either this parameter or an EnvironmentName, but not
--   both. If you specify both, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterCombination</tt> error. If you do not specify
--   either, AWS Elastic Beanstalk returns a
--   <tt>MissingRequiredParameter</tt> error.
dcsTemplateName :: Lens' DescribeConfigurationSettings (Maybe Text)

-- | The name of the environment to describe. Condition: You must specify
--   either this or a TemplateName, but not both. If you specify both, AWS
--   Elastic Beanstalk returns an <tt>InvalidParameterCombination</tt>
--   error. If you do not specify either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
dcsEnvironmentName :: Lens' DescribeConfigurationSettings (Maybe Text)

-- | The application for the environment or configuration template.
dcsApplicationName :: Lens' DescribeConfigurationSettings Text

-- | Creates a value of <a>DescribeConfigurationSettingsResponse</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dcsrsConfigurationSettings</a> - A list of
--   <a>ConfigurationSettingsDescription</a> .</li>
--   <li><a>dcsrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeConfigurationSettingsResponse :: Int -> DescribeConfigurationSettingsResponse

-- | The results from a request to change the configuration settings of an
--   environment.
--   
--   <i>See:</i> <a>describeConfigurationSettingsResponse</a> smart
--   constructor.
data DescribeConfigurationSettingsResponse

-- | A list of <a>ConfigurationSettingsDescription</a> .
dcsrsConfigurationSettings :: Lens' DescribeConfigurationSettingsResponse [ConfigurationSettingsDescription]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dcsrsResponseStatus :: Lens' DescribeConfigurationSettingsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettingsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettingsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettingsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettingsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettingsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettingsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeConfigurationSettings.DescribeConfigurationSettings


-- | Describes the configuration options that are used in a particular
--   configuration template or environment, or that a specified solution
--   stack defines. The description includes the values the options, their
--   default values, and an indication of the required action on a running
--   environment if an option value is changed.
module Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions

-- | Creates a value of <a>DescribeConfigurationOptions</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dcoTemplateName</a> - The name of the configuration template
--   whose configuration options you want to describe.</li>
--   <li><a>dcoPlatformARN</a> - The ARN of the custom platform.</li>
--   <li><a>dcoEnvironmentName</a> - The name of the environment whose
--   configuration options you want to describe.</li>
--   <li><a>dcoApplicationName</a> - The name of the application associated
--   with the configuration template or environment. Only needed if you
--   want to describe the configuration options associated with either the
--   configuration template or environment.</li>
--   <li><a>dcoSolutionStackName</a> - The name of the solution stack whose
--   configuration options you want to describe.</li>
--   <li><a>dcoOptions</a> - If specified, restricts the descriptions to
--   only the specified options.</li>
--   </ul>
describeConfigurationOptions :: DescribeConfigurationOptions

-- | Result message containing a list of application version descriptions.
--   
--   <i>See:</i> <a>describeConfigurationOptions</a> smart constructor.
data DescribeConfigurationOptions

-- | The name of the configuration template whose configuration options you
--   want to describe.
dcoTemplateName :: Lens' DescribeConfigurationOptions (Maybe Text)

-- | The ARN of the custom platform.
dcoPlatformARN :: Lens' DescribeConfigurationOptions (Maybe Text)

-- | The name of the environment whose configuration options you want to
--   describe.
dcoEnvironmentName :: Lens' DescribeConfigurationOptions (Maybe Text)

-- | The name of the application associated with the configuration template
--   or environment. Only needed if you want to describe the configuration
--   options associated with either the configuration template or
--   environment.
dcoApplicationName :: Lens' DescribeConfigurationOptions (Maybe Text)

-- | The name of the solution stack whose configuration options you want to
--   describe.
dcoSolutionStackName :: Lens' DescribeConfigurationOptions (Maybe Text)

-- | If specified, restricts the descriptions to only the specified
--   options.
dcoOptions :: Lens' DescribeConfigurationOptions [OptionSpecification]

-- | Creates a value of <a>DescribeConfigurationOptionsResponse</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dcorsPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>dcorsSolutionStackName</a> - The name of the solution stack
--   these configuration options belong to.</li>
--   <li><a>dcorsOptions</a> - A list of
--   <a>ConfigurationOptionDescription</a> .</li>
--   <li><a>dcorsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeConfigurationOptionsResponse :: Int -> DescribeConfigurationOptionsResponse

-- | Describes the settings for a specified configuration set.
--   
--   <i>See:</i> <a>describeConfigurationOptionsResponse</a> smart
--   constructor.
data DescribeConfigurationOptionsResponse

-- | The ARN of the platform.
dcorsPlatformARN :: Lens' DescribeConfigurationOptionsResponse (Maybe Text)

-- | The name of the solution stack these configuration options belong to.
dcorsSolutionStackName :: Lens' DescribeConfigurationOptionsResponse (Maybe Text)

-- | A list of <a>ConfigurationOptionDescription</a> .
dcorsOptions :: Lens' DescribeConfigurationOptionsResponse [ConfigurationOptionDescription]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dcorsResponseStatus :: Lens' DescribeConfigurationOptionsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptionsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptionsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptionsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptionsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptionsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeConfigurationOptions.DescribeConfigurationOptions


-- | Returns the descriptions of existing applications.
module Network.AWS.ElasticBeanstalk.DescribeApplications

-- | Creates a value of <a>DescribeApplications</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daApplicationNames</a> - If specified, AWS Elastic Beanstalk
--   restricts the returned descriptions to only include those with the
--   specified names.</li>
--   </ul>
describeApplications :: DescribeApplications

-- | Request to describe one or more applications.
--   
--   <i>See:</i> <a>describeApplications</a> smart constructor.
data DescribeApplications

-- | If specified, AWS Elastic Beanstalk restricts the returned
--   descriptions to only include those with the specified names.
daApplicationNames :: Lens' DescribeApplications [Text]

-- | Creates a value of <a>DescribeApplicationsResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>darsApplications</a> - This parameter contains a list of
--   <a>ApplicationDescription</a> .</li>
--   <li><a>darsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeApplicationsResponse :: Int -> DescribeApplicationsResponse

-- | Result message containing a list of application descriptions.
--   
--   <i>See:</i> <a>describeApplicationsResponse</a> smart constructor.
data DescribeApplicationsResponse

-- | This parameter contains a list of <a>ApplicationDescription</a> .
darsApplications :: Lens' DescribeApplicationsResponse [ApplicationDescription]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
darsResponseStatus :: Lens' DescribeApplicationsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplicationsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplicationsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplicationsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplicationsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplicationsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplicationsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeApplications.DescribeApplications


-- | Retrieve a list of application versions.
module Network.AWS.ElasticBeanstalk.DescribeApplicationVersions

-- | Creates a value of <a>DescribeApplicationVersions</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dVersionLabels</a> - Specify a version label to show a specific
--   application version.</li>
--   <li><a>dNextToken</a> - For a paginated request. Specify a token from
--   a previous response page to retrieve the next response page. All other
--   parameter values must be identical to the ones specified in the
--   initial request. If no <tt>NextToken</tt> is specified, the first page
--   is retrieved.</li>
--   <li><a>dMaxRecords</a> - For a paginated request. Specify a maximum
--   number of application versions to include in each response. If no
--   <tt>MaxRecords</tt> is specified, all available application versions
--   are retrieved in a single response.</li>
--   <li><a>dApplicationName</a> - Specify an application name to show only
--   application versions for that application.</li>
--   </ul>
describeApplicationVersions :: DescribeApplicationVersions

-- | Request to describe application versions.
--   
--   <i>See:</i> <a>describeApplicationVersions</a> smart constructor.
data DescribeApplicationVersions

-- | Specify a version label to show a specific application version.
dVersionLabels :: Lens' DescribeApplicationVersions [Text]

-- | For a paginated request. Specify a token from a previous response page
--   to retrieve the next response page. All other parameter values must be
--   identical to the ones specified in the initial request. If no
--   <tt>NextToken</tt> is specified, the first page is retrieved.
dNextToken :: Lens' DescribeApplicationVersions (Maybe Text)

-- | For a paginated request. Specify a maximum number of application
--   versions to include in each response. If no <tt>MaxRecords</tt> is
--   specified, all available application versions are retrieved in a
--   single response.
dMaxRecords :: Lens' DescribeApplicationVersions (Maybe Natural)

-- | Specify an application name to show only application versions for that
--   application.
dApplicationName :: Lens' DescribeApplicationVersions (Maybe Text)

-- | Creates a value of <a>DescribeApplicationVersionsResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>davrsApplicationVersions</a> - List of
--   <tt>ApplicationVersionDescription</tt> objects sorted in order of
--   creation.</li>
--   <li><a>davrsNextToken</a> - In a paginated request, the token that you
--   can pass in a subsequent request to get the next response page.</li>
--   <li><a>davrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeApplicationVersionsResponse :: Int -> DescribeApplicationVersionsResponse

-- | Result message wrapping a list of application version descriptions.
--   
--   <i>See:</i> <a>describeApplicationVersionsResponse</a> smart
--   constructor.
data DescribeApplicationVersionsResponse

-- | List of <tt>ApplicationVersionDescription</tt> objects sorted in order
--   of creation.
davrsApplicationVersions :: Lens' DescribeApplicationVersionsResponse [ApplicationVersionDescription]

-- | In a paginated request, the token that you can pass in a subsequent
--   request to get the next response page.
davrsNextToken :: Lens' DescribeApplicationVersionsResponse (Maybe Text)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
davrsResponseStatus :: Lens' DescribeApplicationVersionsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersionsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersionsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersionsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersionsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersionsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersionsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeApplicationVersions.DescribeApplicationVersions


-- | Returns attributes related to AWS Elastic Beanstalk that are
--   associated with the calling AWS account.
--   
--   The result currently has one set of attributes—resource quotas.
module Network.AWS.ElasticBeanstalk.DescribeAccountAttributes

-- | Creates a value of <a>DescribeAccountAttributes</a> with the minimum
--   fields required to make a request.
describeAccountAttributes :: DescribeAccountAttributes

-- | <i>See:</i> <a>describeAccountAttributes</a> smart constructor.
data DescribeAccountAttributes

-- | Creates a value of <a>DescribeAccountAttributesResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daarsResourceQuotas</a> - The Elastic Beanstalk resource quotas
--   associated with the calling AWS account.</li>
--   <li><a>daarsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
describeAccountAttributesResponse :: Int -> DescribeAccountAttributesResponse

-- | <i>See:</i> <a>describeAccountAttributesResponse</a> smart
--   constructor.
data DescribeAccountAttributesResponse

-- | The Elastic Beanstalk resource quotas associated with the calling AWS
--   account.
daarsResourceQuotas :: Lens' DescribeAccountAttributesResponse (Maybe ResourceQuotas)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
daarsResponseStatus :: Lens' DescribeAccountAttributesResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributesResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributesResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributesResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributesResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributesResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributesResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DescribeAccountAttributes.DescribeAccountAttributes


-- | Deletes the specified version of a custom platform.
module Network.AWS.ElasticBeanstalk.DeletePlatformVersion

-- | Creates a value of <a>DeletePlatformVersion</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dpvPlatformARN</a> - The ARN of the version of the custom
--   platform.</li>
--   </ul>
deletePlatformVersion :: DeletePlatformVersion

-- | <i>See:</i> <a>deletePlatformVersion</a> smart constructor.
data DeletePlatformVersion

-- | The ARN of the version of the custom platform.
dpvPlatformARN :: Lens' DeletePlatformVersion (Maybe Text)

-- | Creates a value of <a>DeletePlatformVersionResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dpvrsPlatformSummary</a> - Detailed information about the
--   version of the custom platform.</li>
--   <li><a>dpvrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
deletePlatformVersionResponse :: Int -> DeletePlatformVersionResponse

-- | <i>See:</i> <a>deletePlatformVersionResponse</a> smart constructor.
data DeletePlatformVersionResponse

-- | Detailed information about the version of the custom platform.
dpvrsPlatformSummary :: Lens' DeletePlatformVersionResponse (Maybe PlatformSummary)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
dpvrsResponseStatus :: Lens' DeletePlatformVersionResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersionResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersionResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersionResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersionResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersionResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersionResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DeletePlatformVersion.DeletePlatformVersion


-- | Deletes the draft configuration associated with the running
--   environment.
--   
--   Updating a running environment with any configuration changes creates
--   a draft configuration set. You can get the draft configuration using
--   <tt>DescribeConfigurationSettings</tt> while the update is in progress
--   or if the update fails. The <tt>DeploymentStatus</tt> for the draft
--   configuration indicates whether the deployment is in process or has
--   failed. The draft configuration remains in existence until it is
--   deleted with this action.
module Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration

-- | Creates a value of <a>DeleteEnvironmentConfiguration</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>decApplicationName</a> - The name of the application the
--   environment is associated with.</li>
--   <li><a>decEnvironmentName</a> - The name of the environment to delete
--   the draft configuration from.</li>
--   </ul>
deleteEnvironmentConfiguration :: Text -> Text -> DeleteEnvironmentConfiguration

-- | Request to delete a draft environment configuration.
--   
--   <i>See:</i> <a>deleteEnvironmentConfiguration</a> smart constructor.
data DeleteEnvironmentConfiguration

-- | The name of the application the environment is associated with.
decApplicationName :: Lens' DeleteEnvironmentConfiguration Text

-- | The name of the environment to delete the draft configuration from.
decEnvironmentName :: Lens' DeleteEnvironmentConfiguration Text

-- | Creates a value of <a>DeleteEnvironmentConfigurationResponse</a> with
--   the minimum fields required to make a request.
deleteEnvironmentConfigurationResponse :: DeleteEnvironmentConfigurationResponse

-- | <i>See:</i> <a>deleteEnvironmentConfigurationResponse</a> smart
--   constructor.
data DeleteEnvironmentConfigurationResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfigurationResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfigurationResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfigurationResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfigurationResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfigurationResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfigurationResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DeleteEnvironmentConfiguration.DeleteEnvironmentConfiguration


-- | Deletes the specified configuration template.
module Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate

-- | Creates a value of <a>DeleteConfigurationTemplate</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dctApplicationName</a> - The name of the application to delete
--   the configuration template from.</li>
--   <li><a>dctTemplateName</a> - The name of the configuration template to
--   delete.</li>
--   </ul>
deleteConfigurationTemplate :: Text -> Text -> DeleteConfigurationTemplate

-- | Request to delete a configuration template.
--   
--   <i>See:</i> <a>deleteConfigurationTemplate</a> smart constructor.
data DeleteConfigurationTemplate

-- | The name of the application to delete the configuration template from.
dctApplicationName :: Lens' DeleteConfigurationTemplate Text

-- | The name of the configuration template to delete.
dctTemplateName :: Lens' DeleteConfigurationTemplate Text

-- | Creates a value of <a>DeleteConfigurationTemplateResponse</a> with the
--   minimum fields required to make a request.
deleteConfigurationTemplateResponse :: DeleteConfigurationTemplateResponse

-- | <i>See:</i> <a>deleteConfigurationTemplateResponse</a> smart
--   constructor.
data DeleteConfigurationTemplateResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplateResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplateResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplateResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplateResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplateResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplateResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DeleteConfigurationTemplate.DeleteConfigurationTemplate


-- | Deletes the specified version from the specified application.
module Network.AWS.ElasticBeanstalk.DeleteApplicationVersion

-- | Creates a value of <a>DeleteApplicationVersion</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>davDeleteSourceBundle</a> - Set to <tt>true</tt> to delete the
--   source bundle from your storage bucket. Otherwise, the application
--   version is deleted only from Elastic Beanstalk and the source bundle
--   remains in Amazon S3.</li>
--   <li><a>davApplicationName</a> - The name of the application to which
--   the version belongs.</li>
--   <li><a>davVersionLabel</a> - The label of the version to delete.</li>
--   </ul>
deleteApplicationVersion :: Text -> Text -> DeleteApplicationVersion

-- | Request to delete an application version.
--   
--   <i>See:</i> <a>deleteApplicationVersion</a> smart constructor.
data DeleteApplicationVersion

-- | Set to <tt>true</tt> to delete the source bundle from your storage
--   bucket. Otherwise, the application version is deleted only from
--   Elastic Beanstalk and the source bundle remains in Amazon S3.
davDeleteSourceBundle :: Lens' DeleteApplicationVersion (Maybe Bool)

-- | The name of the application to which the version belongs.
davApplicationName :: Lens' DeleteApplicationVersion Text

-- | The label of the version to delete.
davVersionLabel :: Lens' DeleteApplicationVersion Text

-- | Creates a value of <a>DeleteApplicationVersionResponse</a> with the
--   minimum fields required to make a request.
deleteApplicationVersionResponse :: DeleteApplicationVersionResponse

-- | <i>See:</i> <a>deleteApplicationVersionResponse</a> smart constructor.
data DeleteApplicationVersionResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersionResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersionResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersionResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersionResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersionResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersionResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DeleteApplicationVersion.DeleteApplicationVersion


-- | Deletes the specified application along with all associated versions
--   and configurations. The application versions will not be deleted from
--   your Amazon S3 bucket.
module Network.AWS.ElasticBeanstalk.DeleteApplication

-- | Creates a value of <a>DeleteApplication</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>daTerminateEnvByForce</a> - When set to true, running
--   environments will be terminated before deleting the application.</li>
--   <li><a>daApplicationName</a> - The name of the application to
--   delete.</li>
--   </ul>
deleteApplication :: Text -> DeleteApplication

-- | Request to delete an application.
--   
--   <i>See:</i> <a>deleteApplication</a> smart constructor.
data DeleteApplication

-- | When set to true, running environments will be terminated before
--   deleting the application.
daTerminateEnvByForce :: Lens' DeleteApplication (Maybe Bool)

-- | The name of the application to delete.
daApplicationName :: Lens' DeleteApplication Text

-- | Creates a value of <a>DeleteApplicationResponse</a> with the minimum
--   fields required to make a request.
deleteApplicationResponse :: DeleteApplicationResponse

-- | <i>See:</i> <a>deleteApplicationResponse</a> smart constructor.
data DeleteApplicationResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplicationResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplicationResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplicationResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplicationResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplicationResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Data.Data.Data Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplicationResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.DeleteApplication.DeleteApplication


-- | Creates a bucket in Amazon S3 to store application versions, logs, and
--   other files used by Elastic Beanstalk environments. The Elastic
--   Beanstalk console and EB CLI call this API the first time you create
--   an environment in a region. If the storage location already exists,
--   <tt>CreateStorageLocation</tt> still returns the bucket name but does
--   not create a new bucket.
module Network.AWS.ElasticBeanstalk.CreateStorageLocation

-- | Creates a value of <a>CreateStorageLocation</a> with the minimum
--   fields required to make a request.
createStorageLocation :: CreateStorageLocation

-- | <i>See:</i> <a>createStorageLocation</a> smart constructor.
data CreateStorageLocation

-- | Creates a value of <a>CreateStorageLocationResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cslrsS3Bucket</a> - The name of the Amazon S3 bucket
--   created.</li>
--   <li><a>cslrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
createStorageLocationResponse :: Int -> CreateStorageLocationResponse

-- | Results of a <tt>CreateStorageLocationResult</tt> call.
--   
--   <i>See:</i> <a>createStorageLocationResponse</a> smart constructor.
data CreateStorageLocationResponse

-- | The name of the Amazon S3 bucket created.
cslrsS3Bucket :: Lens' CreateStorageLocationResponse (Maybe Text)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
cslrsResponseStatus :: Lens' CreateStorageLocationResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocationResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocationResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocationResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocationResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocationResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocationResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CreateStorageLocation.CreateStorageLocation


-- | Create a new version of your custom platform.
module Network.AWS.ElasticBeanstalk.CreatePlatformVersion

-- | Creates a value of <a>CreatePlatformVersion</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cpvOptionSettings</a> - The configuration option settings to
--   apply to the builder environment.</li>
--   <li><a>cpvEnvironmentName</a> - The name of the builder
--   environment.</li>
--   <li><a>cpvPlatformName</a> - The name of your custom platform.</li>
--   <li><a>cpvPlatformVersion</a> - The number, such as 1.0.2, for the new
--   platform version.</li>
--   <li><a>cpvPlatformDefinitionBundle</a> - The location of the platform
--   definition archive in Amazon S3.</li>
--   </ul>
createPlatformVersion :: Text -> Text -> S3Location -> CreatePlatformVersion

-- | Request to create a new platform version.
--   
--   <i>See:</i> <a>createPlatformVersion</a> smart constructor.
data CreatePlatformVersion

-- | The configuration option settings to apply to the builder environment.
cpvOptionSettings :: Lens' CreatePlatformVersion [ConfigurationOptionSetting]

-- | The name of the builder environment.
cpvEnvironmentName :: Lens' CreatePlatformVersion (Maybe Text)

-- | The name of your custom platform.
cpvPlatformName :: Lens' CreatePlatformVersion Text

-- | The number, such as 1.0.2, for the new platform version.
cpvPlatformVersion :: Lens' CreatePlatformVersion Text

-- | The location of the platform definition archive in Amazon S3.
cpvPlatformDefinitionBundle :: Lens' CreatePlatformVersion S3Location

-- | Creates a value of <a>CreatePlatformVersionResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cpvrsBuilder</a> - The builder used to create the custom
--   platform.</li>
--   <li><a>cpvrsPlatformSummary</a> - Detailed information about the new
--   version of the custom platform.</li>
--   <li><a>cpvrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
createPlatformVersionResponse :: Int -> CreatePlatformVersionResponse

-- | <i>See:</i> <a>createPlatformVersionResponse</a> smart constructor.
data CreatePlatformVersionResponse

-- | The builder used to create the custom platform.
cpvrsBuilder :: Lens' CreatePlatformVersionResponse (Maybe Builder)

-- | Detailed information about the new version of the custom platform.
cpvrsPlatformSummary :: Lens' CreatePlatformVersionResponse (Maybe PlatformSummary)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
cpvrsResponseStatus :: Lens' CreatePlatformVersionResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersionResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersionResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersionResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersionResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersionResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersionResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CreatePlatformVersion.CreatePlatformVersion


-- | Launches an environment for the specified application using the
--   specified configuration.
module Network.AWS.ElasticBeanstalk.CreateEnvironment

-- | Creates a value of <a>CreateEnvironment</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cCNAMEPrefix</a> - If specified, the environment attempts to
--   use this value as the prefix for the CNAME. If not specified, the
--   CNAME is generated automatically by appending a random alphanumeric
--   string to the environment name.</li>
--   <li><a>cTemplateName</a> - The name of the configuration template to
--   use in deployment. If no configuration template is found with this
--   name, AWS Elastic Beanstalk returns an <tt>InvalidParameterValue</tt>
--   error.</li>
--   <li><a>cOptionsToRemove</a> - A list of custom user-defined
--   configuration options to remove from the configuration set for this
--   new environment.</li>
--   <li><a>cOptionSettings</a> - If specified, AWS Elastic Beanstalk sets
--   the specified configuration options to the requested value in the
--   configuration set for the new environment. These override the values
--   obtained from the solution stack or the configuration template.</li>
--   <li><a>cVersionLabel</a> - The name of the application version to
--   deploy. If the specified application has no associated application
--   versions, AWS Elastic Beanstalk <tt>UpdateEnvironment</tt> returns an
--   <tt>InvalidParameterValue</tt> error. Default: If not specified, AWS
--   Elastic Beanstalk attempts to launch the sample application in the
--   container.</li>
--   <li><a>cPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>cTier</a> - This specifies the tier to use for creating this
--   environment.</li>
--   <li><a>cEnvironmentName</a> - A unique name for the deployment
--   environment. Used in the application URL. Constraint: Must be from 4
--   to 40 characters in length. The name can contain only letters,
--   numbers, and hyphens. It cannot start or end with a hyphen. This name
--   must be unique within a region in your account. If the specified name
--   already exists in the region, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error. Default: If the CNAME parameter
--   is not specified, the environment name becomes part of the CNAME, and
--   therefore part of the visible URL for your application.</li>
--   <li><a>cSolutionStackName</a> - This is an alternative to specifying a
--   template name. If specified, AWS Elastic Beanstalk sets the
--   configuration values to the default values associated with the
--   specified solution stack.</li>
--   <li><a>cGroupName</a> - The name of the group to which the target
--   environment belongs. Specify a group name only if the environment's
--   name is specified in an environment manifest and not with the
--   environment name parameter. See <a>Environment Manifest (env.yaml)</a>
--   for details.</li>
--   <li><a>cDescription</a> - Describes this environment.</li>
--   <li><a>cTags</a> - This specifies the tags applied to resources in the
--   environment.</li>
--   <li><a>cApplicationName</a> - The name of the application that
--   contains the version to be deployed. If no application is found with
--   this name, <tt>CreateEnvironment</tt> returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   </ul>
createEnvironment :: Text -> CreateEnvironment

-- | <i>See:</i> <a>createEnvironment</a> smart constructor.
data CreateEnvironment

-- | If specified, the environment attempts to use this value as the prefix
--   for the CNAME. If not specified, the CNAME is generated automatically
--   by appending a random alphanumeric string to the environment name.
cCNAMEPrefix :: Lens' CreateEnvironment (Maybe Text)

-- | The name of the configuration template to use in deployment. If no
--   configuration template is found with this name, AWS Elastic Beanstalk
--   returns an <tt>InvalidParameterValue</tt> error.
cTemplateName :: Lens' CreateEnvironment (Maybe Text)

-- | A list of custom user-defined configuration options to remove from the
--   configuration set for this new environment.
cOptionsToRemove :: Lens' CreateEnvironment [OptionSpecification]

-- | If specified, AWS Elastic Beanstalk sets the specified configuration
--   options to the requested value in the configuration set for the new
--   environment. These override the values obtained from the solution
--   stack or the configuration template.
cOptionSettings :: Lens' CreateEnvironment [ConfigurationOptionSetting]

-- | The name of the application version to deploy. If the specified
--   application has no associated application versions, AWS Elastic
--   Beanstalk <tt>UpdateEnvironment</tt> returns an
--   <tt>InvalidParameterValue</tt> error. Default: If not specified, AWS
--   Elastic Beanstalk attempts to launch the sample application in the
--   container.
cVersionLabel :: Lens' CreateEnvironment (Maybe Text)

-- | The ARN of the platform.
cPlatformARN :: Lens' CreateEnvironment (Maybe Text)

-- | This specifies the tier to use for creating this environment.
cTier :: Lens' CreateEnvironment (Maybe EnvironmentTier)

-- | A unique name for the deployment environment. Used in the application
--   URL. Constraint: Must be from 4 to 40 characters in length. The name
--   can contain only letters, numbers, and hyphens. It cannot start or end
--   with a hyphen. This name must be unique within a region in your
--   account. If the specified name already exists in the region, AWS
--   Elastic Beanstalk returns an <tt>InvalidParameterValue</tt> error.
--   Default: If the CNAME parameter is not specified, the environment name
--   becomes part of the CNAME, and therefore part of the visible URL for
--   your application.
cEnvironmentName :: Lens' CreateEnvironment (Maybe Text)

-- | This is an alternative to specifying a template name. If specified,
--   AWS Elastic Beanstalk sets the configuration values to the default
--   values associated with the specified solution stack.
cSolutionStackName :: Lens' CreateEnvironment (Maybe Text)

-- | The name of the group to which the target environment belongs. Specify
--   a group name only if the environment's name is specified in an
--   environment manifest and not with the environment name parameter. See
--   <a>Environment Manifest (env.yaml)</a> for details.
cGroupName :: Lens' CreateEnvironment (Maybe Text)

-- | Describes this environment.
cDescription :: Lens' CreateEnvironment (Maybe Text)

-- | This specifies the tags applied to resources in the environment.
cTags :: Lens' CreateEnvironment [Tag]

-- | The name of the application that contains the version to be deployed.
--   If no application is found with this name, <tt>CreateEnvironment</tt>
--   returns an <tt>InvalidParameterValue</tt> error.
cApplicationName :: Lens' CreateEnvironment Text

-- | Creates a value of <a>EnvironmentDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eStatus</a> - The current operational status of the
--   environment: * <tt>Launching</tt> : Environment is in the process of
--   initial deployment. * <tt>Updating</tt> : Environment is in the
--   process of updating its configuration settings or application version.
--   * <tt>Ready</tt> : Environment is available to have an action
--   performed on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.</li>
--   <li><a>eCNAME</a> - The URL to the CNAME for this environment.</li>
--   <li><a>eTemplateName</a> - The name of the configuration template used
--   to originally launch this environment.</li>
--   <li><a>eAbortableOperationInProgress</a> - Indicates if there is an
--   in-progress environment configuration update or application version
--   deployment that you can cancel. <tt>true:</tt> There is an update in
--   progress. <tt>false:</tt> There are no updates currently in
--   progress.</li>
--   <li><a>eEndpointURL</a> - For load-balanced, autoscaling environments,
--   the URL to the LoadBalancer. For single-instance environments, the IP
--   address of the instance.</li>
--   <li><a>eResources</a> - The description of the AWS resources used by
--   this environment.</li>
--   <li><a>eDateUpdated</a> - The last modified date for this
--   environment.</li>
--   <li><a>eDateCreated</a> - The creation date for this environment.</li>
--   <li><a>eHealth</a> - Describes the health status of the environment.
--   AWS Elastic Beanstalk indicates the failure levels for a running
--   environment: * <tt>Red</tt> : Indicates the environment is not
--   responsive. Occurs when three or more consecutive failures occur for
--   an environment. * <tt>Yellow</tt> : Indicates that something is wrong.
--   Occurs when two consecutive failures occur for an environment. *
--   <tt>Green</tt> : Indicates the environment is healthy and fully
--   functional. * <tt>Grey</tt> : Default health for a new environment.
--   The environment is not fully launched and health checks have not
--   started or health checks are suspended during an
--   <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt> request.
--   Default: <tt>Grey</tt></li>
--   <li><a>eVersionLabel</a> - The application version deployed in this
--   environment.</li>
--   <li><a>ePlatformARN</a> - The ARN of the platform.</li>
--   <li><a>eTier</a> - Describes the current tier of this
--   environment.</li>
--   <li><a>eEnvironmentName</a> - The name of this environment.</li>
--   <li><a>eApplicationName</a> - The name of the application associated
--   with this environment.</li>
--   <li><a>eEnvironmentARN</a> - The environment's Amazon Resource Name
--   (ARN), which can be used in other API requests that require an
--   ARN.</li>
--   <li><a>eSolutionStackName</a> - The name of the <tt>SolutionStack</tt>
--   deployed with this environment.</li>
--   <li><a>eEnvironmentId</a> - The ID of this environment.</li>
--   <li><a>eHealthStatus</a> - Returns the health status of the
--   application running in your environment. For more information, see
--   <a>Health Colors and Statuses</a> .</li>
--   <li><a>eEnvironmentLinks</a> - A list of links to other environments
--   in the same group.</li>
--   <li><a>eDescription</a> - Describes this environment.</li>
--   </ul>
environmentDescription :: EnvironmentDescription

-- | Describes the properties of an environment.
--   
--   <i>See:</i> <a>environmentDescription</a> smart constructor.
data EnvironmentDescription

-- | The current operational status of the environment: *
--   <tt>Launching</tt> : Environment is in the process of initial
--   deployment. * <tt>Updating</tt> : Environment is in the process of
--   updating its configuration settings or application version. *
--   <tt>Ready</tt> : Environment is available to have an action performed
--   on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.
eStatus :: Lens' EnvironmentDescription (Maybe EnvironmentStatus)

-- | The URL to the CNAME for this environment.
eCNAME :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the configuration template used to originally launch this
--   environment.
eTemplateName :: Lens' EnvironmentDescription (Maybe Text)

-- | Indicates if there is an in-progress environment configuration update
--   or application version deployment that you can cancel. <tt>true:</tt>
--   There is an update in progress. <tt>false:</tt> There are no updates
--   currently in progress.
eAbortableOperationInProgress :: Lens' EnvironmentDescription (Maybe Bool)

-- | For load-balanced, autoscaling environments, the URL to the
--   LoadBalancer. For single-instance environments, the IP address of the
--   instance.
eEndpointURL :: Lens' EnvironmentDescription (Maybe Text)

-- | The description of the AWS resources used by this environment.
eResources :: Lens' EnvironmentDescription (Maybe EnvironmentResourcesDescription)

-- | The last modified date for this environment.
eDateUpdated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | The creation date for this environment.
eDateCreated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | Describes the health status of the environment. AWS Elastic Beanstalk
--   indicates the failure levels for a running environment: * <tt>Red</tt>
--   : Indicates the environment is not responsive. Occurs when three or
--   more consecutive failures occur for an environment. * <tt>Yellow</tt>
--   : Indicates that something is wrong. Occurs when two consecutive
--   failures occur for an environment. * <tt>Green</tt> : Indicates the
--   environment is healthy and fully functional. * <tt>Grey</tt> : Default
--   health for a new environment. The environment is not fully launched
--   and health checks have not started or health checks are suspended
--   during an <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt>
--   request. Default: <tt>Grey</tt>
eHealth :: Lens' EnvironmentDescription (Maybe EnvironmentHealth)

-- | The application version deployed in this environment.
eVersionLabel :: Lens' EnvironmentDescription (Maybe Text)

-- | The ARN of the platform.
ePlatformARN :: Lens' EnvironmentDescription (Maybe Text)

-- | Describes the current tier of this environment.
eTier :: Lens' EnvironmentDescription (Maybe EnvironmentTier)

-- | The name of this environment.
eEnvironmentName :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the application associated with this environment.
eApplicationName :: Lens' EnvironmentDescription (Maybe Text)

-- | The environment's Amazon Resource Name (ARN), which can be used in
--   other API requests that require an ARN.
eEnvironmentARN :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the <tt>SolutionStack</tt> deployed with this environment.
eSolutionStackName :: Lens' EnvironmentDescription (Maybe Text)

-- | The ID of this environment.
eEnvironmentId :: Lens' EnvironmentDescription (Maybe Text)

-- | Returns the health status of the application running in your
--   environment. For more information, see <a>Health Colors and
--   Statuses</a> .
eHealthStatus :: Lens' EnvironmentDescription (Maybe EnvironmentHealthStatus)

-- | A list of links to other environments in the same group.
eEnvironmentLinks :: Lens' EnvironmentDescription [EnvironmentLink]

-- | Describes this environment.
eDescription :: Lens' EnvironmentDescription (Maybe Text)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CreateEnvironment.CreateEnvironment


-- | Creates a configuration template. Templates are associated with a
--   specific application and are used to deploy different versions of the
--   application with the same configuration settings.
--   
--   Related Topics
--   
--   <ul>
--   <li><tt>DescribeConfigurationOptions</tt></li>
--   <li><tt>DescribeConfigurationSettings</tt></li>
--   <li><tt>ListAvailableSolutionStacks</tt></li>
--   </ul>
module Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate

-- | Creates a value of <a>CreateConfigurationTemplate</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cctOptionSettings</a> - If specified, AWS Elastic Beanstalk
--   sets the specified configuration option to the requested value. The
--   new value overrides the value obtained from the solution stack or the
--   source configuration template.</li>
--   <li><a>cctPlatformARN</a> - The ARN of the custom platform.</li>
--   <li><a>cctSourceConfiguration</a> - If specified, AWS Elastic
--   Beanstalk uses the configuration values from the specified
--   configuration template to create a new configuration. Values specified
--   in the <tt>OptionSettings</tt> parameter of this call overrides any
--   values obtained from the <tt>SourceConfiguration</tt> . If no
--   configuration template is found, returns an
--   <tt>InvalidParameterValue</tt> error. Constraint: If both the solution
--   stack name parameter and the source configuration parameters are
--   specified, the solution stack of the source configuration template
--   must match the specified solution stack name or else AWS Elastic
--   Beanstalk returns an <tt>InvalidParameterCombination</tt> error.</li>
--   <li><a>cctSolutionStackName</a> - The name of the solution stack used
--   by this configuration. The solution stack specifies the operating
--   system, architecture, and application server for a configuration
--   template. It determines the set of configuration options as well as
--   the possible and default values. Use
--   <tt>ListAvailableSolutionStacks</tt> to obtain a list of available
--   solution stacks. A solution stack name or a source configuration
--   parameter must be specified, otherwise AWS Elastic Beanstalk returns
--   an <tt>InvalidParameterValue</tt> error. If a solution stack name is
--   not specified and the source configuration parameter is specified, AWS
--   Elastic Beanstalk uses the same solution stack as the source
--   configuration template.</li>
--   <li><a>cctEnvironmentId</a> - The ID of the environment used with this
--   configuration template.</li>
--   <li><a>cctDescription</a> - Describes this configuration.</li>
--   <li><a>cctApplicationName</a> - The name of the application to
--   associate with this configuration template. If no application is found
--   with this name, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   <li><a>cctTemplateName</a> - The name of the configuration template.
--   Constraint: This name must be unique per application. Default: If a
--   configuration template already exists with this name, AWS Elastic
--   Beanstalk returns an <tt>InvalidParameterValue</tt> error.</li>
--   </ul>
createConfigurationTemplate :: Text -> Text -> CreateConfigurationTemplate

-- | Request to create a configuration template.
--   
--   <i>See:</i> <a>createConfigurationTemplate</a> smart constructor.
data CreateConfigurationTemplate

-- | If specified, AWS Elastic Beanstalk sets the specified configuration
--   option to the requested value. The new value overrides the value
--   obtained from the solution stack or the source configuration template.
cctOptionSettings :: Lens' CreateConfigurationTemplate [ConfigurationOptionSetting]

-- | The ARN of the custom platform.
cctPlatformARN :: Lens' CreateConfigurationTemplate (Maybe Text)

-- | If specified, AWS Elastic Beanstalk uses the configuration values from
--   the specified configuration template to create a new configuration.
--   Values specified in the <tt>OptionSettings</tt> parameter of this call
--   overrides any values obtained from the <tt>SourceConfiguration</tt> .
--   If no configuration template is found, returns an
--   <tt>InvalidParameterValue</tt> error. Constraint: If both the solution
--   stack name parameter and the source configuration parameters are
--   specified, the solution stack of the source configuration template
--   must match the specified solution stack name or else AWS Elastic
--   Beanstalk returns an <tt>InvalidParameterCombination</tt> error.
cctSourceConfiguration :: Lens' CreateConfigurationTemplate (Maybe SourceConfiguration)

-- | The name of the solution stack used by this configuration. The
--   solution stack specifies the operating system, architecture, and
--   application server for a configuration template. It determines the set
--   of configuration options as well as the possible and default values.
--   Use <tt>ListAvailableSolutionStacks</tt> to obtain a list of available
--   solution stacks. A solution stack name or a source configuration
--   parameter must be specified, otherwise AWS Elastic Beanstalk returns
--   an <tt>InvalidParameterValue</tt> error. If a solution stack name is
--   not specified and the source configuration parameter is specified, AWS
--   Elastic Beanstalk uses the same solution stack as the source
--   configuration template.
cctSolutionStackName :: Lens' CreateConfigurationTemplate (Maybe Text)

-- | The ID of the environment used with this configuration template.
cctEnvironmentId :: Lens' CreateConfigurationTemplate (Maybe Text)

-- | Describes this configuration.
cctDescription :: Lens' CreateConfigurationTemplate (Maybe Text)

-- | The name of the application to associate with this configuration
--   template. If no application is found with this name, AWS Elastic
--   Beanstalk returns an <tt>InvalidParameterValue</tt> error.
cctApplicationName :: Lens' CreateConfigurationTemplate Text

-- | The name of the configuration template. Constraint: This name must be
--   unique per application. Default: If a configuration template already
--   exists with this name, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error.
cctTemplateName :: Lens' CreateConfigurationTemplate Text

-- | Creates a value of <a>ConfigurationSettingsDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>csdTemplateName</a> - If not <tt>null</tt> , the name of the
--   configuration template for this configuration set.</li>
--   <li><a>csdOptionSettings</a> - A list of the configuration options and
--   their values in this configuration set.</li>
--   <li><a>csdDateUpdated</a> - The date (in UTC time) when this
--   configuration set was last modified.</li>
--   <li><a>csdDateCreated</a> - The date (in UTC time) when this
--   configuration set was created.</li>
--   <li><a>csdPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>csdEnvironmentName</a> - If not <tt>null</tt> , the name of the
--   environment for this configuration set.</li>
--   <li><a>csdApplicationName</a> - The name of the application associated
--   with this configuration set.</li>
--   <li><a>csdDeploymentStatus</a> - If this configuration set is
--   associated with an environment, the <tt>DeploymentStatus</tt>
--   parameter indicates the deployment status of this configuration set: *
--   <tt>null</tt> : This configuration is not associated with a running
--   environment. * <tt>pending</tt> : This is a draft configuration that
--   is not deployed to the associated environment but is in the process of
--   deploying. * <tt>deployed</tt> : This is the configuration that is
--   currently deployed to the associated running environment. *
--   <tt>failed</tt> : This is a draft configuration that failed to
--   successfully deploy.</li>
--   <li><a>csdSolutionStackName</a> - The name of the solution stack this
--   configuration set uses.</li>
--   <li><a>csdDescription</a> - Describes this configuration set.</li>
--   </ul>
configurationSettingsDescription :: ConfigurationSettingsDescription

-- | Describes the settings for a configuration set.
--   
--   <i>See:</i> <a>configurationSettingsDescription</a> smart constructor.
data ConfigurationSettingsDescription

-- | If not <tt>null</tt> , the name of the configuration template for this
--   configuration set.
csdTemplateName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | A list of the configuration options and their values in this
--   configuration set.
csdOptionSettings :: Lens' ConfigurationSettingsDescription [ConfigurationOptionSetting]

-- | The date (in UTC time) when this configuration set was last modified.
csdDateUpdated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The date (in UTC time) when this configuration set was created.
csdDateCreated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The ARN of the platform.
csdPlatformARN :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If not <tt>null</tt> , the name of the environment for this
--   configuration set.
csdEnvironmentName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | The name of the application associated with this configuration set.
csdApplicationName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If this configuration set is associated with an environment, the
--   <tt>DeploymentStatus</tt> parameter indicates the deployment status of
--   this configuration set: * <tt>null</tt> : This configuration is not
--   associated with a running environment. * <tt>pending</tt> : This is a
--   draft configuration that is not deployed to the associated environment
--   but is in the process of deploying. * <tt>deployed</tt> : This is the
--   configuration that is currently deployed to the associated running
--   environment. * <tt>failed</tt> : This is a draft configuration that
--   failed to successfully deploy.
csdDeploymentStatus :: Lens' ConfigurationSettingsDescription (Maybe ConfigurationDeploymentStatus)

-- | The name of the solution stack this configuration set uses.
csdSolutionStackName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | Describes this configuration set.
csdDescription :: Lens' ConfigurationSettingsDescription (Maybe Text)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CreateConfigurationTemplate.CreateConfigurationTemplate


-- | Creates an application version for the specified application. You can
--   create an application version from a source bundle in Amazon S3, a
--   commit in AWS CodeCommit, or the output of an AWS CodeBuild build as
--   follows:
--   
--   Specify a commit in an AWS CodeCommit repository with
--   <tt>SourceBuildInformation</tt> .
--   
--   Specify a build in an AWS CodeBuild with
--   <tt>SourceBuildInformation</tt> and <tt>BuildConfiguration</tt> .
--   
--   Specify a source bundle in S3 with <tt>SourceBundle</tt>
--   
--   Omit both <tt>SourceBuildInformation</tt> and <tt>SourceBundle</tt> to
--   use the default sample application.
module Network.AWS.ElasticBeanstalk.CreateApplicationVersion

-- | Creates a value of <a>CreateApplicationVersion</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cavProcess</a> - Preprocesses and validates the environment
--   manifest (<tt>env.yaml</tt> ) and configuration files
--   (<tt>*.config</tt> files in the <tt>.ebextensions</tt> folder) in the
--   source bundle. Validating configuration files can identify issues
--   prior to deploying the application version to an environment.</li>
--   <li><a>cavSourceBundle</a> - The Amazon S3 bucket and key that
--   identify the location of the source bundle for this version. Specify a
--   source bundle in S3 or a commit in an AWS CodeCommit repository (with
--   <tt>SourceBuildInformation</tt> ), but not both. If neither
--   <tt>SourceBundle</tt> nor <tt>SourceBuildInformation</tt> are
--   provided, Elastic Beanstalk uses a sample application.</li>
--   <li><a>cavAutoCreateApplication</a> - Set to <tt>true</tt> to create
--   an application with the specified name if it doesn't already
--   exist.</li>
--   <li><a>cavSourceBuildInformation</a> - Specify a commit in an AWS
--   CodeCommit Git repository to use as the source code for the
--   application version.</li>
--   <li><a>cavDescription</a> - Describes this version.</li>
--   <li><a>cavBuildConfiguration</a> - Settings for an AWS CodeBuild
--   build.</li>
--   <li><a>cavApplicationName</a> - The name of the application. If no
--   application is found with this name, and
--   <tt>AutoCreateApplication</tt> is <tt>false</tt> , returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   <li><a>cavVersionLabel</a> - A label identifying this version.
--   Constraint: Must be unique per application. If an application version
--   already exists with this label for the specified application, AWS
--   Elastic Beanstalk returns an <tt>InvalidParameterValue</tt>
--   error.</li>
--   </ul>
createApplicationVersion :: Text -> Text -> CreateApplicationVersion

-- | <i>See:</i> <a>createApplicationVersion</a> smart constructor.
data CreateApplicationVersion

-- | Preprocesses and validates the environment manifest (<tt>env.yaml</tt>
--   ) and configuration files (<tt>*.config</tt> files in the
--   <tt>.ebextensions</tt> folder) in the source bundle. Validating
--   configuration files can identify issues prior to deploying the
--   application version to an environment.
cavProcess :: Lens' CreateApplicationVersion (Maybe Bool)

-- | The Amazon S3 bucket and key that identify the location of the source
--   bundle for this version. Specify a source bundle in S3 or a commit in
--   an AWS CodeCommit repository (with <tt>SourceBuildInformation</tt> ),
--   but not both. If neither <tt>SourceBundle</tt> nor
--   <tt>SourceBuildInformation</tt> are provided, Elastic Beanstalk uses a
--   sample application.
cavSourceBundle :: Lens' CreateApplicationVersion (Maybe S3Location)

-- | Set to <tt>true</tt> to create an application with the specified name
--   if it doesn't already exist.
cavAutoCreateApplication :: Lens' CreateApplicationVersion (Maybe Bool)

-- | Specify a commit in an AWS CodeCommit Git repository to use as the
--   source code for the application version.
cavSourceBuildInformation :: Lens' CreateApplicationVersion (Maybe SourceBuildInformation)

-- | Describes this version.
cavDescription :: Lens' CreateApplicationVersion (Maybe Text)

-- | Settings for an AWS CodeBuild build.
cavBuildConfiguration :: Lens' CreateApplicationVersion (Maybe BuildConfiguration)

-- | The name of the application. If no application is found with this
--   name, and <tt>AutoCreateApplication</tt> is <tt>false</tt> , returns
--   an <tt>InvalidParameterValue</tt> error.
cavApplicationName :: Lens' CreateApplicationVersion Text

-- | A label identifying this version. Constraint: Must be unique per
--   application. If an application version already exists with this label
--   for the specified application, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error.
cavVersionLabel :: Lens' CreateApplicationVersion Text

-- | Creates a value of <a>ApplicationVersionDescriptionMessage</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avdmApplicationVersion</a> - The
--   <a>ApplicationVersionDescription</a> of the application version.</li>
--   </ul>
applicationVersionDescriptionMessage :: ApplicationVersionDescriptionMessage

-- | Result message wrapping a single description of an application
--   version.
--   
--   <i>See:</i> <a>applicationVersionDescriptionMessage</a> smart
--   constructor.
data ApplicationVersionDescriptionMessage

-- | The <a>ApplicationVersionDescription</a> of the application version.
avdmApplicationVersion :: Lens' ApplicationVersionDescriptionMessage (Maybe ApplicationVersionDescription)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CreateApplicationVersion.CreateApplicationVersion


-- | Creates an application that has one configuration template named
--   <tt>default</tt> and no application versions.
module Network.AWS.ElasticBeanstalk.CreateApplication

-- | Creates a value of <a>CreateApplication</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>caResourceLifecycleConfig</a> - Specify an application resource
--   lifecycle configuration to prevent your application from accumulating
--   too many versions.</li>
--   <li><a>caDescription</a> - Describes the application.</li>
--   <li><a>caApplicationName</a> - The name of the application.
--   Constraint: This name must be unique within your account. If the
--   specified name already exists, the action returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   </ul>
createApplication :: Text -> CreateApplication

-- | Request to create an application.
--   
--   <i>See:</i> <a>createApplication</a> smart constructor.
data CreateApplication

-- | Specify an application resource lifecycle configuration to prevent
--   your application from accumulating too many versions.
caResourceLifecycleConfig :: Lens' CreateApplication (Maybe ApplicationResourceLifecycleConfig)

-- | Describes the application.
caDescription :: Lens' CreateApplication (Maybe Text)

-- | The name of the application. Constraint: This name must be unique
--   within your account. If the specified name already exists, the action
--   returns an <tt>InvalidParameterValue</tt> error.
caApplicationName :: Lens' CreateApplication Text

-- | Creates a value of <a>ApplicationDescriptionMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>admApplication</a> - The <a>ApplicationDescription</a> of the
--   application.</li>
--   </ul>
applicationDescriptionMessage :: ApplicationDescriptionMessage

-- | Result message containing a single description of an application.
--   
--   <i>See:</i> <a>applicationDescriptionMessage</a> smart constructor.
data ApplicationDescriptionMessage

-- | The <a>ApplicationDescription</a> of the application.
admApplication :: Lens' ApplicationDescriptionMessage (Maybe ApplicationDescription)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CreateApplication.CreateApplication


-- | Create or update a group of environments that each run a separate
--   component of a single application. Takes a list of version labels that
--   specify application source bundles for each of the environments to
--   create or update. The name of each environment and other required
--   information must be included in the source bundles in an environment
--   manifest named <tt>env.yaml</tt> . See <a>Compose Environments</a> for
--   details.
module Network.AWS.ElasticBeanstalk.ComposeEnvironments

-- | Creates a value of <a>ComposeEnvironments</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ceVersionLabels</a> - A list of version labels, specifying one
--   or more application source bundles that belong to the target
--   application. Each source bundle must include an environment manifest
--   that specifies the name of the environment and the name of the
--   solution stack to use, and optionally can specify environment links to
--   create.</li>
--   <li><a>ceApplicationName</a> - The name of the application to which
--   the specified source bundles belong.</li>
--   <li><a>ceGroupName</a> - The name of the group to which the target
--   environments belong. Specify a group name only if the environment name
--   defined in each target environment's manifest ends with a + (plus)
--   character. See <a>Environment Manifest (env.yaml)</a> for
--   details.</li>
--   </ul>
composeEnvironments :: ComposeEnvironments

-- | Request to create or update a group of environments.
--   
--   <i>See:</i> <a>composeEnvironments</a> smart constructor.
data ComposeEnvironments

-- | A list of version labels, specifying one or more application source
--   bundles that belong to the target application. Each source bundle must
--   include an environment manifest that specifies the name of the
--   environment and the name of the solution stack to use, and optionally
--   can specify environment links to create.
ceVersionLabels :: Lens' ComposeEnvironments [Text]

-- | The name of the application to which the specified source bundles
--   belong.
ceApplicationName :: Lens' ComposeEnvironments (Maybe Text)

-- | The name of the group to which the target environments belong. Specify
--   a group name only if the environment name defined in each target
--   environment's manifest ends with a + (plus) character. See
--   <a>Environment Manifest (env.yaml)</a> for details.
ceGroupName :: Lens' ComposeEnvironments (Maybe Text)

-- | Creates a value of <a>EnvironmentDescriptionsMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>edmNextToken</a> - In a paginated request, the token that you
--   can pass in a subsequent request to get the next response page.</li>
--   <li><a>edmEnvironments</a> - Returns an <a>EnvironmentDescription</a>
--   list.</li>
--   </ul>
environmentDescriptionsMessage :: EnvironmentDescriptionsMessage

-- | Result message containing a list of environment descriptions.
--   
--   <i>See:</i> <a>environmentDescriptionsMessage</a> smart constructor.
data EnvironmentDescriptionsMessage

-- | In a paginated request, the token that you can pass in a subsequent
--   request to get the next response page.
edmNextToken :: Lens' EnvironmentDescriptionsMessage (Maybe Text)

-- | Returns an <a>EnvironmentDescription</a> list.
edmEnvironments :: Lens' EnvironmentDescriptionsMessage [EnvironmentDescription]
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.ComposeEnvironments.ComposeEnvironments


-- | Checks if the specified CNAME is available.
module Network.AWS.ElasticBeanstalk.CheckDNSAvailability

-- | Creates a value of <a>CheckDNSAvailability</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cdaCNAMEPrefix</a> - The prefix used when this CNAME is
--   reserved.</li>
--   </ul>
checkDNSAvailability :: Text -> CheckDNSAvailability

-- | Results message indicating whether a CNAME is available.
--   
--   <i>See:</i> <a>checkDNSAvailability</a> smart constructor.
data CheckDNSAvailability

-- | The prefix used when this CNAME is reserved.
cdaCNAMEPrefix :: Lens' CheckDNSAvailability Text

-- | Creates a value of <a>CheckDNSAvailabilityResponse</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cdarsFullyQualifiedCNAME</a> - The fully qualified CNAME to
--   reserve when <tt>CreateEnvironment</tt> is called with the provided
--   prefix.</li>
--   <li><a>cdarsAvailable</a> - Indicates if the specified CNAME is
--   available: * <tt>true</tt> : The CNAME is available. * <tt>false</tt>
--   : The CNAME is not available.</li>
--   <li><a>cdarsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
checkDNSAvailabilityResponse :: Int -> CheckDNSAvailabilityResponse

-- | Indicates if the specified CNAME is available.
--   
--   <i>See:</i> <a>checkDNSAvailabilityResponse</a> smart constructor.
data CheckDNSAvailabilityResponse

-- | The fully qualified CNAME to reserve when <tt>CreateEnvironment</tt>
--   is called with the provided prefix.
cdarsFullyQualifiedCNAME :: Lens' CheckDNSAvailabilityResponse (Maybe Text)

-- | Indicates if the specified CNAME is available: * <tt>true</tt> : The
--   CNAME is available. * <tt>false</tt> : The CNAME is not available.
cdarsAvailable :: Lens' CheckDNSAvailabilityResponse (Maybe Bool)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
cdarsResponseStatus :: Lens' CheckDNSAvailabilityResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailabilityResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailabilityResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailabilityResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailabilityResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailabilityResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Data.Data.Data Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailabilityResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.CheckDNSAvailability.CheckDNSAvailability


-- | Applies a scheduled managed action immediately. A managed action can
--   be applied only if its status is <tt>Scheduled</tt> . Get the status
--   and action ID of a managed action with
--   <tt>DescribeEnvironmentManagedActions</tt> .
module Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction

-- | Creates a value of <a>ApplyEnvironmentManagedAction</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aemaEnvironmentName</a> - The name of the target
--   environment.</li>
--   <li><a>aemaEnvironmentId</a> - The environment ID of the target
--   environment.</li>
--   <li><a>aemaActionId</a> - The action ID of the scheduled managed
--   action to execute.</li>
--   </ul>
applyEnvironmentManagedAction :: Text -> ApplyEnvironmentManagedAction

-- | Request to execute a scheduled managed action immediately.
--   
--   <i>See:</i> <a>applyEnvironmentManagedAction</a> smart constructor.
data ApplyEnvironmentManagedAction

-- | The name of the target environment.
aemaEnvironmentName :: Lens' ApplyEnvironmentManagedAction (Maybe Text)

-- | The environment ID of the target environment.
aemaEnvironmentId :: Lens' ApplyEnvironmentManagedAction (Maybe Text)

-- | The action ID of the scheduled managed action to execute.
aemaActionId :: Lens' ApplyEnvironmentManagedAction Text

-- | Creates a value of <a>ApplyEnvironmentManagedActionResponse</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aemarsStatus</a> - The status of the managed action.</li>
--   <li><a>aemarsActionId</a> - The action ID of the managed action.</li>
--   <li><a>aemarsActionDescription</a> - A description of the managed
--   action.</li>
--   <li><a>aemarsActionType</a> - The type of managed action.</li>
--   <li><a>aemarsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
applyEnvironmentManagedActionResponse :: Int -> ApplyEnvironmentManagedActionResponse

-- | The result message containing information about the managed action.
--   
--   <i>See:</i> <a>applyEnvironmentManagedActionResponse</a> smart
--   constructor.
data ApplyEnvironmentManagedActionResponse

-- | The status of the managed action.
aemarsStatus :: Lens' ApplyEnvironmentManagedActionResponse (Maybe Text)

-- | The action ID of the managed action.
aemarsActionId :: Lens' ApplyEnvironmentManagedActionResponse (Maybe Text)

-- | A description of the managed action.
aemarsActionDescription :: Lens' ApplyEnvironmentManagedActionResponse (Maybe Text)

-- | The type of managed action.
aemarsActionType :: Lens' ApplyEnvironmentManagedActionResponse (Maybe ActionType)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
aemarsResponseStatus :: Lens' ApplyEnvironmentManagedActionResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedActionResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedActionResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedActionResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedActionResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedActionResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedActionResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.ApplyEnvironmentManagedAction.ApplyEnvironmentManagedAction


-- | Cancels in-progress environment configuration update or application
--   version deployment.
module Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate

-- | Creates a value of <a>AbortEnvironmentUpdate</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>aeuEnvironmentName</a> - This specifies the name of the
--   environment with the in-progress update that you want to cancel.</li>
--   <li><a>aeuEnvironmentId</a> - This specifies the ID of the environment
--   with the in-progress update that you want to cancel.</li>
--   </ul>
abortEnvironmentUpdate :: AbortEnvironmentUpdate

-- | <i>See:</i> <a>abortEnvironmentUpdate</a> smart constructor.
data AbortEnvironmentUpdate

-- | This specifies the name of the environment with the in-progress update
--   that you want to cancel.
aeuEnvironmentName :: Lens' AbortEnvironmentUpdate (Maybe Text)

-- | This specifies the ID of the environment with the in-progress update
--   that you want to cancel.
aeuEnvironmentId :: Lens' AbortEnvironmentUpdate (Maybe Text)

-- | Creates a value of <a>AbortEnvironmentUpdateResponse</a> with the
--   minimum fields required to make a request.
abortEnvironmentUpdateResponse :: AbortEnvironmentUpdateResponse

-- | <i>See:</i> <a>abortEnvironmentUpdateResponse</a> smart constructor.
data AbortEnvironmentUpdateResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdateResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdateResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdateResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdateResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdateResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Data.Data.Data Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdateResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.AbortEnvironmentUpdate.AbortEnvironmentUpdate


-- | Updates the specified application to have the specified properties.
module Network.AWS.ElasticBeanstalk.UpdateApplication

-- | Creates a value of <a>UpdateApplication</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uaDescription</a> - A new description for the application.
--   Default: If not specified, AWS Elastic Beanstalk does not update the
--   description.</li>
--   <li><a>uaApplicationName</a> - The name of the application to update.
--   If no such application is found, <tt>UpdateApplication</tt> returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   </ul>
updateApplication :: Text -> UpdateApplication

-- | Request to update an application.
--   
--   <i>See:</i> <a>updateApplication</a> smart constructor.
data UpdateApplication

-- | A new description for the application. Default: If not specified, AWS
--   Elastic Beanstalk does not update the description.
uaDescription :: Lens' UpdateApplication (Maybe Text)

-- | The name of the application to update. If no such application is
--   found, <tt>UpdateApplication</tt> returns an
--   <tt>InvalidParameterValue</tt> error.
uaApplicationName :: Lens' UpdateApplication Text

-- | Creates a value of <a>ApplicationDescriptionMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>admApplication</a> - The <a>ApplicationDescription</a> of the
--   application.</li>
--   </ul>
applicationDescriptionMessage :: ApplicationDescriptionMessage

-- | Result message containing a single description of an application.
--   
--   <i>See:</i> <a>applicationDescriptionMessage</a> smart constructor.
data ApplicationDescriptionMessage

-- | The <a>ApplicationDescription</a> of the application.
admApplication :: Lens' ApplicationDescriptionMessage (Maybe ApplicationDescription)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.UpdateApplication.UpdateApplication


-- | Modifies lifecycle settings for an application.
module Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle

-- | Creates a value of <a>UpdateApplicationResourceLifecycle</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uarlApplicationName</a> - The name of the application.</li>
--   <li><a>uarlResourceLifecycleConfig</a> - The lifecycle
--   configuration.</li>
--   </ul>
updateApplicationResourceLifecycle :: Text -> ApplicationResourceLifecycleConfig -> UpdateApplicationResourceLifecycle

-- | <i>See:</i> <a>updateApplicationResourceLifecycle</a> smart
--   constructor.
data UpdateApplicationResourceLifecycle

-- | The name of the application.
uarlApplicationName :: Lens' UpdateApplicationResourceLifecycle Text

-- | The lifecycle configuration.
uarlResourceLifecycleConfig :: Lens' UpdateApplicationResourceLifecycle ApplicationResourceLifecycleConfig

-- | Creates a value of <a>UpdateApplicationResourceLifecycleResponse</a>
--   with the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uarlrsApplicationName</a> - The name of the application.</li>
--   <li><a>uarlrsResourceLifecycleConfig</a> - The lifecycle
--   configuration.</li>
--   <li><a>uarlrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
updateApplicationResourceLifecycleResponse :: Int -> UpdateApplicationResourceLifecycleResponse

-- | <i>See:</i> <a>updateApplicationResourceLifecycleResponse</a> smart
--   constructor.
data UpdateApplicationResourceLifecycleResponse

-- | The name of the application.
uarlrsApplicationName :: Lens' UpdateApplicationResourceLifecycleResponse (Maybe Text)

-- | The lifecycle configuration.
uarlrsResourceLifecycleConfig :: Lens' UpdateApplicationResourceLifecycleResponse (Maybe ApplicationResourceLifecycleConfig)

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
uarlrsResponseStatus :: Lens' UpdateApplicationResourceLifecycleResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycleResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycleResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycleResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycleResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycleResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycleResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.UpdateApplicationResourceLifecycle.UpdateApplicationResourceLifecycle


-- | Updates the specified application version to have the specified
--   properties.
module Network.AWS.ElasticBeanstalk.UpdateApplicationVersion

-- | Creates a value of <a>UpdateApplicationVersion</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uavDescription</a> - A new description for this version.</li>
--   <li><a>uavApplicationName</a> - The name of the application associated
--   with this version. If no application is found with this name,
--   <tt>UpdateApplication</tt> returns an <tt>InvalidParameterValue</tt>
--   error.</li>
--   <li><a>uavVersionLabel</a> - The name of the version to update. If no
--   application version is found with this label,
--   <tt>UpdateApplication</tt> returns an <tt>InvalidParameterValue</tt>
--   error.</li>
--   </ul>
updateApplicationVersion :: Text -> Text -> UpdateApplicationVersion

-- | <i>See:</i> <a>updateApplicationVersion</a> smart constructor.
data UpdateApplicationVersion

-- | A new description for this version.
uavDescription :: Lens' UpdateApplicationVersion (Maybe Text)

-- | The name of the application associated with this version. If no
--   application is found with this name, <tt>UpdateApplication</tt>
--   returns an <tt>InvalidParameterValue</tt> error.
uavApplicationName :: Lens' UpdateApplicationVersion Text

-- | The name of the version to update. If no application version is found
--   with this label, <tt>UpdateApplication</tt> returns an
--   <tt>InvalidParameterValue</tt> error.
uavVersionLabel :: Lens' UpdateApplicationVersion Text

-- | Creates a value of <a>ApplicationVersionDescriptionMessage</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avdmApplicationVersion</a> - The
--   <a>ApplicationVersionDescription</a> of the application version.</li>
--   </ul>
applicationVersionDescriptionMessage :: ApplicationVersionDescriptionMessage

-- | Result message wrapping a single description of an application
--   version.
--   
--   <i>See:</i> <a>applicationVersionDescriptionMessage</a> smart
--   constructor.
data ApplicationVersionDescriptionMessage

-- | The <a>ApplicationVersionDescription</a> of the application version.
avdmApplicationVersion :: Lens' ApplicationVersionDescriptionMessage (Maybe ApplicationVersionDescription)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.UpdateApplicationVersion.UpdateApplicationVersion


-- | Updates the specified configuration template to have the specified
--   properties or configuration option values.
--   
--   Related Topics
--   
--   <ul>
--   <li><tt>DescribeConfigurationOptions</tt></li>
--   </ul>
module Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate

-- | Creates a value of <a>UpdateConfigurationTemplate</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>uctOptionsToRemove</a> - A list of configuration options to
--   remove from the configuration set. Constraint: You can remove only
--   <tt>UserDefined</tt> configuration options.</li>
--   <li><a>uctOptionSettings</a> - A list of configuration option settings
--   to update with the new specified option value.</li>
--   <li><a>uctDescription</a> - A new description for the
--   configuration.</li>
--   <li><a>uctApplicationName</a> - The name of the application associated
--   with the configuration template to update. If no application is found
--   with this name, <tt>UpdateConfigurationTemplate</tt> returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   <li><a>uctTemplateName</a> - The name of the configuration template to
--   update. If no configuration template is found with this name,
--   <tt>UpdateConfigurationTemplate</tt> returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   </ul>
updateConfigurationTemplate :: Text -> Text -> UpdateConfigurationTemplate

-- | The result message containing the options for the specified solution
--   stack.
--   
--   <i>See:</i> <a>updateConfigurationTemplate</a> smart constructor.
data UpdateConfigurationTemplate

-- | A list of configuration options to remove from the configuration set.
--   Constraint: You can remove only <tt>UserDefined</tt> configuration
--   options.
uctOptionsToRemove :: Lens' UpdateConfigurationTemplate [OptionSpecification]

-- | A list of configuration option settings to update with the new
--   specified option value.
uctOptionSettings :: Lens' UpdateConfigurationTemplate [ConfigurationOptionSetting]

-- | A new description for the configuration.
uctDescription :: Lens' UpdateConfigurationTemplate (Maybe Text)

-- | The name of the application associated with the configuration template
--   to update. If no application is found with this name,
--   <tt>UpdateConfigurationTemplate</tt> returns an
--   <tt>InvalidParameterValue</tt> error.
uctApplicationName :: Lens' UpdateConfigurationTemplate Text

-- | The name of the configuration template to update. If no configuration
--   template is found with this name, <tt>UpdateConfigurationTemplate</tt>
--   returns an <tt>InvalidParameterValue</tt> error.
uctTemplateName :: Lens' UpdateConfigurationTemplate Text

-- | Creates a value of <a>ConfigurationSettingsDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>csdTemplateName</a> - If not <tt>null</tt> , the name of the
--   configuration template for this configuration set.</li>
--   <li><a>csdOptionSettings</a> - A list of the configuration options and
--   their values in this configuration set.</li>
--   <li><a>csdDateUpdated</a> - The date (in UTC time) when this
--   configuration set was last modified.</li>
--   <li><a>csdDateCreated</a> - The date (in UTC time) when this
--   configuration set was created.</li>
--   <li><a>csdPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>csdEnvironmentName</a> - If not <tt>null</tt> , the name of the
--   environment for this configuration set.</li>
--   <li><a>csdApplicationName</a> - The name of the application associated
--   with this configuration set.</li>
--   <li><a>csdDeploymentStatus</a> - If this configuration set is
--   associated with an environment, the <tt>DeploymentStatus</tt>
--   parameter indicates the deployment status of this configuration set: *
--   <tt>null</tt> : This configuration is not associated with a running
--   environment. * <tt>pending</tt> : This is a draft configuration that
--   is not deployed to the associated environment but is in the process of
--   deploying. * <tt>deployed</tt> : This is the configuration that is
--   currently deployed to the associated running environment. *
--   <tt>failed</tt> : This is a draft configuration that failed to
--   successfully deploy.</li>
--   <li><a>csdSolutionStackName</a> - The name of the solution stack this
--   configuration set uses.</li>
--   <li><a>csdDescription</a> - Describes this configuration set.</li>
--   </ul>
configurationSettingsDescription :: ConfigurationSettingsDescription

-- | Describes the settings for a configuration set.
--   
--   <i>See:</i> <a>configurationSettingsDescription</a> smart constructor.
data ConfigurationSettingsDescription

-- | If not <tt>null</tt> , the name of the configuration template for this
--   configuration set.
csdTemplateName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | A list of the configuration options and their values in this
--   configuration set.
csdOptionSettings :: Lens' ConfigurationSettingsDescription [ConfigurationOptionSetting]

-- | The date (in UTC time) when this configuration set was last modified.
csdDateUpdated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The date (in UTC time) when this configuration set was created.
csdDateCreated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The ARN of the platform.
csdPlatformARN :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If not <tt>null</tt> , the name of the environment for this
--   configuration set.
csdEnvironmentName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | The name of the application associated with this configuration set.
csdApplicationName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If this configuration set is associated with an environment, the
--   <tt>DeploymentStatus</tt> parameter indicates the deployment status of
--   this configuration set: * <tt>null</tt> : This configuration is not
--   associated with a running environment. * <tt>pending</tt> : This is a
--   draft configuration that is not deployed to the associated environment
--   but is in the process of deploying. * <tt>deployed</tt> : This is the
--   configuration that is currently deployed to the associated running
--   environment. * <tt>failed</tt> : This is a draft configuration that
--   failed to successfully deploy.
csdDeploymentStatus :: Lens' ConfigurationSettingsDescription (Maybe ConfigurationDeploymentStatus)

-- | The name of the solution stack this configuration set uses.
csdSolutionStackName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | Describes this configuration set.
csdDescription :: Lens' ConfigurationSettingsDescription (Maybe Text)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.UpdateConfigurationTemplate.UpdateConfigurationTemplate


-- | Updates the environment description, deploys a new application
--   version, updates the configuration settings to an entirely new
--   configuration template, or updates select configuration option values
--   in the running environment.
--   
--   Attempting to update both the release and configuration is not allowed
--   and AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterCombination</tt> error.
--   
--   When updating the configuration settings to a new template or
--   individual settings, a draft configuration is created and
--   <tt>DescribeConfigurationSettings</tt> for this environment returns
--   two setting descriptions with different <tt>DeploymentStatus</tt>
--   values.
module Network.AWS.ElasticBeanstalk.UpdateEnvironment

-- | Creates a value of <a>UpdateEnvironment</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ueTemplateName</a> - If this parameter is specified, AWS
--   Elastic Beanstalk deploys this configuration template to the
--   environment. If no such configuration template is found, AWS Elastic
--   Beanstalk returns an <tt>InvalidParameterValue</tt> error.</li>
--   <li><a>ueOptionsToRemove</a> - A list of custom user-defined
--   configuration options to remove from the configuration set for this
--   environment.</li>
--   <li><a>ueOptionSettings</a> - If specified, AWS Elastic Beanstalk
--   updates the configuration set associated with the running environment
--   and sets the specified configuration options to the requested
--   value.</li>
--   <li><a>ueVersionLabel</a> - If this parameter is specified, AWS
--   Elastic Beanstalk deploys the named application version to the
--   environment. If no such application version is found, returns an
--   <tt>InvalidParameterValue</tt> error.</li>
--   <li><a>uePlatformARN</a> - The ARN of the platform, if used.</li>
--   <li><a>ueTier</a> - This specifies the tier to use to update the
--   environment. Condition: At this time, if you change the tier version,
--   name, or type, AWS Elastic Beanstalk returns
--   <tt>InvalidParameterValue</tt> error.</li>
--   <li><a>ueEnvironmentName</a> - The name of the environment to update.
--   If no environment with this name exists, AWS Elastic Beanstalk returns
--   an <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>ueApplicationName</a> - The name of the application with which
--   the environment is associated.</li>
--   <li><a>ueSolutionStackName</a> - This specifies the platform version
--   that the environment will run after the environment is updated.</li>
--   <li><a>ueEnvironmentId</a> - The ID of the environment to update. If
--   no environment with this ID exists, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentName, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.</li>
--   <li><a>ueGroupName</a> - The name of the group to which the target
--   environment belongs. Specify a group name only if the environment's
--   name is specified in an environment manifest and not with the
--   environment name or environment ID parameters. See <a>Environment
--   Manifest (env.yaml)</a> for details.</li>
--   <li><a>ueDescription</a> - If this parameter is specified, AWS Elastic
--   Beanstalk updates the description of this environment.</li>
--   </ul>
updateEnvironment :: UpdateEnvironment

-- | Request to update an environment.
--   
--   <i>See:</i> <a>updateEnvironment</a> smart constructor.
data UpdateEnvironment

-- | If this parameter is specified, AWS Elastic Beanstalk deploys this
--   configuration template to the environment. If no such configuration
--   template is found, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error.
ueTemplateName :: Lens' UpdateEnvironment (Maybe Text)

-- | A list of custom user-defined configuration options to remove from the
--   configuration set for this environment.
ueOptionsToRemove :: Lens' UpdateEnvironment [OptionSpecification]

-- | If specified, AWS Elastic Beanstalk updates the configuration set
--   associated with the running environment and sets the specified
--   configuration options to the requested value.
ueOptionSettings :: Lens' UpdateEnvironment [ConfigurationOptionSetting]

-- | If this parameter is specified, AWS Elastic Beanstalk deploys the
--   named application version to the environment. If no such application
--   version is found, returns an <tt>InvalidParameterValue</tt> error.
ueVersionLabel :: Lens' UpdateEnvironment (Maybe Text)

-- | The ARN of the platform, if used.
uePlatformARN :: Lens' UpdateEnvironment (Maybe Text)

-- | This specifies the tier to use to update the environment. Condition:
--   At this time, if you change the tier version, name, or type, AWS
--   Elastic Beanstalk returns <tt>InvalidParameterValue</tt> error.
ueTier :: Lens' UpdateEnvironment (Maybe EnvironmentTier)

-- | The name of the environment to update. If no environment with this
--   name exists, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentId, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
ueEnvironmentName :: Lens' UpdateEnvironment (Maybe Text)

-- | The name of the application with which the environment is associated.
ueApplicationName :: Lens' UpdateEnvironment (Maybe Text)

-- | This specifies the platform version that the environment will run
--   after the environment is updated.
ueSolutionStackName :: Lens' UpdateEnvironment (Maybe Text)

-- | The ID of the environment to update. If no environment with this ID
--   exists, AWS Elastic Beanstalk returns an
--   <tt>InvalidParameterValue</tt> error. Condition: You must specify
--   either this or an EnvironmentName, or both. If you do not specify
--   either, AWS Elastic Beanstalk returns
--   <tt>MissingRequiredParameter</tt> error.
ueEnvironmentId :: Lens' UpdateEnvironment (Maybe Text)

-- | The name of the group to which the target environment belongs. Specify
--   a group name only if the environment's name is specified in an
--   environment manifest and not with the environment name or environment
--   ID parameters. See <a>Environment Manifest (env.yaml)</a> for details.
ueGroupName :: Lens' UpdateEnvironment (Maybe Text)

-- | If this parameter is specified, AWS Elastic Beanstalk updates the
--   description of this environment.
ueDescription :: Lens' UpdateEnvironment (Maybe Text)

-- | Creates a value of <a>EnvironmentDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eStatus</a> - The current operational status of the
--   environment: * <tt>Launching</tt> : Environment is in the process of
--   initial deployment. * <tt>Updating</tt> : Environment is in the
--   process of updating its configuration settings or application version.
--   * <tt>Ready</tt> : Environment is available to have an action
--   performed on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.</li>
--   <li><a>eCNAME</a> - The URL to the CNAME for this environment.</li>
--   <li><a>eTemplateName</a> - The name of the configuration template used
--   to originally launch this environment.</li>
--   <li><a>eAbortableOperationInProgress</a> - Indicates if there is an
--   in-progress environment configuration update or application version
--   deployment that you can cancel. <tt>true:</tt> There is an update in
--   progress. <tt>false:</tt> There are no updates currently in
--   progress.</li>
--   <li><a>eEndpointURL</a> - For load-balanced, autoscaling environments,
--   the URL to the LoadBalancer. For single-instance environments, the IP
--   address of the instance.</li>
--   <li><a>eResources</a> - The description of the AWS resources used by
--   this environment.</li>
--   <li><a>eDateUpdated</a> - The last modified date for this
--   environment.</li>
--   <li><a>eDateCreated</a> - The creation date for this environment.</li>
--   <li><a>eHealth</a> - Describes the health status of the environment.
--   AWS Elastic Beanstalk indicates the failure levels for a running
--   environment: * <tt>Red</tt> : Indicates the environment is not
--   responsive. Occurs when three or more consecutive failures occur for
--   an environment. * <tt>Yellow</tt> : Indicates that something is wrong.
--   Occurs when two consecutive failures occur for an environment. *
--   <tt>Green</tt> : Indicates the environment is healthy and fully
--   functional. * <tt>Grey</tt> : Default health for a new environment.
--   The environment is not fully launched and health checks have not
--   started or health checks are suspended during an
--   <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt> request.
--   Default: <tt>Grey</tt></li>
--   <li><a>eVersionLabel</a> - The application version deployed in this
--   environment.</li>
--   <li><a>ePlatformARN</a> - The ARN of the platform.</li>
--   <li><a>eTier</a> - Describes the current tier of this
--   environment.</li>
--   <li><a>eEnvironmentName</a> - The name of this environment.</li>
--   <li><a>eApplicationName</a> - The name of the application associated
--   with this environment.</li>
--   <li><a>eEnvironmentARN</a> - The environment's Amazon Resource Name
--   (ARN), which can be used in other API requests that require an
--   ARN.</li>
--   <li><a>eSolutionStackName</a> - The name of the <tt>SolutionStack</tt>
--   deployed with this environment.</li>
--   <li><a>eEnvironmentId</a> - The ID of this environment.</li>
--   <li><a>eHealthStatus</a> - Returns the health status of the
--   application running in your environment. For more information, see
--   <a>Health Colors and Statuses</a> .</li>
--   <li><a>eEnvironmentLinks</a> - A list of links to other environments
--   in the same group.</li>
--   <li><a>eDescription</a> - Describes this environment.</li>
--   </ul>
environmentDescription :: EnvironmentDescription

-- | Describes the properties of an environment.
--   
--   <i>See:</i> <a>environmentDescription</a> smart constructor.
data EnvironmentDescription

-- | The current operational status of the environment: *
--   <tt>Launching</tt> : Environment is in the process of initial
--   deployment. * <tt>Updating</tt> : Environment is in the process of
--   updating its configuration settings or application version. *
--   <tt>Ready</tt> : Environment is available to have an action performed
--   on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.
eStatus :: Lens' EnvironmentDescription (Maybe EnvironmentStatus)

-- | The URL to the CNAME for this environment.
eCNAME :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the configuration template used to originally launch this
--   environment.
eTemplateName :: Lens' EnvironmentDescription (Maybe Text)

-- | Indicates if there is an in-progress environment configuration update
--   or application version deployment that you can cancel. <tt>true:</tt>
--   There is an update in progress. <tt>false:</tt> There are no updates
--   currently in progress.
eAbortableOperationInProgress :: Lens' EnvironmentDescription (Maybe Bool)

-- | For load-balanced, autoscaling environments, the URL to the
--   LoadBalancer. For single-instance environments, the IP address of the
--   instance.
eEndpointURL :: Lens' EnvironmentDescription (Maybe Text)

-- | The description of the AWS resources used by this environment.
eResources :: Lens' EnvironmentDescription (Maybe EnvironmentResourcesDescription)

-- | The last modified date for this environment.
eDateUpdated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | The creation date for this environment.
eDateCreated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | Describes the health status of the environment. AWS Elastic Beanstalk
--   indicates the failure levels for a running environment: * <tt>Red</tt>
--   : Indicates the environment is not responsive. Occurs when three or
--   more consecutive failures occur for an environment. * <tt>Yellow</tt>
--   : Indicates that something is wrong. Occurs when two consecutive
--   failures occur for an environment. * <tt>Green</tt> : Indicates the
--   environment is healthy and fully functional. * <tt>Grey</tt> : Default
--   health for a new environment. The environment is not fully launched
--   and health checks have not started or health checks are suspended
--   during an <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt>
--   request. Default: <tt>Grey</tt>
eHealth :: Lens' EnvironmentDescription (Maybe EnvironmentHealth)

-- | The application version deployed in this environment.
eVersionLabel :: Lens' EnvironmentDescription (Maybe Text)

-- | The ARN of the platform.
ePlatformARN :: Lens' EnvironmentDescription (Maybe Text)

-- | Describes the current tier of this environment.
eTier :: Lens' EnvironmentDescription (Maybe EnvironmentTier)

-- | The name of this environment.
eEnvironmentName :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the application associated with this environment.
eApplicationName :: Lens' EnvironmentDescription (Maybe Text)

-- | The environment's Amazon Resource Name (ARN), which can be used in
--   other API requests that require an ARN.
eEnvironmentARN :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the <tt>SolutionStack</tt> deployed with this environment.
eSolutionStackName :: Lens' EnvironmentDescription (Maybe Text)

-- | The ID of this environment.
eEnvironmentId :: Lens' EnvironmentDescription (Maybe Text)

-- | Returns the health status of the application running in your
--   environment. For more information, see <a>Health Colors and
--   Statuses</a> .
eHealthStatus :: Lens' EnvironmentDescription (Maybe EnvironmentHealthStatus)

-- | A list of links to other environments in the same group.
eEnvironmentLinks :: Lens' EnvironmentDescription [EnvironmentLink]

-- | Describes this environment.
eDescription :: Lens' EnvironmentDescription (Maybe Text)
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.UpdateEnvironment.UpdateEnvironment


-- | Update the list of tags applied to an AWS Elastic Beanstalk resource.
--   Two lists can be passed: <tt>TagsToAdd</tt> for tags to add or update,
--   and <tt>TagsToRemove</tt> .
--   
--   Currently, Elastic Beanstalk only supports tagging of Elastic
--   Beanstalk environments. For details about environment tagging, see
--   <a>Tagging Resources in Your Elastic Beanstalk Environment</a> .
--   
--   If you create a custom IAM user policy to control permission to this
--   operation, specify one of the following two virtual actions (or both)
--   instead of the API operation name:
--   
--   <ul>
--   <li>elasticbeanstalk:AddTags * Controls permission to call
--   <tt>UpdateTagsForResource</tt> and pass a list of tags to add in the
--   <tt>TagsToAdd</tt> parameter.</li>
--   <li>elasticbeanstalk:RemoveTags * Controls permission to call
--   <tt>UpdateTagsForResource</tt> and pass a list of tag keys to remove
--   in the <tt>TagsToRemove</tt> parameter.</li>
--   </ul>
--   
--   For details about creating a custom user policy, see <a>Creating a
--   Custom User Policy</a> .
module Network.AWS.ElasticBeanstalk.UpdateTagsForResource

-- | Creates a value of <a>UpdateTagsForResource</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>utfrTagsToRemove</a> - A list of tag keys to remove. If a tag
--   key doesn't exist, it is silently ignored.</li>
--   <li><a>utfrTagsToAdd</a> - A list of tags to add or update. If a key
--   of an existing tag is added, the tag's value is updated.</li>
--   <li><a>utfrResourceARN</a> - The Amazon Resource Name (ARN) of the
--   resouce to be updated. Must be the ARN of an Elastic Beanstalk
--   environment.</li>
--   </ul>
updateTagsForResource :: Text -> UpdateTagsForResource

-- | <i>See:</i> <a>updateTagsForResource</a> smart constructor.
data UpdateTagsForResource

-- | A list of tag keys to remove. If a tag key doesn't exist, it is
--   silently ignored.
utfrTagsToRemove :: Lens' UpdateTagsForResource [Text]

-- | A list of tags to add or update. If a key of an existing tag is added,
--   the tag's value is updated.
utfrTagsToAdd :: Lens' UpdateTagsForResource [Tag]

-- | The Amazon Resource Name (ARN) of the resouce to be updated. Must be
--   the ARN of an Elastic Beanstalk environment.
utfrResourceARN :: Lens' UpdateTagsForResource Text

-- | Creates a value of <a>UpdateTagsForResourceResponse</a> with the
--   minimum fields required to make a request.
updateTagsForResourceResponse :: UpdateTagsForResourceResponse

-- | <i>See:</i> <a>updateTagsForResourceResponse</a> smart constructor.
data UpdateTagsForResourceResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResourceResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResourceResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResourceResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResourceResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResourceResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Data.Data.Data Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResourceResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.UpdateTagsForResource.UpdateTagsForResource


-- | Takes a set of configuration settings and either a configuration
--   template or environment, and determines whether those values are
--   valid.
--   
--   This action returns a list of messages indicating any errors or
--   warnings associated with the selection of option values.
module Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings

-- | Creates a value of <a>ValidateConfigurationSettings</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>vcsTemplateName</a> - The name of the configuration template to
--   validate the settings against. Condition: You cannot specify both this
--   and an environment name.</li>
--   <li><a>vcsEnvironmentName</a> - The name of the environment to
--   validate the settings against. Condition: You cannot specify both this
--   and a configuration template name.</li>
--   <li><a>vcsApplicationName</a> - The name of the application that the
--   configuration template or environment belongs to.</li>
--   <li><a>vcsOptionSettings</a> - A list of the options and desired
--   values to evaluate.</li>
--   </ul>
validateConfigurationSettings :: Text -> ValidateConfigurationSettings

-- | A list of validation messages for a specified configuration template.
--   
--   <i>See:</i> <a>validateConfigurationSettings</a> smart constructor.
data ValidateConfigurationSettings

-- | The name of the configuration template to validate the settings
--   against. Condition: You cannot specify both this and an environment
--   name.
vcsTemplateName :: Lens' ValidateConfigurationSettings (Maybe Text)

-- | The name of the environment to validate the settings against.
--   Condition: You cannot specify both this and a configuration template
--   name.
vcsEnvironmentName :: Lens' ValidateConfigurationSettings (Maybe Text)

-- | The name of the application that the configuration template or
--   environment belongs to.
vcsApplicationName :: Lens' ValidateConfigurationSettings Text

-- | A list of the options and desired values to evaluate.
vcsOptionSettings :: Lens' ValidateConfigurationSettings [ConfigurationOptionSetting]

-- | Creates a value of <a>ValidateConfigurationSettingsResponse</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>vcsrsMessages</a> - A list of <a>ValidationMessage</a> .</li>
--   <li><a>vcsrsResponseStatus</a> - -- | The response status code.</li>
--   </ul>
validateConfigurationSettingsResponse :: Int -> ValidateConfigurationSettingsResponse

-- | Provides a list of validation messages.
--   
--   <i>See:</i> <a>validateConfigurationSettingsResponse</a> smart
--   constructor.
data ValidateConfigurationSettingsResponse

-- | A list of <a>ValidationMessage</a> .
vcsrsMessages :: Lens' ValidateConfigurationSettingsResponse [ValidationMessage]

-- | <ul>
--   <li>- | The response status code.</li>
--   </ul>
vcsrsResponseStatus :: Lens' ValidateConfigurationSettingsResponse Int
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettingsResponse
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettingsResponse
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettingsResponse
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettingsResponse
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettingsResponse
instance GHC.Generics.Generic Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Data.Data.Data Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance GHC.Show.Show Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance GHC.Read.Read Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance GHC.Classes.Eq Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Network.AWS.Types.AWSRequest Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettingsResponse
instance Data.Hashable.Class.Hashable Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Control.DeepSeq.NFData Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Network.AWS.Data.Headers.ToHeaders Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Network.AWS.Data.Path.ToPath Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings
instance Network.AWS.Data.Query.ToQuery Network.AWS.ElasticBeanstalk.ValidateConfigurationSettings.ValidateConfigurationSettings


module Network.AWS.ElasticBeanstalk.Waiters


-- | <b>AWS Elastic Beanstalk</b>
--   
--   AWS Elastic Beanstalk makes it easy for you to create, deploy, and
--   manage scalable, fault-tolerant applications running on the Amazon Web
--   Services cloud.
--   
--   For more information about this product, go to the <a>AWS Elastic
--   Beanstalk</a> details page. The location of the latest AWS Elastic
--   Beanstalk WSDL is
--   <a>http://elasticbeanstalk.s3.amazonaws.com/doc/2010-12-01/AWSElasticBeanstalk.wsdl</a>
--   . To install the Software Development Kits (SDKs), Integrated
--   Development Environment (IDE) Toolkits, and command line tools that
--   enable you to access the API, go to <a>Tools for Amazon Web
--   Services</a> .
--   
--   <b>Endpoints</b>
--   
--   For a list of region-specific endpoints that AWS Elastic Beanstalk
--   supports, go to <a>Regions and Endpoints</a> in the <i>Amazon Web
--   Services Glossary</i> .
module Network.AWS.ElasticBeanstalk

-- | API version <tt>2010-12-01</tt> of the Amazon Elastic Beanstalk SDK
--   configuration.
elasticBeanstalk :: Service

-- | One or more input parameters is not valid. Please correct the input
--   parameters and try the operation again.
_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of Amazon S3 buckets.
_TooManyBucketsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account does not have a subscription to Amazon S3.
_S3SubscriptionRequiredException :: AsError a => Getting (First ServiceError) a ServiceError

-- | Unable to perform the specified operation because another operation
--   that effects an element in this activity is already in progress.
_OperationInProgressException :: AsError a => Getting (First ServiceError) a ServiceError

-- | You cannot delete the platform version because there are still
--   environments running on it.
_PlatformVersionStillReferencedException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of application versions.
_TooManyApplicationVersionsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of configuration
--   templates.
_TooManyConfigurationTemplatesException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The type of the specified Amazon Resource Name (ARN) isn't supported
--   for this operation.
_ResourceTypeNotSupportedException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account does not have sufficient privileges for one or
--   more AWS services.
_InsufficientPrivilegesException :: AsError a => Getting (First ServiceError) a ServiceError

-- | A generic service exception has occurred.
_ElasticBeanstalkServiceException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The number of tags in the resource would exceed the number of tags
--   that each resource can have.
--   
--   To calculate this, the operation considers both the number of tags the
--   resource already has and the tags this operation would add if it
--   succeeded.
_TooManyTagsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of applications.
_TooManyApplicationsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | You have exceeded the maximum number of allowed platforms associated
--   with the account.
_TooManyPlatformsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | Cannot modify the managed action in its current state.
_ManagedActionInvalidStateException :: AsError a => Getting (First ServiceError) a ServiceError

-- | Unable to delete the Amazon S3 source bundle associated with the
--   application version. The application version was deleted successfully.
_SourceBundleDeletionException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified S3 bucket does not belong to the S3 region in which the
--   service is running. The following regions are supported:
--   
--   <ul>
--   <li>IAD/us-east-1</li>
--   <li>PDX/us-west-2</li>
--   <li>DUB/eu-west-1</li>
--   </ul>
_S3LocationNotInServiceRegionException :: AsError a => Getting (First ServiceError) a ServiceError

-- | AWS CodeBuild is not available in the specified region.
_CodeBuildNotInServiceRegionException :: AsError a => Getting (First ServiceError) a ServiceError

-- | The specified account has reached its limit of environments.
_TooManyEnvironmentsException :: AsError a => Getting (First ServiceError) a ServiceError

-- | A resource doesn't exist for the specified Amazon Resource Name (ARN).
_ResourceNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
data ActionHistoryStatus
AHSCompleted :: ActionHistoryStatus
AHSFailed :: ActionHistoryStatus
AHSUnknown :: ActionHistoryStatus
data ActionStatus
ASPending :: ActionStatus
ASRunning :: ActionStatus
ASScheduled :: ActionStatus
ASUnknown :: ActionStatus
data ActionType
InstanceRefresh :: ActionType
PlatformUpdate :: ActionType
Unknown :: ActionType
data ApplicationVersionStatus
AVSBuilding :: ApplicationVersionStatus
AVSFailed :: ApplicationVersionStatus
AVSProcessed :: ApplicationVersionStatus
AVSProcessing :: ApplicationVersionStatus
AVSUnprocessed :: ApplicationVersionStatus
data ComputeType
BuildGENERAL1Large :: ComputeType
BuildGENERAL1Medium :: ComputeType
BuildGENERAL1Small :: ComputeType
data ConfigurationDeploymentStatus
CDSDeployed :: ConfigurationDeploymentStatus
CDSFailed :: ConfigurationDeploymentStatus
CDSPending :: ConfigurationDeploymentStatus
data ConfigurationOptionValueType
List :: ConfigurationOptionValueType
Scalar :: ConfigurationOptionValueType
data EnvironmentHealth
Green :: EnvironmentHealth
Grey :: EnvironmentHealth
Red :: EnvironmentHealth
Yellow :: EnvironmentHealth
data EnvironmentHealthAttribute
EHAAll :: EnvironmentHealthAttribute
EHAApplicationMetrics :: EnvironmentHealthAttribute
EHACauses :: EnvironmentHealthAttribute
EHAColor :: EnvironmentHealthAttribute
EHAHealthStatus :: EnvironmentHealthAttribute
EHAInstancesHealth :: EnvironmentHealthAttribute
EHARefreshedAt :: EnvironmentHealthAttribute
EHAStatus :: EnvironmentHealthAttribute
data EnvironmentHealthStatus
EHSDegraded :: EnvironmentHealthStatus
EHSInfo :: EnvironmentHealthStatus
EHSNoData :: EnvironmentHealthStatus
EHSOK :: EnvironmentHealthStatus
EHSPending :: EnvironmentHealthStatus
EHSSevere :: EnvironmentHealthStatus
EHSUnknown :: EnvironmentHealthStatus
EHSWarning :: EnvironmentHealthStatus
data EnvironmentInfoType
Bundle :: EnvironmentInfoType
Tail :: EnvironmentInfoType
data EnvironmentStatus
ESLaunching :: EnvironmentStatus
ESReady :: EnvironmentStatus
ESTerminated :: EnvironmentStatus
ESTerminating :: EnvironmentStatus
ESUpdating :: EnvironmentStatus
data EventSeverity
LevelDebug :: EventSeverity
LevelError' :: EventSeverity
LevelFatal :: EventSeverity
LevelInfo :: EventSeverity
LevelTrace :: EventSeverity
LevelWarn :: EventSeverity
data FailureType
CancellationFailed :: FailureType
InternalFailure :: FailureType
InvalidEnvironmentState :: FailureType
PermissionsError :: FailureType
RollbackFailed :: FailureType
RollbackSuccessful :: FailureType
UpdateCancelled :: FailureType
data InstancesHealthAttribute
All :: InstancesHealthAttribute
ApplicationMetrics :: InstancesHealthAttribute
AvailabilityZone :: InstancesHealthAttribute
Causes :: InstancesHealthAttribute
Color :: InstancesHealthAttribute
Deployment :: InstancesHealthAttribute
HealthStatus :: InstancesHealthAttribute
InstanceType :: InstancesHealthAttribute
LaunchedAt :: InstancesHealthAttribute
RefreshedAt :: InstancesHealthAttribute
System :: InstancesHealthAttribute
data PlatformStatus
Creating :: PlatformStatus
Deleted :: PlatformStatus
Deleting :: PlatformStatus
Failed :: PlatformStatus
Ready :: PlatformStatus
data SourceRepository
CodeCommit :: SourceRepository
S3 :: SourceRepository
data SourceType
Git :: SourceType
Zip :: SourceType
data ValidationSeverity
Error' :: ValidationSeverity
Warning :: ValidationSeverity

-- | Describes the properties of an application.
--   
--   <i>See:</i> <a>applicationDescription</a> smart constructor.
data ApplicationDescription

-- | Creates a value of <a>ApplicationDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>adApplicationARN</a> - The Amazon Resource Name (ARN) of the
--   application.</li>
--   <li><a>adVersions</a> - The names of the versions for this
--   application.</li>
--   <li><a>adDateUpdated</a> - The date when the application was last
--   modified.</li>
--   <li><a>adDateCreated</a> - The date when the application was
--   created.</li>
--   <li><a>adApplicationName</a> - The name of the application.</li>
--   <li><a>adConfigurationTemplates</a> - The names of the configuration
--   templates associated with this application.</li>
--   <li><a>adResourceLifecycleConfig</a> - The lifecycle settings for the
--   application.</li>
--   <li><a>adDescription</a> - User-defined description of the
--   application.</li>
--   </ul>
applicationDescription :: ApplicationDescription

-- | The Amazon Resource Name (ARN) of the application.
adApplicationARN :: Lens' ApplicationDescription (Maybe Text)

-- | The names of the versions for this application.
adVersions :: Lens' ApplicationDescription [Text]

-- | The date when the application was last modified.
adDateUpdated :: Lens' ApplicationDescription (Maybe UTCTime)

-- | The date when the application was created.
adDateCreated :: Lens' ApplicationDescription (Maybe UTCTime)

-- | The name of the application.
adApplicationName :: Lens' ApplicationDescription (Maybe Text)

-- | The names of the configuration templates associated with this
--   application.
adConfigurationTemplates :: Lens' ApplicationDescription [Text]

-- | The lifecycle settings for the application.
adResourceLifecycleConfig :: Lens' ApplicationDescription (Maybe ApplicationResourceLifecycleConfig)

-- | User-defined description of the application.
adDescription :: Lens' ApplicationDescription (Maybe Text)

-- | Result message containing a single description of an application.
--   
--   <i>See:</i> <a>applicationDescriptionMessage</a> smart constructor.
data ApplicationDescriptionMessage

-- | Creates a value of <a>ApplicationDescriptionMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>admApplication</a> - The <a>ApplicationDescription</a> of the
--   application.</li>
--   </ul>
applicationDescriptionMessage :: ApplicationDescriptionMessage

-- | The <a>ApplicationDescription</a> of the application.
admApplication :: Lens' ApplicationDescriptionMessage (Maybe ApplicationDescription)

-- | Application request metrics for an AWS Elastic Beanstalk environment.
--   
--   <i>See:</i> <a>applicationMetrics</a> smart constructor.
data ApplicationMetrics

-- | Creates a value of <a>ApplicationMetrics</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>amRequestCount</a> - Average number of requests handled by the
--   web server per second over the last 10 seconds.</li>
--   <li><a>amLatency</a> - Represents the average latency for the slowest
--   X percent of requests over the last 10 seconds. Latencies are in
--   seconds with one millisecond resolution.</li>
--   <li><a>amStatusCodes</a> - Represents the percentage of requests over
--   the last 10 seconds that resulted in each type of status code
--   response.</li>
--   <li><a>amDuration</a> - The amount of time that the metrics cover
--   (usually 10 seconds). For example, you might have 5 requests
--   (<tt>request_count</tt> ) within the most recent time slice of 10
--   seconds (<tt>duration</tt> ).</li>
--   </ul>
applicationMetrics :: ApplicationMetrics

-- | Average number of requests handled by the web server per second over
--   the last 10 seconds.
amRequestCount :: Lens' ApplicationMetrics (Maybe Int)

-- | Represents the average latency for the slowest X percent of requests
--   over the last 10 seconds. Latencies are in seconds with one
--   millisecond resolution.
amLatency :: Lens' ApplicationMetrics (Maybe Latency)

-- | Represents the percentage of requests over the last 10 seconds that
--   resulted in each type of status code response.
amStatusCodes :: Lens' ApplicationMetrics (Maybe StatusCodes)

-- | The amount of time that the metrics cover (usually 10 seconds). For
--   example, you might have 5 requests (<tt>request_count</tt> ) within
--   the most recent time slice of 10 seconds (<tt>duration</tt> ).
amDuration :: Lens' ApplicationMetrics (Maybe Int)

-- | The resource lifecycle configuration for an application. Defines
--   lifecycle settings for resources that belong to the application, and
--   the service role that Elastic Beanstalk assumes in order to apply
--   lifecycle settings. The version lifecycle configuration defines
--   lifecycle settings for application versions.
--   
--   <i>See:</i> <a>applicationResourceLifecycleConfig</a> smart
--   constructor.
data ApplicationResourceLifecycleConfig

-- | Creates a value of <a>ApplicationResourceLifecycleConfig</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>arlcVersionLifecycleConfig</a> - The application version
--   lifecycle configuration.</li>
--   <li><a>arlcServiceRole</a> - The ARN of an IAM service role that
--   Elastic Beanstalk has permission to assume.</li>
--   </ul>
applicationResourceLifecycleConfig :: ApplicationResourceLifecycleConfig

-- | The application version lifecycle configuration.
arlcVersionLifecycleConfig :: Lens' ApplicationResourceLifecycleConfig (Maybe ApplicationVersionLifecycleConfig)

-- | The ARN of an IAM service role that Elastic Beanstalk has permission
--   to assume.
arlcServiceRole :: Lens' ApplicationResourceLifecycleConfig (Maybe Text)

-- | Describes the properties of an application version.
--   
--   <i>See:</i> <a>applicationVersionDescription</a> smart constructor.
data ApplicationVersionDescription

-- | Creates a value of <a>ApplicationVersionDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avdStatus</a> - The processing status of the application
--   version.</li>
--   <li><a>avdSourceBundle</a> - The storage location of the application
--   version's source bundle in Amazon S3.</li>
--   <li><a>avdDateUpdated</a> - The last modified date of the application
--   version.</li>
--   <li><a>avdDateCreated</a> - The creation date of the application
--   version.</li>
--   <li><a>avdVersionLabel</a> - A unique identifier for the application
--   version.</li>
--   <li><a>avdSourceBuildInformation</a> - If the version's source code
--   was retrieved from AWS CodeCommit, the location of the source code for
--   the application version.</li>
--   <li><a>avdApplicationName</a> - The name of the application to which
--   the application version belongs.</li>
--   <li><a>avdApplicationVersionARN</a> - The Amazon Resource Name (ARN)
--   of the application version.</li>
--   <li><a>avdBuildARN</a> - Reference to the artifact from the AWS
--   CodeBuild build.</li>
--   <li><a>avdDescription</a> - The description of the application
--   version.</li>
--   </ul>
applicationVersionDescription :: ApplicationVersionDescription

-- | The processing status of the application version.
avdStatus :: Lens' ApplicationVersionDescription (Maybe ApplicationVersionStatus)

-- | The storage location of the application version's source bundle in
--   Amazon S3.
avdSourceBundle :: Lens' ApplicationVersionDescription (Maybe S3Location)

-- | The last modified date of the application version.
avdDateUpdated :: Lens' ApplicationVersionDescription (Maybe UTCTime)

-- | The creation date of the application version.
avdDateCreated :: Lens' ApplicationVersionDescription (Maybe UTCTime)

-- | A unique identifier for the application version.
avdVersionLabel :: Lens' ApplicationVersionDescription (Maybe Text)

-- | If the version's source code was retrieved from AWS CodeCommit, the
--   location of the source code for the application version.
avdSourceBuildInformation :: Lens' ApplicationVersionDescription (Maybe SourceBuildInformation)

-- | The name of the application to which the application version belongs.
avdApplicationName :: Lens' ApplicationVersionDescription (Maybe Text)

-- | The Amazon Resource Name (ARN) of the application version.
avdApplicationVersionARN :: Lens' ApplicationVersionDescription (Maybe Text)

-- | Reference to the artifact from the AWS CodeBuild build.
avdBuildARN :: Lens' ApplicationVersionDescription (Maybe Text)

-- | The description of the application version.
avdDescription :: Lens' ApplicationVersionDescription (Maybe Text)

-- | Result message wrapping a single description of an application
--   version.
--   
--   <i>See:</i> <a>applicationVersionDescriptionMessage</a> smart
--   constructor.
data ApplicationVersionDescriptionMessage

-- | Creates a value of <a>ApplicationVersionDescriptionMessage</a> with
--   the minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avdmApplicationVersion</a> - The
--   <a>ApplicationVersionDescription</a> of the application version.</li>
--   </ul>
applicationVersionDescriptionMessage :: ApplicationVersionDescriptionMessage

-- | The <a>ApplicationVersionDescription</a> of the application version.
avdmApplicationVersion :: Lens' ApplicationVersionDescriptionMessage (Maybe ApplicationVersionDescription)

-- | The application version lifecycle settings for an application. Defines
--   the rules that Elastic Beanstalk applies to an application's versions
--   in order to avoid hitting the per-region limit for application
--   versions.
--   
--   When Elastic Beanstalk deletes an application version from its
--   database, you can no longer deploy that version to an environment. The
--   source bundle remains in S3 unless you configure the rule to delete
--   it.
--   
--   <i>See:</i> <a>applicationVersionLifecycleConfig</a> smart
--   constructor.
data ApplicationVersionLifecycleConfig

-- | Creates a value of <a>ApplicationVersionLifecycleConfig</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>avlcMaxAgeRule</a> - Specify a max age rule to restrict the
--   length of time that application versions are retained for an
--   application.</li>
--   <li><a>avlcMaxCountRule</a> - Specify a max count rule to restrict the
--   number of application versions that are retained for an
--   application.</li>
--   </ul>
applicationVersionLifecycleConfig :: ApplicationVersionLifecycleConfig

-- | Specify a max age rule to restrict the length of time that application
--   versions are retained for an application.
avlcMaxAgeRule :: Lens' ApplicationVersionLifecycleConfig (Maybe MaxAgeRule)

-- | Specify a max count rule to restrict the number of application
--   versions that are retained for an application.
avlcMaxCountRule :: Lens' ApplicationVersionLifecycleConfig (Maybe MaxCountRule)

-- | Describes an Auto Scaling launch configuration.
--   
--   <i>See:</i> <a>autoScalingGroup</a> smart constructor.
data AutoScalingGroup

-- | Creates a value of <a>AutoScalingGroup</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>asgName</a> - The name of the <tt>AutoScalingGroup</tt> .</li>
--   </ul>
autoScalingGroup :: AutoScalingGroup

-- | The name of the <tt>AutoScalingGroup</tt> .
asgName :: Lens' AutoScalingGroup (Maybe Text)

-- | Settings for an AWS CodeBuild build.
--   
--   <i>See:</i> <a>buildConfiguration</a> smart constructor.
data BuildConfiguration

-- | Creates a value of <a>BuildConfiguration</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>bcArtifactName</a> - The name of the artifact of the CodeBuild
--   build. If provided, Elastic Beanstalk stores the build artifact in the
--   S3 location <i>S3-bucket</i> <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> -<i>artifact-name</i>
--   .zip. If not provided, Elastic Beanstalk stores the build artifact in
--   the S3 location <i>S3-bucket</i>
--   <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> .zip.</li>
--   <li><a>bcComputeType</a> - Information about the compute resources the
--   build project will use. * <tt>BUILD_GENERAL1_SMALL: Use up to 3 GB
--   memory and 2 vCPUs for builds</tt> * <tt>BUILD_GENERAL1_MEDIUM: Use up
--   to 7 GB memory and 4 vCPUs for builds</tt> * <tt>BUILD_GENERAL1_LARGE:
--   Use up to 15 GB memory and 8 vCPUs for builds</tt></li>
--   <li><a>bcTimeoutInMinutes</a> - How long in minutes, from 5 to 480 (8
--   hours), for AWS CodeBuild to wait until timing out any related build
--   that does not get marked as completed. The default is 60 minutes.</li>
--   <li><a>bcCodeBuildServiceRole</a> - The Amazon Resource Name (ARN) of
--   the AWS Identity and Access Management (IAM) role that enables AWS
--   CodeBuild to interact with dependent AWS services on behalf of the AWS
--   account.</li>
--   <li><a>bcImage</a> - The ID of the Docker image to use for this build
--   project.</li>
--   </ul>
buildConfiguration :: Text -> Text -> BuildConfiguration

-- | The name of the artifact of the CodeBuild build. If provided, Elastic
--   Beanstalk stores the build artifact in the S3 location
--   <i>S3-bucket</i> <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> -<i>artifact-name</i>
--   .zip. If not provided, Elastic Beanstalk stores the build artifact in
--   the S3 location <i>S3-bucket</i>
--   <i>resources</i><i>application-name</i>
--   <i>codebuild</i>codebuild-<i>version-label</i> .zip.
bcArtifactName :: Lens' BuildConfiguration (Maybe Text)

-- | Information about the compute resources the build project will use. *
--   <tt>BUILD_GENERAL1_SMALL: Use up to 3 GB memory and 2 vCPUs for
--   builds</tt> * <tt>BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4
--   vCPUs for builds</tt> * <tt>BUILD_GENERAL1_LARGE: Use up to 15 GB
--   memory and 8 vCPUs for builds</tt>
bcComputeType :: Lens' BuildConfiguration (Maybe ComputeType)

-- | How long in minutes, from 5 to 480 (8 hours), for AWS CodeBuild to
--   wait until timing out any related build that does not get marked as
--   completed. The default is 60 minutes.
bcTimeoutInMinutes :: Lens' BuildConfiguration (Maybe Int)

-- | The Amazon Resource Name (ARN) of the AWS Identity and Access
--   Management (IAM) role that enables AWS CodeBuild to interact with
--   dependent AWS services on behalf of the AWS account.
bcCodeBuildServiceRole :: Lens' BuildConfiguration Text

-- | The ID of the Docker image to use for this build project.
bcImage :: Lens' BuildConfiguration Text

-- | The builder used to build the custom platform.
--   
--   <i>See:</i> <a>builder</a> smart constructor.
data Builder

-- | Creates a value of <a>Builder</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>bARN</a> - The ARN of the builder.</li>
--   </ul>
builder :: Builder

-- | The ARN of the builder.
bARN :: Lens' Builder (Maybe Text)

-- | CPU utilization metrics for an instance.
--   
--   <i>See:</i> <a>cpuUtilization</a> smart constructor.
data CPUUtilization

-- | Creates a value of <a>CPUUtilization</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cuSoftIRQ</a> - Percentage of time that the CPU has spent in
--   the <tt>SoftIRQ</tt> state over the last 10 seconds.</li>
--   <li><a>cuIdle</a> - Percentage of time that the CPU has spent in the
--   <tt>Idle</tt> state over the last 10 seconds.</li>
--   <li><a>cuIRQ</a> - Percentage of time that the CPU has spent in the
--   <tt>IRQ</tt> state over the last 10 seconds.</li>
--   <li><a>cuSystem</a> - Percentage of time that the CPU has spent in the
--   <tt>System</tt> state over the last 10 seconds.</li>
--   <li><a>cuUser</a> - Percentage of time that the CPU has spent in the
--   <tt>User</tt> state over the last 10 seconds.</li>
--   <li><a>cuIOWait</a> - Percentage of time that the CPU has spent in the
--   <tt>I/O Wait</tt> state over the last 10 seconds.</li>
--   <li><a>cuNice</a> - Percentage of time that the CPU has spent in the
--   <tt>Nice</tt> state over the last 10 seconds.</li>
--   </ul>
cpuUtilization :: CPUUtilization

-- | Percentage of time that the CPU has spent in the <tt>SoftIRQ</tt>
--   state over the last 10 seconds.
cuSoftIRQ :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>Idle</tt> state
--   over the last 10 seconds.
cuIdle :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>IRQ</tt> state
--   over the last 10 seconds.
cuIRQ :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>System</tt> state
--   over the last 10 seconds.
cuSystem :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>User</tt> state
--   over the last 10 seconds.
cuUser :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>I/O Wait</tt>
--   state over the last 10 seconds.
cuIOWait :: Lens' CPUUtilization (Maybe Double)

-- | Percentage of time that the CPU has spent in the <tt>Nice</tt> state
--   over the last 10 seconds.
cuNice :: Lens' CPUUtilization (Maybe Double)

-- | Describes the possible values for a configuration option.
--   
--   <i>See:</i> <a>configurationOptionDescription</a> smart constructor.
data ConfigurationOptionDescription

-- | Creates a value of <a>ConfigurationOptionDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>codMaxValue</a> - If specified, the configuration option must
--   be a numeric value less than this value.</li>
--   <li><a>codRegex</a> - If specified, the configuration option must be a
--   string value that satisfies this regular expression.</li>
--   <li><a>codMaxLength</a> - If specified, the configuration option must
--   be a string value no longer than this value.</li>
--   <li><a>codUserDefined</a> - An indication of whether the user defined
--   this configuration option: * <tt>true</tt> : This configuration option
--   was defined by the user. It is a valid choice for specifying if this
--   as an <tt>Option to Remove</tt> when updating configuration settings.
--   * <tt>false</tt> : This configuration was not defined by the user.
--   Constraint: You can remove only <tt>UserDefined</tt> options from a
--   configuration. Valid Values: <tt>true</tt> | <tt>false</tt></li>
--   <li><a>codNamespace</a> - A unique namespace identifying the option's
--   associated AWS resource.</li>
--   <li><a>codValueOptions</a> - If specified, values for the
--   configuration option are selected from this list.</li>
--   <li><a>codName</a> - The name of the configuration option.</li>
--   <li><a>codChangeSeverity</a> - An indication of which action is
--   required if the value for this configuration option changes: *
--   <tt>NoInterruption</tt> : There is no interruption to the environment
--   or application availability. * <tt>RestartEnvironment</tt> : The
--   environment is entirely restarted, all AWS resources are deleted and
--   recreated, and the environment is unavailable during the process. *
--   <tt>RestartApplicationServer</tt> : The environment is available the
--   entire time. However, a short application outage occurs when the
--   application servers on the running Amazon EC2 instances are
--   restarted.</li>
--   <li><a>codDefaultValue</a> - The default value for this configuration
--   option.</li>
--   <li><a>codValueType</a> - An indication of which type of values this
--   option has and whether it is allowable to select one or more than one
--   of the possible values: * <tt>Scalar</tt> : Values for this option are
--   a single selection from the possible values, or an unformatted string,
--   or numeric value governed by the <tt>MIN<i>MAX</i>Regex</tt>
--   constraints. * <tt>List</tt> : Values for this option are multiple
--   selections from the possible values. * <tt>Boolean</tt> : Values for
--   this option are either <tt>true</tt> or <tt>false</tt> . *
--   <tt>Json</tt> : Values for this option are a JSON representation of a
--   <tt>ConfigDocument</tt> .</li>
--   <li><a>codMinValue</a> - If specified, the configuration option must
--   be a numeric value greater than this value.</li>
--   </ul>
configurationOptionDescription :: ConfigurationOptionDescription

-- | If specified, the configuration option must be a numeric value less
--   than this value.
codMaxValue :: Lens' ConfigurationOptionDescription (Maybe Int)

-- | If specified, the configuration option must be a string value that
--   satisfies this regular expression.
codRegex :: Lens' ConfigurationOptionDescription (Maybe OptionRestrictionRegex)

-- | If specified, the configuration option must be a string value no
--   longer than this value.
codMaxLength :: Lens' ConfigurationOptionDescription (Maybe Int)

-- | An indication of whether the user defined this configuration option: *
--   <tt>true</tt> : This configuration option was defined by the user. It
--   is a valid choice for specifying if this as an <tt>Option to
--   Remove</tt> when updating configuration settings. * <tt>false</tt> :
--   This configuration was not defined by the user. Constraint: You can
--   remove only <tt>UserDefined</tt> options from a configuration. Valid
--   Values: <tt>true</tt> | <tt>false</tt>
codUserDefined :: Lens' ConfigurationOptionDescription (Maybe Bool)

-- | A unique namespace identifying the option's associated AWS resource.
codNamespace :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | If specified, values for the configuration option are selected from
--   this list.
codValueOptions :: Lens' ConfigurationOptionDescription [Text]

-- | The name of the configuration option.
codName :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | An indication of which action is required if the value for this
--   configuration option changes: * <tt>NoInterruption</tt> : There is no
--   interruption to the environment or application availability. *
--   <tt>RestartEnvironment</tt> : The environment is entirely restarted,
--   all AWS resources are deleted and recreated, and the environment is
--   unavailable during the process. * <tt>RestartApplicationServer</tt> :
--   The environment is available the entire time. However, a short
--   application outage occurs when the application servers on the running
--   Amazon EC2 instances are restarted.
codChangeSeverity :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | The default value for this configuration option.
codDefaultValue :: Lens' ConfigurationOptionDescription (Maybe Text)

-- | An indication of which type of values this option has and whether it
--   is allowable to select one or more than one of the possible values: *
--   <tt>Scalar</tt> : Values for this option are a single selection from
--   the possible values, or an unformatted string, or numeric value
--   governed by the <tt>MIN<i>MAX</i>Regex</tt> constraints. *
--   <tt>List</tt> : Values for this option are multiple selections from
--   the possible values. * <tt>Boolean</tt> : Values for this option are
--   either <tt>true</tt> or <tt>false</tt> . * <tt>Json</tt> : Values for
--   this option are a JSON representation of a <tt>ConfigDocument</tt> .
codValueType :: Lens' ConfigurationOptionDescription (Maybe ConfigurationOptionValueType)

-- | If specified, the configuration option must be a numeric value greater
--   than this value.
codMinValue :: Lens' ConfigurationOptionDescription (Maybe Int)

-- | A specification identifying an individual configuration option along
--   with its current value. For a list of possible option values, go to
--   <a>Option Values</a> in the <i>AWS Elastic Beanstalk Developer
--   Guide</i> .
--   
--   <i>See:</i> <a>configurationOptionSetting</a> smart constructor.
data ConfigurationOptionSetting

-- | Creates a value of <a>ConfigurationOptionSetting</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>cosOptionName</a> - The name of the configuration option.</li>
--   <li><a>cosResourceName</a> - A unique resource name for a time-based
--   scaling configuration option.</li>
--   <li><a>cosNamespace</a> - A unique namespace identifying the option's
--   associated AWS resource.</li>
--   <li><a>cosValue</a> - The current value for the configuration
--   option.</li>
--   </ul>
configurationOptionSetting :: ConfigurationOptionSetting

-- | The name of the configuration option.
cosOptionName :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | A unique resource name for a time-based scaling configuration option.
cosResourceName :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | A unique namespace identifying the option's associated AWS resource.
cosNamespace :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | The current value for the configuration option.
cosValue :: Lens' ConfigurationOptionSetting (Maybe Text)

-- | Describes the settings for a configuration set.
--   
--   <i>See:</i> <a>configurationSettingsDescription</a> smart constructor.
data ConfigurationSettingsDescription

-- | Creates a value of <a>ConfigurationSettingsDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>csdTemplateName</a> - If not <tt>null</tt> , the name of the
--   configuration template for this configuration set.</li>
--   <li><a>csdOptionSettings</a> - A list of the configuration options and
--   their values in this configuration set.</li>
--   <li><a>csdDateUpdated</a> - The date (in UTC time) when this
--   configuration set was last modified.</li>
--   <li><a>csdDateCreated</a> - The date (in UTC time) when this
--   configuration set was created.</li>
--   <li><a>csdPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>csdEnvironmentName</a> - If not <tt>null</tt> , the name of the
--   environment for this configuration set.</li>
--   <li><a>csdApplicationName</a> - The name of the application associated
--   with this configuration set.</li>
--   <li><a>csdDeploymentStatus</a> - If this configuration set is
--   associated with an environment, the <tt>DeploymentStatus</tt>
--   parameter indicates the deployment status of this configuration set: *
--   <tt>null</tt> : This configuration is not associated with a running
--   environment. * <tt>pending</tt> : This is a draft configuration that
--   is not deployed to the associated environment but is in the process of
--   deploying. * <tt>deployed</tt> : This is the configuration that is
--   currently deployed to the associated running environment. *
--   <tt>failed</tt> : This is a draft configuration that failed to
--   successfully deploy.</li>
--   <li><a>csdSolutionStackName</a> - The name of the solution stack this
--   configuration set uses.</li>
--   <li><a>csdDescription</a> - Describes this configuration set.</li>
--   </ul>
configurationSettingsDescription :: ConfigurationSettingsDescription

-- | If not <tt>null</tt> , the name of the configuration template for this
--   configuration set.
csdTemplateName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | A list of the configuration options and their values in this
--   configuration set.
csdOptionSettings :: Lens' ConfigurationSettingsDescription [ConfigurationOptionSetting]

-- | The date (in UTC time) when this configuration set was last modified.
csdDateUpdated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The date (in UTC time) when this configuration set was created.
csdDateCreated :: Lens' ConfigurationSettingsDescription (Maybe UTCTime)

-- | The ARN of the platform.
csdPlatformARN :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If not <tt>null</tt> , the name of the environment for this
--   configuration set.
csdEnvironmentName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | The name of the application associated with this configuration set.
csdApplicationName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | If this configuration set is associated with an environment, the
--   <tt>DeploymentStatus</tt> parameter indicates the deployment status of
--   this configuration set: * <tt>null</tt> : This configuration is not
--   associated with a running environment. * <tt>pending</tt> : This is a
--   draft configuration that is not deployed to the associated environment
--   but is in the process of deploying. * <tt>deployed</tt> : This is the
--   configuration that is currently deployed to the associated running
--   environment. * <tt>failed</tt> : This is a draft configuration that
--   failed to successfully deploy.
csdDeploymentStatus :: Lens' ConfigurationSettingsDescription (Maybe ConfigurationDeploymentStatus)

-- | The name of the solution stack this configuration set uses.
csdSolutionStackName :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | Describes this configuration set.
csdDescription :: Lens' ConfigurationSettingsDescription (Maybe Text)

-- | A custom AMI available to platforms.
--   
--   <i>See:</i> <a>customAMI</a> smart constructor.
data CustomAMI

-- | Creates a value of <a>CustomAMI</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>caVirtualizationType</a> - The type of virtualization used to
--   create the custom AMI.</li>
--   <li><a>caImageId</a> - THe ID of the image used to create the custom
--   AMI.</li>
--   </ul>
customAMI :: CustomAMI

-- | The type of virtualization used to create the custom AMI.
caVirtualizationType :: Lens' CustomAMI (Maybe Text)

-- | THe ID of the image used to create the custom AMI.
caImageId :: Lens' CustomAMI (Maybe Text)

-- | Information about an application version deployment.
--   
--   <i>See:</i> <a>deployment</a> smart constructor.
data Deployment

-- | Creates a value of <a>Deployment</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>dDeploymentId</a> - The ID of the deployment. This number
--   increases by one each time that you deploy source code or change
--   instance configuration settings.</li>
--   <li><a>dStatus</a> - The status of the deployment: * <tt>In
--   Progress</tt> : The deployment is in progress. * <tt>Deployed</tt> :
--   The deployment succeeded. * <tt>Failed</tt> : The deployment
--   failed.</li>
--   <li><a>dDeploymentTime</a> - For in-progress deployments, the time
--   that the deployment started. For completed deployments, the time that
--   the deployment ended.</li>
--   <li><a>dVersionLabel</a> - The version label of the application
--   version in the deployment.</li>
--   </ul>
deployment :: Deployment

-- | The ID of the deployment. This number increases by one each time that
--   you deploy source code or change instance configuration settings.
dDeploymentId :: Lens' Deployment (Maybe Integer)

-- | The status of the deployment: * <tt>In Progress</tt> : The deployment
--   is in progress. * <tt>Deployed</tt> : The deployment succeeded. *
--   <tt>Failed</tt> : The deployment failed.
dStatus :: Lens' Deployment (Maybe Text)

-- | For in-progress deployments, the time that the deployment started. For
--   completed deployments, the time that the deployment ended.
dDeploymentTime :: Lens' Deployment (Maybe UTCTime)

-- | The version label of the application version in the deployment.
dVersionLabel :: Lens' Deployment (Maybe Text)

-- | Describes the properties of an environment.
--   
--   <i>See:</i> <a>environmentDescription</a> smart constructor.
data EnvironmentDescription

-- | Creates a value of <a>EnvironmentDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eStatus</a> - The current operational status of the
--   environment: * <tt>Launching</tt> : Environment is in the process of
--   initial deployment. * <tt>Updating</tt> : Environment is in the
--   process of updating its configuration settings or application version.
--   * <tt>Ready</tt> : Environment is available to have an action
--   performed on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.</li>
--   <li><a>eCNAME</a> - The URL to the CNAME for this environment.</li>
--   <li><a>eTemplateName</a> - The name of the configuration template used
--   to originally launch this environment.</li>
--   <li><a>eAbortableOperationInProgress</a> - Indicates if there is an
--   in-progress environment configuration update or application version
--   deployment that you can cancel. <tt>true:</tt> There is an update in
--   progress. <tt>false:</tt> There are no updates currently in
--   progress.</li>
--   <li><a>eEndpointURL</a> - For load-balanced, autoscaling environments,
--   the URL to the LoadBalancer. For single-instance environments, the IP
--   address of the instance.</li>
--   <li><a>eResources</a> - The description of the AWS resources used by
--   this environment.</li>
--   <li><a>eDateUpdated</a> - The last modified date for this
--   environment.</li>
--   <li><a>eDateCreated</a> - The creation date for this environment.</li>
--   <li><a>eHealth</a> - Describes the health status of the environment.
--   AWS Elastic Beanstalk indicates the failure levels for a running
--   environment: * <tt>Red</tt> : Indicates the environment is not
--   responsive. Occurs when three or more consecutive failures occur for
--   an environment. * <tt>Yellow</tt> : Indicates that something is wrong.
--   Occurs when two consecutive failures occur for an environment. *
--   <tt>Green</tt> : Indicates the environment is healthy and fully
--   functional. * <tt>Grey</tt> : Default health for a new environment.
--   The environment is not fully launched and health checks have not
--   started or health checks are suspended during an
--   <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt> request.
--   Default: <tt>Grey</tt></li>
--   <li><a>eVersionLabel</a> - The application version deployed in this
--   environment.</li>
--   <li><a>ePlatformARN</a> - The ARN of the platform.</li>
--   <li><a>eTier</a> - Describes the current tier of this
--   environment.</li>
--   <li><a>eEnvironmentName</a> - The name of this environment.</li>
--   <li><a>eApplicationName</a> - The name of the application associated
--   with this environment.</li>
--   <li><a>eEnvironmentARN</a> - The environment's Amazon Resource Name
--   (ARN), which can be used in other API requests that require an
--   ARN.</li>
--   <li><a>eSolutionStackName</a> - The name of the <tt>SolutionStack</tt>
--   deployed with this environment.</li>
--   <li><a>eEnvironmentId</a> - The ID of this environment.</li>
--   <li><a>eHealthStatus</a> - Returns the health status of the
--   application running in your environment. For more information, see
--   <a>Health Colors and Statuses</a> .</li>
--   <li><a>eEnvironmentLinks</a> - A list of links to other environments
--   in the same group.</li>
--   <li><a>eDescription</a> - Describes this environment.</li>
--   </ul>
environmentDescription :: EnvironmentDescription

-- | The current operational status of the environment: *
--   <tt>Launching</tt> : Environment is in the process of initial
--   deployment. * <tt>Updating</tt> : Environment is in the process of
--   updating its configuration settings or application version. *
--   <tt>Ready</tt> : Environment is available to have an action performed
--   on it, such as update or terminate. * <tt>Terminating</tt> :
--   Environment is in the shut-down process. * <tt>Terminated</tt> :
--   Environment is not running.
eStatus :: Lens' EnvironmentDescription (Maybe EnvironmentStatus)

-- | The URL to the CNAME for this environment.
eCNAME :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the configuration template used to originally launch this
--   environment.
eTemplateName :: Lens' EnvironmentDescription (Maybe Text)

-- | Indicates if there is an in-progress environment configuration update
--   or application version deployment that you can cancel. <tt>true:</tt>
--   There is an update in progress. <tt>false:</tt> There are no updates
--   currently in progress.
eAbortableOperationInProgress :: Lens' EnvironmentDescription (Maybe Bool)

-- | For load-balanced, autoscaling environments, the URL to the
--   LoadBalancer. For single-instance environments, the IP address of the
--   instance.
eEndpointURL :: Lens' EnvironmentDescription (Maybe Text)

-- | The description of the AWS resources used by this environment.
eResources :: Lens' EnvironmentDescription (Maybe EnvironmentResourcesDescription)

-- | The last modified date for this environment.
eDateUpdated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | The creation date for this environment.
eDateCreated :: Lens' EnvironmentDescription (Maybe UTCTime)

-- | Describes the health status of the environment. AWS Elastic Beanstalk
--   indicates the failure levels for a running environment: * <tt>Red</tt>
--   : Indicates the environment is not responsive. Occurs when three or
--   more consecutive failures occur for an environment. * <tt>Yellow</tt>
--   : Indicates that something is wrong. Occurs when two consecutive
--   failures occur for an environment. * <tt>Green</tt> : Indicates the
--   environment is healthy and fully functional. * <tt>Grey</tt> : Default
--   health for a new environment. The environment is not fully launched
--   and health checks have not started or health checks are suspended
--   during an <tt>UpdateEnvironment</tt> or <tt>RestartEnvironement</tt>
--   request. Default: <tt>Grey</tt>
eHealth :: Lens' EnvironmentDescription (Maybe EnvironmentHealth)

-- | The application version deployed in this environment.
eVersionLabel :: Lens' EnvironmentDescription (Maybe Text)

-- | The ARN of the platform.
ePlatformARN :: Lens' EnvironmentDescription (Maybe Text)

-- | Describes the current tier of this environment.
eTier :: Lens' EnvironmentDescription (Maybe EnvironmentTier)

-- | The name of this environment.
eEnvironmentName :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the application associated with this environment.
eApplicationName :: Lens' EnvironmentDescription (Maybe Text)

-- | The environment's Amazon Resource Name (ARN), which can be used in
--   other API requests that require an ARN.
eEnvironmentARN :: Lens' EnvironmentDescription (Maybe Text)

-- | The name of the <tt>SolutionStack</tt> deployed with this environment.
eSolutionStackName :: Lens' EnvironmentDescription (Maybe Text)

-- | The ID of this environment.
eEnvironmentId :: Lens' EnvironmentDescription (Maybe Text)

-- | Returns the health status of the application running in your
--   environment. For more information, see <a>Health Colors and
--   Statuses</a> .
eHealthStatus :: Lens' EnvironmentDescription (Maybe EnvironmentHealthStatus)

-- | A list of links to other environments in the same group.
eEnvironmentLinks :: Lens' EnvironmentDescription [EnvironmentLink]

-- | Describes this environment.
eDescription :: Lens' EnvironmentDescription (Maybe Text)

-- | Result message containing a list of environment descriptions.
--   
--   <i>See:</i> <a>environmentDescriptionsMessage</a> smart constructor.
data EnvironmentDescriptionsMessage

-- | Creates a value of <a>EnvironmentDescriptionsMessage</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>edmNextToken</a> - In a paginated request, the token that you
--   can pass in a subsequent request to get the next response page.</li>
--   <li><a>edmEnvironments</a> - Returns an <a>EnvironmentDescription</a>
--   list.</li>
--   </ul>
environmentDescriptionsMessage :: EnvironmentDescriptionsMessage

-- | In a paginated request, the token that you can pass in a subsequent
--   request to get the next response page.
edmNextToken :: Lens' EnvironmentDescriptionsMessage (Maybe Text)

-- | Returns an <a>EnvironmentDescription</a> list.
edmEnvironments :: Lens' EnvironmentDescriptionsMessage [EnvironmentDescription]

-- | The information retrieved from the Amazon EC2 instances.
--   
--   <i>See:</i> <a>environmentInfoDescription</a> smart constructor.
data EnvironmentInfoDescription

-- | Creates a value of <a>EnvironmentInfoDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>eidSampleTimestamp</a> - The time stamp when this information
--   was retrieved.</li>
--   <li><a>eidEC2InstanceId</a> - The Amazon EC2 Instance ID for this
--   information.</li>
--   <li><a>eidInfoType</a> - The type of information retrieved.</li>
--   <li><a>eidMessage</a> - The retrieved information.</li>
--   </ul>
environmentInfoDescription :: EnvironmentInfoDescription

-- | The time stamp when this information was retrieved.
eidSampleTimestamp :: Lens' EnvironmentInfoDescription (Maybe UTCTime)

-- | The Amazon EC2 Instance ID for this information.
eidEC2InstanceId :: Lens' EnvironmentInfoDescription (Maybe Text)

-- | The type of information retrieved.
eidInfoType :: Lens' EnvironmentInfoDescription (Maybe EnvironmentInfoType)

-- | The retrieved information.
eidMessage :: Lens' EnvironmentInfoDescription (Maybe Text)

-- | A link to another environment, defined in the environment's manifest.
--   Links provide connection information in system properties that can be
--   used to connect to another environment in the same group. See
--   <a>Environment Manifest (env.yaml)</a> for details.
--   
--   <i>See:</i> <a>environmentLink</a> smart constructor.
data EnvironmentLink

-- | Creates a value of <a>EnvironmentLink</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>elLinkName</a> - The name of the link.</li>
--   <li><a>elEnvironmentName</a> - The name of the linked environment (the
--   dependency).</li>
--   </ul>
environmentLink :: EnvironmentLink

-- | The name of the link.
elLinkName :: Lens' EnvironmentLink (Maybe Text)

-- | The name of the linked environment (the dependency).
elEnvironmentName :: Lens' EnvironmentLink (Maybe Text)

-- | Describes the AWS resources in use by this environment. This data is
--   live.
--   
--   <i>See:</i> <a>environmentResourceDescription</a> smart constructor.
data EnvironmentResourceDescription

-- | Creates a value of <a>EnvironmentResourceDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>erdQueues</a> - The queues used by this environment.</li>
--   <li><a>erdTriggers</a> - The <tt>AutoScaling</tt> triggers in use by
--   this environment.</li>
--   <li><a>erdLoadBalancers</a> - The LoadBalancers in use by this
--   environment.</li>
--   <li><a>erdEnvironmentName</a> - The name of the environment.</li>
--   <li><a>erdInstances</a> - The Amazon EC2 instances used by this
--   environment.</li>
--   <li><a>erdLaunchConfigurations</a> - The Auto Scaling launch
--   configurations in use by this environment.</li>
--   <li><a>erdAutoScalingGroups</a> - The <tt>AutoScalingGroups</tt> used
--   by this environment.</li>
--   </ul>
environmentResourceDescription :: EnvironmentResourceDescription

-- | The queues used by this environment.
erdQueues :: Lens' EnvironmentResourceDescription [Queue]

-- | The <tt>AutoScaling</tt> triggers in use by this environment.
erdTriggers :: Lens' EnvironmentResourceDescription [Trigger]

-- | The LoadBalancers in use by this environment.
erdLoadBalancers :: Lens' EnvironmentResourceDescription [LoadBalancer]

-- | The name of the environment.
erdEnvironmentName :: Lens' EnvironmentResourceDescription (Maybe Text)

-- | The Amazon EC2 instances used by this environment.
erdInstances :: Lens' EnvironmentResourceDescription [Instance]

-- | The Auto Scaling launch configurations in use by this environment.
erdLaunchConfigurations :: Lens' EnvironmentResourceDescription [LaunchConfiguration]

-- | The <tt>AutoScalingGroups</tt> used by this environment.
erdAutoScalingGroups :: Lens' EnvironmentResourceDescription [AutoScalingGroup]

-- | Describes the AWS resources in use by this environment. This data is
--   not live data.
--   
--   <i>See:</i> <a>environmentResourcesDescription</a> smart constructor.
data EnvironmentResourcesDescription

-- | Creates a value of <a>EnvironmentResourcesDescription</a> with the
--   minimum fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>erdLoadBalancer</a> - Describes the LoadBalancer.</li>
--   </ul>
environmentResourcesDescription :: EnvironmentResourcesDescription

-- | Describes the LoadBalancer.
erdLoadBalancer :: Lens' EnvironmentResourcesDescription (Maybe LoadBalancerDescription)

-- | Describes the properties of an environment tier
--   
--   <i>See:</i> <a>environmentTier</a> smart constructor.
data EnvironmentTier

-- | Creates a value of <a>EnvironmentTier</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>etName</a> - The name of this environment tier.</li>
--   <li><a>etVersion</a> - The version of this environment tier.</li>
--   <li><a>etType</a> - The type of this environment tier.</li>
--   </ul>
environmentTier :: EnvironmentTier

-- | The name of this environment tier.
etName :: Lens' EnvironmentTier (Maybe Text)

-- | The version of this environment tier.
etVersion :: Lens' EnvironmentTier (Maybe Text)

-- | The type of this environment tier.
etType :: Lens' EnvironmentTier (Maybe Text)

-- | Describes an event.
--   
--   <i>See:</i> <a>eventDescription</a> smart constructor.
data EventDescription

-- | Creates a value of <a>EventDescription</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>edRequestId</a> - The web service request ID for the activity
--   of this event.</li>
--   <li><a>edTemplateName</a> - The name of the configuration associated
--   with this event.</li>
--   <li><a>edSeverity</a> - The severity level of this event.</li>
--   <li><a>edVersionLabel</a> - The release label for the application
--   version associated with this event.</li>
--   <li><a>edPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>edEnvironmentName</a> - The name of the environment associated
--   with this event.</li>
--   <li><a>edApplicationName</a> - The application associated with the
--   event.</li>
--   <li><a>edEventDate</a> - The date when the event occurred.</li>
--   <li><a>edMessage</a> - The event message.</li>
--   </ul>
eventDescription :: EventDescription

-- | The web service request ID for the activity of this event.
edRequestId :: Lens' EventDescription (Maybe Text)

-- | The name of the configuration associated with this event.
edTemplateName :: Lens' EventDescription (Maybe Text)

-- | The severity level of this event.
edSeverity :: Lens' EventDescription (Maybe EventSeverity)

-- | The release label for the application version associated with this
--   event.
edVersionLabel :: Lens' EventDescription (Maybe Text)

-- | The ARN of the platform.
edPlatformARN :: Lens' EventDescription (Maybe Text)

-- | The name of the environment associated with this event.
edEnvironmentName :: Lens' EventDescription (Maybe Text)

-- | The application associated with the event.
edApplicationName :: Lens' EventDescription (Maybe Text)

-- | The date when the event occurred.
edEventDate :: Lens' EventDescription (Maybe UTCTime)

-- | The event message.
edMessage :: Lens' EventDescription (Maybe Text)

-- | The description of an Amazon EC2 instance.
--   
--   <i>See:</i> <a>instance'</a> smart constructor.
data Instance

-- | Creates a value of <a>Instance</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>iId</a> - The ID of the Amazon EC2 instance.</li>
--   </ul>
instance' :: Instance

-- | The ID of the Amazon EC2 instance.
iId :: Lens' Instance (Maybe Text)

-- | Represents summary information about the health of an instance. For
--   more information, see <a>Health Colors and Statuses</a> .
--   
--   <i>See:</i> <a>instanceHealthSummary</a> smart constructor.
data InstanceHealthSummary

-- | Creates a value of <a>InstanceHealthSummary</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ihsOK</a> - <b>Green.</b> An instance is passing health checks
--   and the health agent is not reporting any problems.</li>
--   <li><a>ihsPending</a> - <b>Grey.</b> An operation is in progress on an
--   instance within the command timeout.</li>
--   <li><a>ihsSevere</a> - <b>Red.</b> The health agent is reporting a
--   very high number of request failures or other issues for an instance
--   or environment.</li>
--   <li><a>ihsUnknown</a> - <b>Grey.</b> AWS Elastic Beanstalk and the
--   health agent are reporting an insufficient amount of data on an
--   instance.</li>
--   <li><a>ihsNoData</a> - <b>Grey.</b> AWS Elastic Beanstalk and the
--   health agent are reporting no data on an instance.</li>
--   <li><a>ihsWarning</a> - <b>Yellow.</b> The health agent is reporting a
--   moderate number of request failures or other issues for an instance or
--   environment.</li>
--   <li><a>ihsDegraded</a> - <b>Red.</b> The health agent is reporting a
--   high number of request failures or other issues for an instance or
--   environment.</li>
--   <li><a>ihsInfo</a> - <b>Green.</b> An operation is in progress on an
--   instance.</li>
--   </ul>
instanceHealthSummary :: InstanceHealthSummary

-- | <b>Green.</b> An instance is passing health checks and the health
--   agent is not reporting any problems.
ihsOK :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Grey.</b> An operation is in progress on an instance within the
--   command timeout.
ihsPending :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Red.</b> The health agent is reporting a very high number of
--   request failures or other issues for an instance or environment.
ihsSevere :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Grey.</b> AWS Elastic Beanstalk and the health agent are reporting
--   an insufficient amount of data on an instance.
ihsUnknown :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Grey.</b> AWS Elastic Beanstalk and the health agent are reporting
--   no data on an instance.
ihsNoData :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Yellow.</b> The health agent is reporting a moderate number of
--   request failures or other issues for an instance or environment.
ihsWarning :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Red.</b> The health agent is reporting a high number of request
--   failures or other issues for an instance or environment.
ihsDegraded :: Lens' InstanceHealthSummary (Maybe Int)

-- | <b>Green.</b> An operation is in progress on an instance.
ihsInfo :: Lens' InstanceHealthSummary (Maybe Int)

-- | Represents the average latency for the slowest X percent of requests
--   over the last 10 seconds.
--   
--   <i>See:</i> <a>latency</a> smart constructor.
data Latency

-- | Creates a value of <a>Latency</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lP75</a> - The average latency for the slowest 25 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP50</a> - The average latency for the slowest 50 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP85</a> - The average latency for the slowest 15 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP999</a> - The average latency for the slowest 0.1 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP90</a> - The average latency for the slowest 10 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP95</a> - The average latency for the slowest 5 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP99</a> - The average latency for the slowest 1 percent of
--   requests over the last 10 seconds.</li>
--   <li><a>lP10</a> - The average latency for the slowest 90 percent of
--   requests over the last 10 seconds.</li>
--   </ul>
latency :: Latency

-- | The average latency for the slowest 25 percent of requests over the
--   last 10 seconds.
lP75 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 50 percent of requests over the
--   last 10 seconds.
lP50 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 15 percent of requests over the
--   last 10 seconds.
lP85 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 0.1 percent of requests over the
--   last 10 seconds.
lP999 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 10 percent of requests over the
--   last 10 seconds.
lP90 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 5 percent of requests over the
--   last 10 seconds.
lP95 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 1 percent of requests over the
--   last 10 seconds.
lP99 :: Lens' Latency (Maybe Double)

-- | The average latency for the slowest 90 percent of requests over the
--   last 10 seconds.
lP10 :: Lens' Latency (Maybe Double)

-- | Describes an Auto Scaling launch configuration.
--   
--   <i>See:</i> <a>launchConfiguration</a> smart constructor.
data LaunchConfiguration

-- | Creates a value of <a>LaunchConfiguration</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lcName</a> - The name of the launch configuration.</li>
--   </ul>
launchConfiguration :: LaunchConfiguration

-- | The name of the launch configuration.
lcName :: Lens' LaunchConfiguration (Maybe Text)

-- | Describes the properties of a Listener for the LoadBalancer.
--   
--   <i>See:</i> <a>listener</a> smart constructor.
data Listener

-- | Creates a value of <a>Listener</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lProtocol</a> - The protocol that is used by the Listener.</li>
--   <li><a>lPort</a> - The port that is used by the Listener.</li>
--   </ul>
listener :: Listener

-- | The protocol that is used by the Listener.
lProtocol :: Lens' Listener (Maybe Text)

-- | The port that is used by the Listener.
lPort :: Lens' Listener (Maybe Int)

-- | Describes a LoadBalancer.
--   
--   <i>See:</i> <a>loadBalancer</a> smart constructor.
data LoadBalancer

-- | Creates a value of <a>LoadBalancer</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lbName</a> - The name of the LoadBalancer.</li>
--   </ul>
loadBalancer :: LoadBalancer

-- | The name of the LoadBalancer.
lbName :: Lens' LoadBalancer (Maybe Text)

-- | Describes the details of a LoadBalancer.
--   
--   <i>See:</i> <a>loadBalancerDescription</a> smart constructor.
data LoadBalancerDescription

-- | Creates a value of <a>LoadBalancerDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>lbdLoadBalancerName</a> - The name of the LoadBalancer.</li>
--   <li><a>lbdDomain</a> - The domain name of the LoadBalancer.</li>
--   <li><a>lbdListeners</a> - A list of Listeners used by the
--   LoadBalancer.</li>
--   </ul>
loadBalancerDescription :: LoadBalancerDescription

-- | The name of the LoadBalancer.
lbdLoadBalancerName :: Lens' LoadBalancerDescription (Maybe Text)

-- | The domain name of the LoadBalancer.
lbdDomain :: Lens' LoadBalancerDescription (Maybe Text)

-- | A list of Listeners used by the LoadBalancer.
lbdListeners :: Lens' LoadBalancerDescription [Listener]

-- | The record of an upcoming or in-progress managed action.
--   
--   <i>See:</i> <a>managedAction</a> smart constructor.
data ManagedAction

-- | Creates a value of <a>ManagedAction</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>maStatus</a> - The status of the managed action. If the action
--   is <tt>Scheduled</tt> , you can apply it immediately with
--   <tt>ApplyEnvironmentManagedAction</tt> .</li>
--   <li><a>maActionId</a> - A unique identifier for the managed
--   action.</li>
--   <li><a>maWindowStartTime</a> - The start time of the maintenance
--   window in which the managed action will execute.</li>
--   <li><a>maActionDescription</a> - A description of the managed
--   action.</li>
--   <li><a>maActionType</a> - The type of managed action.</li>
--   </ul>
managedAction :: ManagedAction

-- | The status of the managed action. If the action is <tt>Scheduled</tt>
--   , you can apply it immediately with
--   <tt>ApplyEnvironmentManagedAction</tt> .
maStatus :: Lens' ManagedAction (Maybe ActionStatus)

-- | A unique identifier for the managed action.
maActionId :: Lens' ManagedAction (Maybe Text)

-- | The start time of the maintenance window in which the managed action
--   will execute.
maWindowStartTime :: Lens' ManagedAction (Maybe UTCTime)

-- | A description of the managed action.
maActionDescription :: Lens' ManagedAction (Maybe Text)

-- | The type of managed action.
maActionType :: Lens' ManagedAction (Maybe ActionType)

-- | The record of a completed or failed managed action.
--   
--   <i>See:</i> <a>managedActionHistoryItem</a> smart constructor.
data ManagedActionHistoryItem

-- | Creates a value of <a>ManagedActionHistoryItem</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>mahiStatus</a> - The status of the action.</li>
--   <li><a>mahiFailureType</a> - If the action failed, the type of
--   failure.</li>
--   <li><a>mahiActionId</a> - A unique identifier for the managed
--   action.</li>
--   <li><a>mahiFailureDescription</a> - If the action failed, a
--   description of the failure.</li>
--   <li><a>mahiFinishedTime</a> - The date and time that the action
--   finished executing.</li>
--   <li><a>mahiActionDescription</a> - A description of the managed
--   action.</li>
--   <li><a>mahiExecutedTime</a> - The date and time that the action
--   started executing.</li>
--   <li><a>mahiActionType</a> - The type of the managed action.</li>
--   </ul>
managedActionHistoryItem :: ManagedActionHistoryItem

-- | The status of the action.
mahiStatus :: Lens' ManagedActionHistoryItem (Maybe ActionHistoryStatus)

-- | If the action failed, the type of failure.
mahiFailureType :: Lens' ManagedActionHistoryItem (Maybe FailureType)

-- | A unique identifier for the managed action.
mahiActionId :: Lens' ManagedActionHistoryItem (Maybe Text)

-- | If the action failed, a description of the failure.
mahiFailureDescription :: Lens' ManagedActionHistoryItem (Maybe Text)

-- | The date and time that the action finished executing.
mahiFinishedTime :: Lens' ManagedActionHistoryItem (Maybe UTCTime)

-- | A description of the managed action.
mahiActionDescription :: Lens' ManagedActionHistoryItem (Maybe Text)

-- | The date and time that the action started executing.
mahiExecutedTime :: Lens' ManagedActionHistoryItem (Maybe UTCTime)

-- | The type of the managed action.
mahiActionType :: Lens' ManagedActionHistoryItem (Maybe ActionType)

-- | A lifecycle rule that deletes application versions after the specified
--   number of days.
--   
--   <i>See:</i> <a>maxAgeRule</a> smart constructor.
data MaxAgeRule

-- | Creates a value of <a>MaxAgeRule</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>marDeleteSourceFromS3</a> - Set to <tt>true</tt> to delete a
--   version's source bundle from Amazon S3 when Elastic Beanstalk deletes
--   the application version.</li>
--   <li><a>marMaxAgeInDays</a> - Specify the number of days to retain an
--   application versions.</li>
--   <li><a>marEnabled</a> - Specify <tt>true</tt> to apply the rule, or
--   <tt>false</tt> to disable it.</li>
--   </ul>
maxAgeRule :: Bool -> MaxAgeRule

-- | Set to <tt>true</tt> to delete a version's source bundle from Amazon
--   S3 when Elastic Beanstalk deletes the application version.
marDeleteSourceFromS3 :: Lens' MaxAgeRule (Maybe Bool)

-- | Specify the number of days to retain an application versions.
marMaxAgeInDays :: Lens' MaxAgeRule (Maybe Int)

-- | Specify <tt>true</tt> to apply the rule, or <tt>false</tt> to disable
--   it.
marEnabled :: Lens' MaxAgeRule Bool

-- | A lifecycle rule that deletes the oldest application version when the
--   maximum count is exceeded.
--   
--   <i>See:</i> <a>maxCountRule</a> smart constructor.
data MaxCountRule

-- | Creates a value of <a>MaxCountRule</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>mcrMaxCount</a> - Specify the maximum number of application
--   versions to retain.</li>
--   <li><a>mcrDeleteSourceFromS3</a> - Set to <tt>true</tt> to delete a
--   version's source bundle from Amazon S3 when Elastic Beanstalk deletes
--   the application version.</li>
--   <li><a>mcrEnabled</a> - Specify <tt>true</tt> to apply the rule, or
--   <tt>false</tt> to disable it.</li>
--   </ul>
maxCountRule :: Bool -> MaxCountRule

-- | Specify the maximum number of application versions to retain.
mcrMaxCount :: Lens' MaxCountRule (Maybe Int)

-- | Set to <tt>true</tt> to delete a version's source bundle from Amazon
--   S3 when Elastic Beanstalk deletes the application version.
mcrDeleteSourceFromS3 :: Lens' MaxCountRule (Maybe Bool)

-- | Specify <tt>true</tt> to apply the rule, or <tt>false</tt> to disable
--   it.
mcrEnabled :: Lens' MaxCountRule Bool

-- | A regular expression representing a restriction on a string
--   configuration option value.
--   
--   <i>See:</i> <a>optionRestrictionRegex</a> smart constructor.
data OptionRestrictionRegex

-- | Creates a value of <a>OptionRestrictionRegex</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>orrPattern</a> - The regular expression pattern that a string
--   configuration option value with this restriction must match.</li>
--   <li><a>orrLabel</a> - A unique name representing this regular
--   expression.</li>
--   </ul>
optionRestrictionRegex :: OptionRestrictionRegex

-- | The regular expression pattern that a string configuration option
--   value with this restriction must match.
orrPattern :: Lens' OptionRestrictionRegex (Maybe Text)

-- | A unique name representing this regular expression.
orrLabel :: Lens' OptionRestrictionRegex (Maybe Text)

-- | A specification identifying an individual configuration option.
--   
--   <i>See:</i> <a>optionSpecification</a> smart constructor.
data OptionSpecification

-- | Creates a value of <a>OptionSpecification</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>osOptionName</a> - The name of the configuration option.</li>
--   <li><a>osResourceName</a> - A unique resource name for a time-based
--   scaling configuration option.</li>
--   <li><a>osNamespace</a> - A unique namespace identifying the option's
--   associated AWS resource.</li>
--   </ul>
optionSpecification :: OptionSpecification

-- | The name of the configuration option.
osOptionName :: Lens' OptionSpecification (Maybe Text)

-- | A unique resource name for a time-based scaling configuration option.
osResourceName :: Lens' OptionSpecification (Maybe Text)

-- | A unique namespace identifying the option's associated AWS resource.
osNamespace :: Lens' OptionSpecification (Maybe Text)

-- | Detailed information about a platform.
--   
--   <i>See:</i> <a>platformDescription</a> smart constructor.
data PlatformDescription

-- | Creates a value of <a>PlatformDescription</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pdSupportedAddonList</a> - The additions supported by the
--   platform.</li>
--   <li><a>pdPlatformCategory</a> - The category of the platform.</li>
--   <li><a>pdPlatformVersion</a> - The version of the platform.</li>
--   <li><a>pdPlatformStatus</a> - The status of the platform.</li>
--   <li><a>pdMaintainer</a> - Information about the maintainer of the
--   platform.</li>
--   <li><a>pdPlatformOwner</a> - The AWS account ID of the person who
--   created the platform.</li>
--   <li><a>pdDateUpdated</a> - The date when the platform was last
--   updated.</li>
--   <li><a>pdCustomAMIList</a> - The custom AMIs supported by the
--   platform.</li>
--   <li><a>pdDateCreated</a> - The date when the platform was
--   created.</li>
--   <li><a>pdOperatingSystemName</a> - The operating system used by the
--   platform.</li>
--   <li><a>pdFrameworks</a> - The frameworks supported by the
--   platform.</li>
--   <li><a>pdPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>pdOperatingSystemVersion</a> - The version of the operating
--   system used by the platform.</li>
--   <li><a>pdProgrammingLanguages</a> - The programming languages
--   supported by the platform.</li>
--   <li><a>pdSolutionStackName</a> - The name of the solution stack used
--   by the platform.</li>
--   <li><a>pdPlatformName</a> - The name of the platform.</li>
--   <li><a>pdDescription</a> - The description of the platform.</li>
--   <li><a>pdSupportedTierList</a> - The tiers supported by the
--   platform.</li>
--   </ul>
platformDescription :: PlatformDescription

-- | The additions supported by the platform.
pdSupportedAddonList :: Lens' PlatformDescription [Text]

-- | The category of the platform.
pdPlatformCategory :: Lens' PlatformDescription (Maybe Text)

-- | The version of the platform.
pdPlatformVersion :: Lens' PlatformDescription (Maybe Text)

-- | The status of the platform.
pdPlatformStatus :: Lens' PlatformDescription (Maybe PlatformStatus)

-- | Information about the maintainer of the platform.
pdMaintainer :: Lens' PlatformDescription (Maybe Text)

-- | The AWS account ID of the person who created the platform.
pdPlatformOwner :: Lens' PlatformDescription (Maybe Text)

-- | The date when the platform was last updated.
pdDateUpdated :: Lens' PlatformDescription (Maybe UTCTime)

-- | The custom AMIs supported by the platform.
pdCustomAMIList :: Lens' PlatformDescription [CustomAMI]

-- | The date when the platform was created.
pdDateCreated :: Lens' PlatformDescription (Maybe UTCTime)

-- | The operating system used by the platform.
pdOperatingSystemName :: Lens' PlatformDescription (Maybe Text)

-- | The frameworks supported by the platform.
pdFrameworks :: Lens' PlatformDescription [PlatformFramework]

-- | The ARN of the platform.
pdPlatformARN :: Lens' PlatformDescription (Maybe Text)

-- | The version of the operating system used by the platform.
pdOperatingSystemVersion :: Lens' PlatformDescription (Maybe Text)

-- | The programming languages supported by the platform.
pdProgrammingLanguages :: Lens' PlatformDescription [PlatformProgrammingLanguage]

-- | The name of the solution stack used by the platform.
pdSolutionStackName :: Lens' PlatformDescription (Maybe Text)

-- | The name of the platform.
pdPlatformName :: Lens' PlatformDescription (Maybe Text)

-- | The description of the platform.
pdDescription :: Lens' PlatformDescription (Maybe Text)

-- | The tiers supported by the platform.
pdSupportedTierList :: Lens' PlatformDescription [Text]

-- | Specify criteria to restrict the results when listing custom
--   platforms.
--   
--   The filter is evaluated as the expression:
--   
--   <tt>Type</tt> <tt>Operator</tt> <tt>Values[i]</tt>
--   
--   <i>See:</i> <a>platformFilter</a> smart constructor.
data PlatformFilter

-- | Creates a value of <a>PlatformFilter</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pfValues</a> - The list of values applied to the custom
--   platform attribute.</li>
--   <li><a>pfOperator</a> - The operator to apply to the <tt>Type</tt>
--   with each of the <tt>Values</tt> . Valid Values: <tt>=</tt> (equal to)
--   | <tt>!=</tt> (not equal to) | <tt>&lt;</tt> (less than) |
--   <tt>&lt;=</tt> (less than or equal to) | <tt>&gt;</tt> (greater than)
--   | <tt>&gt;=</tt> (greater than or equal to) | <tt>contains</tt> |
--   <tt>begins_with</tt> | <tt>ends_with</tt></li>
--   <li><a>pfType</a> - The custom platform attribute to which the filter
--   values are applied. Valid Values: <tt>PlatformName</tt> |
--   <tt>PlatformVersion</tt> | <tt>PlatformStatus</tt> |
--   <tt>PlatformOwner</tt></li>
--   </ul>
platformFilter :: PlatformFilter

-- | The list of values applied to the custom platform attribute.
pfValues :: Lens' PlatformFilter [Text]

-- | The operator to apply to the <tt>Type</tt> with each of the
--   <tt>Values</tt> . Valid Values: <tt>=</tt> (equal to) | <tt>!=</tt>
--   (not equal to) | <tt>&lt;</tt> (less than) | <tt>&lt;=</tt> (less than
--   or equal to) | <tt>&gt;</tt> (greater than) | <tt>&gt;=</tt> (greater
--   than or equal to) | <tt>contains</tt> | <tt>begins_with</tt> |
--   <tt>ends_with</tt>
pfOperator :: Lens' PlatformFilter (Maybe Text)

-- | The custom platform attribute to which the filter values are applied.
--   Valid Values: <tt>PlatformName</tt> | <tt>PlatformVersion</tt> |
--   <tt>PlatformStatus</tt> | <tt>PlatformOwner</tt>
pfType :: Lens' PlatformFilter (Maybe Text)

-- | A framework supported by the custom platform.
--   
--   <i>See:</i> <a>platformFramework</a> smart constructor.
data PlatformFramework

-- | Creates a value of <a>PlatformFramework</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pfName</a> - The name of the framework.</li>
--   <li><a>pfVersion</a> - The version of the framework.</li>
--   </ul>
platformFramework :: PlatformFramework

-- | The name of the framework.
pfName :: Lens' PlatformFramework (Maybe Text)

-- | The version of the framework.
pfVersion :: Lens' PlatformFramework (Maybe Text)

-- | A programming language supported by the platform.
--   
--   <i>See:</i> <a>platformProgrammingLanguage</a> smart constructor.
data PlatformProgrammingLanguage

-- | Creates a value of <a>PlatformProgrammingLanguage</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>pplName</a> - The name of the programming language.</li>
--   <li><a>pplVersion</a> - The version of the programming language.</li>
--   </ul>
platformProgrammingLanguage :: PlatformProgrammingLanguage

-- | The name of the programming language.
pplName :: Lens' PlatformProgrammingLanguage (Maybe Text)

-- | The version of the programming language.
pplVersion :: Lens' PlatformProgrammingLanguage (Maybe Text)

-- | Detailed information about a platform.
--   
--   <i>See:</i> <a>platformSummary</a> smart constructor.
data PlatformSummary

-- | Creates a value of <a>PlatformSummary</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>psSupportedAddonList</a> - The additions associated with the
--   platform.</li>
--   <li><a>psPlatformCategory</a> - The category of platform.</li>
--   <li><a>psPlatformStatus</a> - The status of the platform. You can
--   create an environment from the platform once it is ready.</li>
--   <li><a>psPlatformOwner</a> - The AWS account ID of the person who
--   created the platform.</li>
--   <li><a>psOperatingSystemName</a> - The operating system used by the
--   platform.</li>
--   <li><a>psPlatformARN</a> - The ARN of the platform.</li>
--   <li><a>psOperatingSystemVersion</a> - The version of the operating
--   system used by the platform.</li>
--   <li><a>psSupportedTierList</a> - The tiers in which the platform
--   runs.</li>
--   </ul>
platformSummary :: PlatformSummary

-- | The additions associated with the platform.
psSupportedAddonList :: Lens' PlatformSummary [Text]

-- | The category of platform.
psPlatformCategory :: Lens' PlatformSummary (Maybe Text)

-- | The status of the platform. You can create an environment from the
--   platform once it is ready.
psPlatformStatus :: Lens' PlatformSummary (Maybe PlatformStatus)

-- | The AWS account ID of the person who created the platform.
psPlatformOwner :: Lens' PlatformSummary (Maybe Text)

-- | The operating system used by the platform.
psOperatingSystemName :: Lens' PlatformSummary (Maybe Text)

-- | The ARN of the platform.
psPlatformARN :: Lens' PlatformSummary (Maybe Text)

-- | The version of the operating system used by the platform.
psOperatingSystemVersion :: Lens' PlatformSummary (Maybe Text)

-- | The tiers in which the platform runs.
psSupportedTierList :: Lens' PlatformSummary [Text]

-- | Describes a queue.
--   
--   <i>See:</i> <a>queue</a> smart constructor.
data Queue

-- | Creates a value of <a>Queue</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>qURL</a> - The URL of the queue.</li>
--   <li><a>qName</a> - The name of the queue.</li>
--   </ul>
queue :: Queue

-- | The URL of the queue.
qURL :: Lens' Queue (Maybe Text)

-- | The name of the queue.
qName :: Lens' Queue (Maybe Text)

-- | The AWS Elastic Beanstalk quota information for a single resource type
--   in an AWS account. It reflects the resource's limits for this account.
--   
--   <i>See:</i> <a>resourceQuota</a> smart constructor.
data ResourceQuota

-- | Creates a value of <a>ResourceQuota</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rqMaximum</a> - The maximum number of instances of this Elastic
--   Beanstalk resource type that an AWS account can use.</li>
--   </ul>
resourceQuota :: ResourceQuota

-- | The maximum number of instances of this Elastic Beanstalk resource
--   type that an AWS account can use.
rqMaximum :: Lens' ResourceQuota (Maybe Int)

-- | A set of per-resource AWS Elastic Beanstalk quotas associated with an
--   AWS account. They reflect Elastic Beanstalk resource limits for this
--   account.
--   
--   <i>See:</i> <a>resourceQuotas</a> smart constructor.
data ResourceQuotas

-- | Creates a value of <a>ResourceQuotas</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>rqApplicationQuota</a> - The quota for applications in the AWS
--   account.</li>
--   <li><a>rqCustomPlatformQuota</a> - The quota for custom platforms in
--   the AWS account.</li>
--   <li><a>rqApplicationVersionQuota</a> - The quota for application
--   versions in the AWS account.</li>
--   <li><a>rqEnvironmentQuota</a> - The quota for environments in the AWS
--   account.</li>
--   <li><a>rqConfigurationTemplateQuota</a> - The quota for configuration
--   templates in the AWS account.</li>
--   </ul>
resourceQuotas :: ResourceQuotas

-- | The quota for applications in the AWS account.
rqApplicationQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for custom platforms in the AWS account.
rqCustomPlatformQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for application versions in the AWS account.
rqApplicationVersionQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for environments in the AWS account.
rqEnvironmentQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The quota for configuration templates in the AWS account.
rqConfigurationTemplateQuota :: Lens' ResourceQuotas (Maybe ResourceQuota)

-- | The bucket and key of an item stored in Amazon S3.
--   
--   <i>See:</i> <a>s3Location</a> smart constructor.
data S3Location

-- | Creates a value of <a>S3Location</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>slS3Key</a> - The Amazon S3 key where the data is located.</li>
--   <li><a>slS3Bucket</a> - The Amazon S3 bucket where the data is
--   located.</li>
--   </ul>
s3Location :: S3Location

-- | The Amazon S3 key where the data is located.
slS3Key :: Lens' S3Location (Maybe Text)

-- | The Amazon S3 bucket where the data is located.
slS3Bucket :: Lens' S3Location (Maybe Text)

-- | Detailed health information about an Amazon EC2 instance in your
--   Elastic Beanstalk environment.
--   
--   <i>See:</i> <a>singleInstanceHealth</a> smart constructor.
data SingleInstanceHealth

-- | Creates a value of <a>SingleInstanceHealth</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sihInstanceId</a> - The ID of the Amazon EC2 instance.</li>
--   <li><a>sihCauses</a> - Represents the causes, which provide more
--   information about the current health status.</li>
--   <li><a>sihSystem</a> - Operating system metrics from the
--   instance.</li>
--   <li><a>sihApplicationMetrics</a> - Request metrics from your
--   application.</li>
--   <li><a>sihColor</a> - Represents the color indicator that gives you
--   information about the health of the EC2 instance. For more
--   information, see <a>Health Colors and Statuses</a> .</li>
--   <li><a>sihInstanceType</a> - The instance's type.</li>
--   <li><a>sihAvailabilityZone</a> - The availability zone in which the
--   instance runs.</li>
--   <li><a>sihHealthStatus</a> - Returns the health status of the
--   specified instance. For more information, see <a>Health Colors and
--   Statuses</a> .</li>
--   <li><a>sihDeployment</a> - Information about the most recent
--   deployment to an instance.</li>
--   <li><a>sihLaunchedAt</a> - The time at which the EC2 instance was
--   launched.</li>
--   </ul>
singleInstanceHealth :: SingleInstanceHealth

-- | The ID of the Amazon EC2 instance.
sihInstanceId :: Lens' SingleInstanceHealth (Maybe Text)

-- | Represents the causes, which provide more information about the
--   current health status.
sihCauses :: Lens' SingleInstanceHealth [Text]

-- | Operating system metrics from the instance.
sihSystem :: Lens' SingleInstanceHealth (Maybe SystemStatus)

-- | Request metrics from your application.
sihApplicationMetrics :: Lens' SingleInstanceHealth (Maybe ApplicationMetrics)

-- | Represents the color indicator that gives you information about the
--   health of the EC2 instance. For more information, see <a>Health Colors
--   and Statuses</a> .
sihColor :: Lens' SingleInstanceHealth (Maybe Text)

-- | The instance's type.
sihInstanceType :: Lens' SingleInstanceHealth (Maybe Text)

-- | The availability zone in which the instance runs.
sihAvailabilityZone :: Lens' SingleInstanceHealth (Maybe Text)

-- | Returns the health status of the specified instance. For more
--   information, see <a>Health Colors and Statuses</a> .
sihHealthStatus :: Lens' SingleInstanceHealth (Maybe Text)

-- | Information about the most recent deployment to an instance.
sihDeployment :: Lens' SingleInstanceHealth (Maybe Deployment)

-- | The time at which the EC2 instance was launched.
sihLaunchedAt :: Lens' SingleInstanceHealth (Maybe UTCTime)

-- | Describes the solution stack.
--   
--   <i>See:</i> <a>solutionStackDescription</a> smart constructor.
data SolutionStackDescription

-- | Creates a value of <a>SolutionStackDescription</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ssdPermittedFileTypes</a> - The permitted file types allowed
--   for a solution stack.</li>
--   <li><a>ssdSolutionStackName</a> - The name of the solution stack.</li>
--   </ul>
solutionStackDescription :: SolutionStackDescription

-- | The permitted file types allowed for a solution stack.
ssdPermittedFileTypes :: Lens' SolutionStackDescription [Text]

-- | The name of the solution stack.
ssdSolutionStackName :: Lens' SolutionStackDescription (Maybe Text)

-- | Location of the source code for an application version.
--   
--   <i>See:</i> <a>sourceBuildInformation</a> smart constructor.
data SourceBuildInformation

-- | Creates a value of <a>SourceBuildInformation</a> with the minimum
--   fields required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>sbiSourceType</a> - The type of repository. * <tt>Git</tt> *
--   <tt>Zip</tt></li>
--   <li><a>sbiSourceRepository</a> - Location where the repository is
--   stored. * <tt>CodeCommit</tt> * <tt>S3</tt></li>
--   <li><a>sbiSourceLocation</a> - The location of the source code, as a
--   formatted string, depending on the value of <tt>SourceRepository</tt>
--   * For <tt>CodeCommit</tt> , the format is the repository name and
--   commit ID, separated by a forward slash. For example,
--   <tt>my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a</tt> . * For
--   <tt>S3</tt> , the format is the S3 bucket name and object key,
--   separated by a forward slash. For example,
--   <tt>my-s3-bucket<i>Folders</i>my-source-file</tt> .</li>
--   </ul>
sourceBuildInformation :: SourceType -> SourceRepository -> Text -> SourceBuildInformation

-- | The type of repository. * <tt>Git</tt> * <tt>Zip</tt>
sbiSourceType :: Lens' SourceBuildInformation SourceType

-- | Location where the repository is stored. * <tt>CodeCommit</tt> *
--   <tt>S3</tt>
sbiSourceRepository :: Lens' SourceBuildInformation SourceRepository

-- | The location of the source code, as a formatted string, depending on
--   the value of <tt>SourceRepository</tt> * For <tt>CodeCommit</tt> , the
--   format is the repository name and commit ID, separated by a forward
--   slash. For example,
--   <tt>my-git-repo/265cfa0cf6af46153527f55d6503ec030551f57a</tt> . * For
--   <tt>S3</tt> , the format is the S3 bucket name and object key,
--   separated by a forward slash. For example,
--   <tt>my-s3-bucket<i>Folders</i>my-source-file</tt> .
sbiSourceLocation :: Lens' SourceBuildInformation Text

-- | A specification for an environment configuration
--   
--   <i>See:</i> <a>sourceConfiguration</a> smart constructor.
data SourceConfiguration

-- | Creates a value of <a>SourceConfiguration</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>scTemplateName</a> - The name of the configuration
--   template.</li>
--   <li><a>scApplicationName</a> - The name of the application associated
--   with the configuration.</li>
--   </ul>
sourceConfiguration :: SourceConfiguration

-- | The name of the configuration template.
scTemplateName :: Lens' SourceConfiguration (Maybe Text)

-- | The name of the application associated with the configuration.
scApplicationName :: Lens' SourceConfiguration (Maybe Text)

-- | Represents the percentage of requests over the last 10 seconds that
--   resulted in each type of status code response. For more information,
--   see <a>Status Code Definitions</a> .
--   
--   <i>See:</i> <a>statusCodes</a> smart constructor.
data StatusCodes

-- | Creates a value of <a>StatusCodes</a> with the minimum fields required
--   to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>scStatus2xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 2xx (200, 201, etc.) status code.</li>
--   <li><a>scStatus3xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 3xx (300, 301, etc.) status code.</li>
--   <li><a>scStatus4xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 4xx (400, 401, etc.) status code.</li>
--   <li><a>scStatus5xx</a> - The percentage of requests over the last 10
--   seconds that resulted in a 5xx (500, 501, etc.) status code.</li>
--   </ul>
statusCodes :: StatusCodes

-- | The percentage of requests over the last 10 seconds that resulted in a
--   2xx (200, 201, etc.) status code.
scStatus2xx :: Lens' StatusCodes (Maybe Int)

-- | The percentage of requests over the last 10 seconds that resulted in a
--   3xx (300, 301, etc.) status code.
scStatus3xx :: Lens' StatusCodes (Maybe Int)

-- | The percentage of requests over the last 10 seconds that resulted in a
--   4xx (400, 401, etc.) status code.
scStatus4xx :: Lens' StatusCodes (Maybe Int)

-- | The percentage of requests over the last 10 seconds that resulted in a
--   5xx (500, 501, etc.) status code.
scStatus5xx :: Lens' StatusCodes (Maybe Int)

-- | CPU utilization and load average metrics for an Amazon EC2 instance.
--   
--   <i>See:</i> <a>systemStatus</a> smart constructor.
data SystemStatus

-- | Creates a value of <a>SystemStatus</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>ssCPUUtilization</a> - CPU utilization metrics for the
--   instance.</li>
--   <li><a>ssLoadAverage</a> - Load average in the last 1-minute,
--   5-minute, and 15-minute periods. For more information, see
--   <a>Operating System Metrics</a> .</li>
--   </ul>
systemStatus :: SystemStatus

-- | CPU utilization metrics for the instance.
ssCPUUtilization :: Lens' SystemStatus (Maybe CPUUtilization)

-- | Load average in the last 1-minute, 5-minute, and 15-minute periods.
--   For more information, see <a>Operating System Metrics</a> .
ssLoadAverage :: Lens' SystemStatus [Double]

-- | Describes a tag applied to a resource in an environment.
--   
--   <i>See:</i> <a>tag</a> smart constructor.
data Tag

-- | Creates a value of <a>Tag</a> with the minimum fields required to make
--   a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>tagValue</a> - The value of the tag.</li>
--   <li><a>tagKey</a> - The key of the tag.</li>
--   </ul>
tag :: Tag

-- | The value of the tag.
tagValue :: Lens' Tag (Maybe Text)

-- | The key of the tag.
tagKey :: Lens' Tag (Maybe Text)

-- | Describes a trigger.
--   
--   <i>See:</i> <a>trigger</a> smart constructor.
data Trigger

-- | Creates a value of <a>Trigger</a> with the minimum fields required to
--   make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>tName</a> - The name of the trigger.</li>
--   </ul>
trigger :: Trigger

-- | The name of the trigger.
tName :: Lens' Trigger (Maybe Text)

-- | An error or warning for a desired configuration option value.
--   
--   <i>See:</i> <a>validationMessage</a> smart constructor.
data ValidationMessage

-- | Creates a value of <a>ValidationMessage</a> with the minimum fields
--   required to make a request.
--   
--   Use one of the following lenses to modify other fields as desired:
--   
--   <ul>
--   <li><a>vmOptionName</a> - The name of the option.</li>
--   <li><a>vmSeverity</a> - An indication of the severity of this message:
--   * <tt>error</tt> : This message indicates that this is not a valid
--   setting for an option. * <tt>warning</tt> : This message is providing
--   information you should take into account.</li>
--   <li><a>vmNamespace</a> - The namespace to which the option
--   belongs.</li>
--   <li><a>vmMessage</a> - A message describing the error or warning.</li>
--   </ul>
validationMessage :: ValidationMessage

-- | The name of the option.
vmOptionName :: Lens' ValidationMessage (Maybe Text)

-- | An indication of the severity of this message: * <tt>error</tt> : This
--   message indicates that this is not a valid setting for an option. *
--   <tt>warning</tt> : This message is providing information you should
--   take into account.
vmSeverity :: Lens' ValidationMessage (Maybe ValidationSeverity)

-- | The namespace to which the option belongs.
vmNamespace :: Lens' ValidationMessage (Maybe Text)

-- | A message describing the error or warning.
vmMessage :: Lens' ValidationMessage (Maybe Text)
