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


-- | Google Compute Engine Instance Group Updater SDK.
--   
--   [Deprecated. Please use compute.instanceGroupManagers.update method.
--   replicapoolupdater API will be disabled after December 30th, 2016]
--   Updates groups of Compute Engine instances.
--   
--   <i>Warning:</i> This is an experimental prototype/preview release
--   which is still under exploratory development and not intended for
--   public use, caveat emptor!
--   
--   This library is compatible with version <tt>v1beta1</tt> of the API.
--   
--   Labels:
--   
--   <ul>
--   <li>Limited Availability</li>
--   </ul>
@package gogol-replicapool-updater
@version 0.3.0


module Network.Google.ReplicaPoolUpdater.Types

-- | Default request referring to version <tt>v1beta1</tt> of the Google
--   Compute Engine Instance Group Updater API. This contains the host and
--   root path used as a starting point for constructing service requests.
replicaPoolUpdaterService :: ServiceConfig

-- | View your data across Google Cloud Platform services
cloudPlatformReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform.read-only"]

-- | View and manage your data across Google Cloud Platform services
cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]

-- | View and manage replica pools
replicapoolScope :: Proxy '["https://www.googleapis.com/auth/replicapool"]

-- | View replica pools
replicapoolReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/replicapool.readonly"]
data OperationWarningsItemDataItem

-- | Creates a value of <a>OperationWarningsItemDataItem</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>owidiValue</a></li>
--   <li><a>owidiKey</a></li>
--   </ul>
operationWarningsItemDataItem :: OperationWarningsItemDataItem

-- | <ul>
--   <li><i>Output Only</i> Metadata value for this warning.</li>
--   </ul>
owidiValue :: Lens' OperationWarningsItemDataItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Metadata key for this warning.</li>
--   </ul>
owidiKey :: Lens' OperationWarningsItemDataItem (Maybe Text)

-- | The following represents a resource describing a single update
--   (rollout) of a group of instances to the given template.
--   
--   <i>See:</i> <a>rollingUpdate</a> smart constructor.
data RollingUpdate

-- | Creates a value of <a>RollingUpdate</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>ruStatus</a></li>
--   <li><a>ruProgress</a></li>
--   <li><a>ruInstanceGroupManager</a></li>
--   <li><a>ruKind</a></li>
--   <li><a>ruError</a></li>
--   <li><a>ruInstanceTemplate</a></li>
--   <li><a>ruUser</a></li>
--   <li><a>ruSelfLink</a></li>
--   <li><a>ruStatusMessage</a></li>
--   <li><a>ruCreationTimestamp</a></li>
--   <li><a>ruId</a></li>
--   <li><a>ruPolicy</a></li>
--   <li><a>ruActionType</a></li>
--   <li><a>ruOldInstanceTemplate</a></li>
--   <li><a>ruDescription</a></li>
--   <li><a>ruInstanceGroup</a></li>
--   </ul>
rollingUpdate :: RollingUpdate

-- | <ul>
--   <li><i>Output Only</i> Status of the update. Possible values are: -
--   "ROLLING_FORWARD": The update is going forward. - "ROLLING_BACK": The
--   update is being rolled back. - "PAUSED": The update is temporarily
--   paused (inactive). - "ROLLED_OUT": The update is finished, all
--   instances have been updated successfully. - "ROLLED_BACK": The update
--   is finished, all instances have been reverted to the previous
--   template. - "CANCELLED": The update is paused and no longer can be
--   resumed, undefined how many instances are running in which
--   template.</li>
--   </ul>
ruStatus :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional progress indicator that ranges from
--   0 to 100. There is no requirement that this be linear or support any
--   granularity of operations. This should not be used to guess at when
--   the update will be complete. This number should be monotonically
--   increasing as the update progresses.</li>
--   </ul>
ruProgress :: Lens' RollingUpdate (Maybe Int32)

-- | Fully-qualified URL of an instance group manager being updated.
--   Exactly one of instanceGroupManager and instanceGroup must be set.
ruInstanceGroupManager :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource.</li>
--   </ul>
ruKind :: Lens' RollingUpdate Text

-- | <ul>
--   <li><i>Output Only</i> Errors that occurred during the rolling
--   update.</li>
--   </ul>
ruError :: Lens' RollingUpdate (Maybe RollingUpdateError)

-- | Fully-qualified URL of an instance template to apply.
ruInstanceTemplate :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> User who requested the update, for example:
--   user'example.com.</li>
--   </ul>
ruUser :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
ruSelfLink :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional textual description of the current
--   status of the update.</li>
--   </ul>
ruStatusMessage :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Creation timestamp in RFC3339 text format.</li>
--   </ul>
ruCreationTimestamp :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Unique identifier for the resource; defined by
--   the server.</li>
--   </ul>
ruId :: Lens' RollingUpdate (Maybe Text)

-- | Parameters of the update process.
ruPolicy :: Lens' RollingUpdate (Maybe RollingUpdatePolicy)

-- | Specifies the action to take for each instance within the instance
--   group. This can be RECREATE which will recreate each instance and is
--   only available for managed instance groups. It can also be REBOOT
--   which performs a soft reboot for each instance and is only available
--   for regular (non-managed) instance groups.
ruActionType :: Lens' RollingUpdate (Maybe Text)

-- | Fully-qualified URL of the instance template encountered while
--   starting the update.
ruOldInstanceTemplate :: Lens' RollingUpdate (Maybe Text)

-- | An optional textual description of the resource; provided by the
--   client when the resource is created.
ruDescription :: Lens' RollingUpdate (Maybe Text)

-- | Fully-qualified URL of an instance group being updated. Exactly one of
--   instanceGroupManager and instanceGroup must be set.
ruInstanceGroup :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Errors that occurred during the rolling
--   update.</li>
--   </ul>
--   
--   <i>See:</i> <a>rollingUpdateError</a> smart constructor.
data RollingUpdateError

-- | Creates a value of <a>RollingUpdateError</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>rueErrors</a></li>
--   </ul>
rollingUpdateError :: RollingUpdateError

-- | <ul>
--   <li><i>Output Only</i> The array of errors encountered while
--   processing this operation.</li>
--   </ul>
rueErrors :: Lens' RollingUpdateError [RollingUpdateErrorErrorsItem]

-- | Contains a list of Operation resources.
--   
--   <i>See:</i> <a>operationList</a> smart constructor.
data OperationList

-- | Creates a value of <a>OperationList</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>olNextPageToken</a></li>
--   <li><a>olKind</a></li>
--   <li><a>olItems</a></li>
--   <li><a>olSelfLink</a></li>
--   <li><a>olId</a></li>
--   </ul>
operationList :: OperationList

-- | <ul>
--   <li><i>Output Only</i> A token used to continue a truncate.</li>
--   </ul>
olNextPageToken :: Lens' OperationList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of resource. Always
--   replicapoolupdater#operationList for OperationList resources.</li>
--   </ul>
olKind :: Lens' OperationList Text

-- | <ul>
--   <li><i>Output Only</i> The Operation resources.</li>
--   </ul>
olItems :: Lens' OperationList [Operation]

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
olSelfLink :: Lens' OperationList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Unique identifier for the resource; defined by
--   the server.</li>
--   </ul>
olId :: Lens' OperationList (Maybe Text)

-- | Response returned by ListInstanceUpdates method.
--   
--   <i>See:</i> <a>instanceUpdateList</a> smart constructor.
data InstanceUpdateList

-- | Creates a value of <a>InstanceUpdateList</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>iulNextPageToken</a></li>
--   <li><a>iulKind</a></li>
--   <li><a>iulItems</a></li>
--   <li><a>iulSelfLink</a></li>
--   </ul>
instanceUpdateList :: InstanceUpdateList

-- | A token used to continue a truncated list request.
iulNextPageToken :: Lens' InstanceUpdateList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource.</li>
--   </ul>
iulKind :: Lens' InstanceUpdateList Text

-- | Collection of requested instance updates.
iulItems :: Lens' InstanceUpdateList [InstanceUpdate]

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
iulSelfLink :: Lens' InstanceUpdateList (Maybe Text)
data RollingUpdateErrorErrorsItem

-- | Creates a value of <a>RollingUpdateErrorErrorsItem</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>rueeiLocation</a></li>
--   <li><a>rueeiCode</a></li>
--   <li><a>rueeiMessage</a></li>
--   </ul>
rollingUpdateErrorErrorsItem :: RollingUpdateErrorErrorsItem

-- | <ul>
--   <li><i>Output Only</i> Indicates the field in the request that caused
--   the error. This property is optional.</li>
--   </ul>
rueeiLocation :: Lens' RollingUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The error type identifier for this error.</li>
--   </ul>
rueeiCode :: Lens' RollingUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional, human-readable error message.</li>
--   </ul>
rueeiMessage :: Lens' RollingUpdateErrorErrorsItem (Maybe Text)

-- | An operation resource, used to manage asynchronous API requests.
--   
--   <i>See:</i> <a>operation</a> smart constructor.
data Operation

-- | Creates a value of <a>Operation</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>oTargetId</a></li>
--   <li><a>oStatus</a></li>
--   <li><a>oInsertTime</a></li>
--   <li><a>oProgress</a></li>
--   <li><a>oStartTime</a></li>
--   <li><a>oKind</a></li>
--   <li><a>oError</a></li>
--   <li><a>oHTTPErrorMessage</a></li>
--   <li><a>oZone</a></li>
--   <li><a>oWarnings</a></li>
--   <li><a>oHTTPErrorStatusCode</a></li>
--   <li><a>oUser</a></li>
--   <li><a>oSelfLink</a></li>
--   <li><a>oName</a></li>
--   <li><a>oStatusMessage</a></li>
--   <li><a>oCreationTimestamp</a></li>
--   <li><a>oEndTime</a></li>
--   <li><a>oId</a></li>
--   <li><a>oOperationType</a></li>
--   <li><a>oRegion</a></li>
--   <li><a>oTargetLink</a></li>
--   <li><a>oClientOperationId</a></li>
--   </ul>
operation :: Operation

-- | <ul>
--   <li><i>Output Only</i> Unique target id which identifies a particular
--   incarnation of the target.</li>
--   </ul>
oTargetId :: Lens' Operation (Maybe Word64)

-- | <ul>
--   <li><i>Output Only</i> Status of the operation. Can be one of the
--   following: "PENDING", "RUNNING", or "DONE".</li>
--   </ul>
oStatus :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The time that this operation was requested.
--   This is in RFC 3339 format.</li>
--   </ul>
oInsertTime :: Lens' Operation (Maybe Text)
oProgress :: Lens' Operation (Maybe Int32)

-- | <ul>
--   <li><i>Output Only</i> The time that this operation was started by the
--   server. This is in RFC 3339 format.</li>
--   </ul>
oStartTime :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource. Always
--   replicapoolupdater#operation for Operation resources.</li>
--   </ul>
oKind :: Lens' Operation Text

-- | <ul>
--   <li><i>Output Only</i> If errors occurred during processing of this
--   operation, this field will be populated.</li>
--   </ul>
oError :: Lens' Operation (Maybe OperationError)
oHTTPErrorMessage :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> URL of the zone where the operation
--   resides.</li>
--   </ul>
oZone :: Lens' Operation (Maybe Text)
oWarnings :: Lens' Operation [OperationWarningsItem]
oHTTPErrorStatusCode :: Lens' Operation (Maybe Int32)
oUser :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
oSelfLink :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Name of the resource.</li>
--   </ul>
oName :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional textual description of the current
--   status of the operation.</li>
--   </ul>
oStatusMessage :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Creation timestamp in RFC3339 text format.</li>
--   </ul>
oCreationTimestamp :: Lens' Operation (Maybe Text)
oEndTime :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Unique identifier for the resource; defined by
--   the server.</li>
--   </ul>
oId :: Lens' Operation (Maybe Word64)
oOperationType :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> URL of the region where the operation
--   resides.</li>
--   </ul>
oRegion :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> URL of the resource the operation is
--   mutating.</li>
--   </ul>
oTargetLink :: Lens' Operation (Maybe Text)
oClientOperationId :: Lens' Operation (Maybe Text)

-- | Update of a single instance.
--   
--   <i>See:</i> <a>instanceUpdate</a> smart constructor.
data InstanceUpdate

-- | Creates a value of <a>InstanceUpdate</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>iuStatus</a></li>
--   <li><a>iuError</a></li>
--   <li><a>iuInstance</a></li>
--   </ul>
instanceUpdate :: InstanceUpdate

-- | Status of the instance update. Possible values are: - "PENDING": The
--   instance update is pending execution. - "ROLLING_FORWARD": The
--   instance update is going forward. - "ROLLING_BACK": The instance
--   update is being rolled back. - "PAUSED": The instance update is
--   temporarily paused (inactive). - "ROLLED_OUT": The instance update is
--   finished, the instance is running the new template. - "ROLLED_BACK":
--   The instance update is finished, the instance has been reverted to the
--   previous template. - "CANCELLED": The instance update is paused and no
--   longer can be resumed, undefined in which template the instance is
--   running.
iuStatus :: Lens' InstanceUpdate (Maybe Text)

-- | Errors that occurred during the instance update.
iuError :: Lens' InstanceUpdate (Maybe InstanceUpdateError)

-- | Fully-qualified URL of the instance being updated.
iuInstance :: Lens' InstanceUpdate (Maybe Text)

-- | Errors that occurred during the instance update.
--   
--   <i>See:</i> <a>instanceUpdateError</a> smart constructor.
data InstanceUpdateError

-- | Creates a value of <a>InstanceUpdateError</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>iueErrors</a></li>
--   </ul>
instanceUpdateError :: InstanceUpdateError

-- | <ul>
--   <li><i>Output Only</i> The array of errors encountered while
--   processing this operation.</li>
--   </ul>
iueErrors :: Lens' InstanceUpdateError [InstanceUpdateErrorErrorsItem]

-- | Parameters of the update process.
--   
--   <i>See:</i> <a>rollingUpdatePolicy</a> smart constructor.
data RollingUpdatePolicy

-- | Creates a value of <a>RollingUpdatePolicy</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>rupMinInstanceUpdateTimeSec</a></li>
--   <li><a>rupInstanceStartupTimeoutSec</a></li>
--   <li><a>rupMaxNumFailedInstances</a></li>
--   <li><a>rupAutoPauseAfterInstances</a></li>
--   <li><a>rupMaxNumConcurrentInstances</a></li>
--   </ul>
rollingUpdatePolicy :: RollingUpdatePolicy

-- | The minimum amount of time that the updater spends to update each
--   instance. Update time is the time it takes to complete all update
--   actions (e.g. Stop call on Instance resource in Rolling Reboot),
--   reboot, and initialize. If the instance update finishes early, the
--   updater pauses for the remainder of the time before it starts the next
--   instance update.
rupMinInstanceUpdateTimeSec :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | The maximum amount of time that the updater waits for a HEALTHY state
--   after all of the update steps are complete. If the HEALTHY state is
--   not received before the deadline, the instance update is considered a
--   failure.
rupInstanceStartupTimeoutSec :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | The maximum number of instance updates that can fail before the group
--   update is considered a failure. An instance update is considered
--   failed if any of its update actions (e.g. Stop call on Instance
--   resource in Rolling Reboot) failed with permanent failure, or if the
--   instance is in an UNHEALTHY state after it finishes all of the update
--   actions.
rupMaxNumFailedInstances :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | Number of instances to update before the updater pauses the rolling
--   update.
rupAutoPauseAfterInstances :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | The maximum number of instances that can be updated simultaneously. An
--   instance update is considered complete only after the instance is
--   restarted and initialized.
rupMaxNumConcurrentInstances :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | <ul>
--   <li><i>Output Only</i> If errors occurred during processing of this
--   operation, this field will be populated.</li>
--   </ul>
--   
--   <i>See:</i> <a>operationError</a> smart constructor.
data OperationError

-- | Creates a value of <a>OperationError</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>oeErrors</a></li>
--   </ul>
operationError :: OperationError

-- | <ul>
--   <li><i>Output Only</i> The array of errors encountered while
--   processing this operation.</li>
--   </ul>
oeErrors :: Lens' OperationError [OperationErrorErrorsItem]
data OperationErrorErrorsItem

-- | Creates a value of <a>OperationErrorErrorsItem</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>oeeiLocation</a></li>
--   <li><a>oeeiCode</a></li>
--   <li><a>oeeiMessage</a></li>
--   </ul>
operationErrorErrorsItem :: OperationErrorErrorsItem

-- | <ul>
--   <li><i>Output Only</i> Indicates the field in the request that caused
--   the error. This property is optional.</li>
--   </ul>
oeeiLocation :: Lens' OperationErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The error type identifier for this error.</li>
--   </ul>
oeeiCode :: Lens' OperationErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional, human-readable error message.</li>
--   </ul>
oeeiMessage :: Lens' OperationErrorErrorsItem (Maybe Text)
data InstanceUpdateErrorErrorsItem

-- | Creates a value of <a>InstanceUpdateErrorErrorsItem</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>iueeiLocation</a></li>
--   <li><a>iueeiCode</a></li>
--   <li><a>iueeiMessage</a></li>
--   </ul>
instanceUpdateErrorErrorsItem :: InstanceUpdateErrorErrorsItem

-- | <ul>
--   <li><i>Output Only</i> Indicates the field in the request that caused
--   the error. This property is optional.</li>
--   </ul>
iueeiLocation :: Lens' InstanceUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The error type identifier for this error.</li>
--   </ul>
iueeiCode :: Lens' InstanceUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional, human-readable error message.</li>
--   </ul>
iueeiMessage :: Lens' InstanceUpdateErrorErrorsItem (Maybe Text)

-- | Response returned by List method.
--   
--   <i>See:</i> <a>rollingUpdateList</a> smart constructor.
data RollingUpdateList

-- | Creates a value of <a>RollingUpdateList</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>rulNextPageToken</a></li>
--   <li><a>rulKind</a></li>
--   <li><a>rulItems</a></li>
--   <li><a>rulSelfLink</a></li>
--   </ul>
rollingUpdateList :: RollingUpdateList

-- | A token used to continue a truncated list request.
rulNextPageToken :: Lens' RollingUpdateList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource.</li>
--   </ul>
rulKind :: Lens' RollingUpdateList Text

-- | Collection of requested updates.
rulItems :: Lens' RollingUpdateList [RollingUpdate]

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
rulSelfLink :: Lens' RollingUpdateList (Maybe Text)
data OperationWarningsItem

-- | Creates a value of <a>OperationWarningsItem</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>owiData</a></li>
--   <li><a>owiCode</a></li>
--   <li><a>owiMessage</a></li>
--   </ul>
operationWarningsItem :: OperationWarningsItem

-- | <ul>
--   <li><i>Output only</i> Metadata for this warning in key:value
--   format.</li>
--   </ul>
owiData :: Lens' OperationWarningsItem [OperationWarningsItemDataItem]

-- | <ul>
--   <li><i>Output only</i> The warning type identifier for this
--   warning.</li>
--   </ul>
owiCode :: Lens' OperationWarningsItem (Maybe Text)

-- | <ul>
--   <li><i>Output only</i> Optional human-readable details for this
--   warning.</li>
--   </ul>
owiMessage :: Lens' OperationWarningsItem (Maybe Text)


-- | Cancels an update. The update must be PAUSED before it can be
--   cancelled. This has no effect if the update is already CANCELLED.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.cancel</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Cancel

-- | A resource alias for <tt>replicapoolupdater.rollingUpdates.cancel</tt>
--   method which the <a>RollingUpdatesCancel</a> request conforms to.
type RollingUpdatesCancelResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (Capture "rollingUpdate" Text :> ("cancel" :> (QueryParam "alt" AltJSON :> Post '[JSON] Operation)))))))))

-- | Creates a value of <a>RollingUpdatesCancel</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>rucRollingUpdate</a></li>
--   <li><a>rucProject</a></li>
--   <li><a>rucZone</a></li>
--   </ul>
rollingUpdatesCancel :: Text -> Text -> Text -> RollingUpdatesCancel

-- | Cancels an update. The update must be PAUSED before it can be
--   cancelled. This has no effect if the update is already CANCELLED.
--   
--   <i>See:</i> <a>rollingUpdatesCancel</a> smart constructor.
data RollingUpdatesCancel

-- | The name of the update.
rucRollingUpdate :: Lens' RollingUpdatesCancel Text

-- | The Google Developers Console project name.
rucProject :: Lens' RollingUpdatesCancel Text

-- | The name of the zone in which the update's target resides.
rucZone :: Lens' RollingUpdatesCancel Text
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Cancel.RollingUpdatesCancel
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Cancel.RollingUpdatesCancel
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Cancel.RollingUpdatesCancel
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Cancel.RollingUpdatesCancel
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Cancel.RollingUpdatesCancel


-- | Returns information about an update.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.get</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Get

-- | A resource alias for <tt>replicapoolupdater.rollingUpdates.get</tt>
--   method which the <a>RollingUpdatesGet</a> request conforms to.
type RollingUpdatesGetResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (Capture "rollingUpdate" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] RollingUpdate))))))))

-- | Creates a value of <a>RollingUpdatesGet</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>rugRollingUpdate</a></li>
--   <li><a>rugProject</a></li>
--   <li><a>rugZone</a></li>
--   </ul>
rollingUpdatesGet :: Text -> Text -> Text -> RollingUpdatesGet

-- | Returns information about an update.
--   
--   <i>See:</i> <a>rollingUpdatesGet</a> smart constructor.
data RollingUpdatesGet

-- | The name of the update.
rugRollingUpdate :: Lens' RollingUpdatesGet Text

-- | The Google Developers Console project name.
rugProject :: Lens' RollingUpdatesGet Text

-- | The name of the zone in which the update's target resides.
rugZone :: Lens' RollingUpdatesGet Text
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Get.RollingUpdatesGet
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Get.RollingUpdatesGet
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Get.RollingUpdatesGet
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Get.RollingUpdatesGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Get.RollingUpdatesGet


-- | Inserts and starts a new update.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.insert</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Insert

-- | A resource alias for <tt>replicapoolupdater.rollingUpdates.insert</tt>
--   method which the <a>RollingUpdatesInsert</a> request conforms to.
type RollingUpdatesInsertResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] RollingUpdate :> Post '[JSON] Operation))))))))

-- | Creates a value of <a>RollingUpdatesInsert</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>ruiProject</a></li>
--   <li><a>ruiZone</a></li>
--   <li><a>ruiPayload</a></li>
--   </ul>
rollingUpdatesInsert :: Text -> Text -> RollingUpdate -> RollingUpdatesInsert

-- | Inserts and starts a new update.
--   
--   <i>See:</i> <a>rollingUpdatesInsert</a> smart constructor.
data RollingUpdatesInsert

-- | The Google Developers Console project name.
ruiProject :: Lens' RollingUpdatesInsert Text

-- | The name of the zone in which the update's target resides.
ruiZone :: Lens' RollingUpdatesInsert Text

-- | Multipart request metadata.
ruiPayload :: Lens' RollingUpdatesInsert RollingUpdate
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Insert.RollingUpdatesInsert
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Insert.RollingUpdatesInsert
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Insert.RollingUpdatesInsert
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Insert.RollingUpdatesInsert
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Insert.RollingUpdatesInsert


-- | Lists recent updates for a given managed instance group, in reverse
--   chronological order and paginated format.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.list</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.List

-- | A resource alias for <tt>replicapoolupdater.rollingUpdates.list</tt>
--   method which the <a>RollingUpdatesList</a> request conforms to.
type RollingUpdatesListResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (QueryParam "filter" Text :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] RollingUpdateList))))))))))

-- | Creates a value of <a>RollingUpdatesList</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>rulProject</a></li>
--   <li><a>rulZone</a></li>
--   <li><a>rulFilter</a></li>
--   <li><a>rulPageToken</a></li>
--   <li><a>rulMaxResults</a></li>
--   </ul>
rollingUpdatesList :: Text -> Text -> RollingUpdatesList

-- | Lists recent updates for a given managed instance group, in reverse
--   chronological order and paginated format.
--   
--   <i>See:</i> <a>rollingUpdatesList</a> smart constructor.
data RollingUpdatesList

-- | The Google Developers Console project name.
rulProject :: Lens' RollingUpdatesList Text

-- | The name of the zone in which the update's target resides.
rulZone :: Lens' RollingUpdatesList Text

-- | Optional. Filter expression for filtering listed resources.
rulFilter :: Lens' RollingUpdatesList (Maybe Text)

-- | Optional. Tag returned by a previous list request truncated by
--   maxResults. Used to continue a previous list request.
rulPageToken :: Lens' RollingUpdatesList (Maybe Text)

-- | Optional. Maximum count of results to be returned. Maximum value is
--   500 and default value is 500.
rulMaxResults :: Lens' RollingUpdatesList Word32
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.List.RollingUpdatesList
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.List.RollingUpdatesList
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.List.RollingUpdatesList
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.List.RollingUpdatesList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.List.RollingUpdatesList


-- | Lists the current status for each instance within a given update.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for
--   <tt>replicapoolupdater.rollingUpdates.listInstanceUpdates</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.ListInstanceUpdates

-- | A resource alias for
--   <tt>replicapoolupdater.rollingUpdates.listInstanceUpdates</tt> method
--   which the <a>RollingUpdatesListInstanceUpdates</a> request conforms
--   to.
type RollingUpdatesListInstanceUpdatesResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (Capture "rollingUpdate" Text :> ("instanceUpdates" :> (QueryParam "filter" Text :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] InstanceUpdateList))))))))))))

-- | Creates a value of <a>RollingUpdatesListInstanceUpdates</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>ruliuRollingUpdate</a></li>
--   <li><a>ruliuProject</a></li>
--   <li><a>ruliuZone</a></li>
--   <li><a>ruliuFilter</a></li>
--   <li><a>ruliuPageToken</a></li>
--   <li><a>ruliuMaxResults</a></li>
--   </ul>
rollingUpdatesListInstanceUpdates :: Text -> Text -> Text -> RollingUpdatesListInstanceUpdates

-- | Lists the current status for each instance within a given update.
--   
--   <i>See:</i> <a>rollingUpdatesListInstanceUpdates</a> smart
--   constructor.
data RollingUpdatesListInstanceUpdates

-- | The name of the update.
ruliuRollingUpdate :: Lens' RollingUpdatesListInstanceUpdates Text

-- | The Google Developers Console project name.
ruliuProject :: Lens' RollingUpdatesListInstanceUpdates Text

-- | The name of the zone in which the update's target resides.
ruliuZone :: Lens' RollingUpdatesListInstanceUpdates Text

-- | Optional. Filter expression for filtering listed resources.
ruliuFilter :: Lens' RollingUpdatesListInstanceUpdates (Maybe Text)

-- | Optional. Tag returned by a previous list request truncated by
--   maxResults. Used to continue a previous list request.
ruliuPageToken :: Lens' RollingUpdatesListInstanceUpdates (Maybe Text)

-- | Optional. Maximum count of results to be returned. Maximum value is
--   500 and default value is 500.
ruliuMaxResults :: Lens' RollingUpdatesListInstanceUpdates Word32
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.ListInstanceUpdates.RollingUpdatesListInstanceUpdates
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.ListInstanceUpdates.RollingUpdatesListInstanceUpdates
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.ListInstanceUpdates.RollingUpdatesListInstanceUpdates
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.ListInstanceUpdates.RollingUpdatesListInstanceUpdates
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.ListInstanceUpdates.RollingUpdatesListInstanceUpdates


-- | Pauses the update in state from ROLLING_FORWARD or ROLLING_BACK. Has
--   no effect if invoked when the state of the update is PAUSED.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.pause</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Pause

-- | A resource alias for <tt>replicapoolupdater.rollingUpdates.pause</tt>
--   method which the <a>RollingUpdatesPause</a> request conforms to.
type RollingUpdatesPauseResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (Capture "rollingUpdate" Text :> ("pause" :> (QueryParam "alt" AltJSON :> Post '[JSON] Operation)))))))))

-- | Creates a value of <a>RollingUpdatesPause</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>rupRollingUpdate</a></li>
--   <li><a>rupProject</a></li>
--   <li><a>rupZone</a></li>
--   </ul>
rollingUpdatesPause :: Text -> Text -> Text -> RollingUpdatesPause

-- | Pauses the update in state from ROLLING_FORWARD or ROLLING_BACK. Has
--   no effect if invoked when the state of the update is PAUSED.
--   
--   <i>See:</i> <a>rollingUpdatesPause</a> smart constructor.
data RollingUpdatesPause

-- | The name of the update.
rupRollingUpdate :: Lens' RollingUpdatesPause Text

-- | The Google Developers Console project name.
rupProject :: Lens' RollingUpdatesPause Text

-- | The name of the zone in which the update's target resides.
rupZone :: Lens' RollingUpdatesPause Text
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Pause.RollingUpdatesPause
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Pause.RollingUpdatesPause
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Pause.RollingUpdatesPause
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Pause.RollingUpdatesPause
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Pause.RollingUpdatesPause


-- | Continues an update in PAUSED state. Has no effect if invoked when the
--   state of the update is ROLLED_OUT.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.resume</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Resume

-- | A resource alias for <tt>replicapoolupdater.rollingUpdates.resume</tt>
--   method which the <a>RollingUpdatesResume</a> request conforms to.
type RollingUpdatesResumeResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (Capture "rollingUpdate" Text :> ("resume" :> (QueryParam "alt" AltJSON :> Post '[JSON] Operation)))))))))

-- | Creates a value of <a>RollingUpdatesResume</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>rRollingUpdate</a></li>
--   <li><a>rProject</a></li>
--   <li><a>rZone</a></li>
--   </ul>
rollingUpdatesResume :: Text -> Text -> Text -> RollingUpdatesResume

-- | Continues an update in PAUSED state. Has no effect if invoked when the
--   state of the update is ROLLED_OUT.
--   
--   <i>See:</i> <a>rollingUpdatesResume</a> smart constructor.
data RollingUpdatesResume

-- | The name of the update.
rRollingUpdate :: Lens' RollingUpdatesResume Text

-- | The Google Developers Console project name.
rProject :: Lens' RollingUpdatesResume Text

-- | The name of the zone in which the update's target resides.
rZone :: Lens' RollingUpdatesResume Text
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Resume.RollingUpdatesResume
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Resume.RollingUpdatesResume
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Resume.RollingUpdatesResume
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Resume.RollingUpdatesResume
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Resume.RollingUpdatesResume


-- | Rolls back the update in state from ROLLING_FORWARD or PAUSED. Has no
--   effect if invoked when the state of the update is ROLLED_BACK.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.rollingUpdates.rollback</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Rollback

-- | A resource alias for
--   <tt>replicapoolupdater.rollingUpdates.rollback</tt> method which the
--   <a>RollingUpdatesRollback</a> request conforms to.
type RollingUpdatesRollbackResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("rollingUpdates" :> (Capture "rollingUpdate" Text :> ("rollback" :> (QueryParam "alt" AltJSON :> Post '[JSON] Operation)))))))))

-- | Creates a value of <a>RollingUpdatesRollback</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>rurRollingUpdate</a></li>
--   <li><a>rurProject</a></li>
--   <li><a>rurZone</a></li>
--   </ul>
rollingUpdatesRollback :: Text -> Text -> Text -> RollingUpdatesRollback

-- | Rolls back the update in state from ROLLING_FORWARD or PAUSED. Has no
--   effect if invoked when the state of the update is ROLLED_BACK.
--   
--   <i>See:</i> <a>rollingUpdatesRollback</a> smart constructor.
data RollingUpdatesRollback

-- | The name of the update.
rurRollingUpdate :: Lens' RollingUpdatesRollback Text

-- | The Google Developers Console project name.
rurProject :: Lens' RollingUpdatesRollback Text

-- | The name of the zone in which the update's target resides.
rurZone :: Lens' RollingUpdatesRollback Text
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Rollback.RollingUpdatesRollback
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Rollback.RollingUpdatesRollback
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Rollback.RollingUpdatesRollback
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Rollback.RollingUpdatesRollback
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.RollingUpdates.Rollback.RollingUpdatesRollback


-- | Retrieves the specified zone-specific operation resource.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.zoneOperations.get</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.Get

-- | A resource alias for <tt>replicapoolupdater.zoneOperations.get</tt>
--   method which the <a>ZoneOperationsGet</a> request conforms to.
type ZoneOperationsGetResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("operations" :> (Capture "operation" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Operation))))))))

-- | Creates a value of <a>ZoneOperationsGet</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>zogProject</a></li>
--   <li><a>zogOperation</a></li>
--   <li><a>zogZone</a></li>
--   </ul>
zoneOperationsGet :: Text -> Text -> Text -> ZoneOperationsGet

-- | Retrieves the specified zone-specific operation resource.
--   
--   <i>See:</i> <a>zoneOperationsGet</a> smart constructor.
data ZoneOperationsGet

-- | Name of the project scoping this request.
zogProject :: Lens' ZoneOperationsGet Text

-- | Name of the operation resource to return.
zogOperation :: Lens' ZoneOperationsGet Text

-- | Name of the zone scoping this request.
zogZone :: Lens' ZoneOperationsGet Text
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.Get.ZoneOperationsGet
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.Get.ZoneOperationsGet
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.Get.ZoneOperationsGet
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.Get.ZoneOperationsGet
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.Get.ZoneOperationsGet


-- | Retrieves the list of Operation resources contained within the
--   specified zone.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a> for <tt>replicapoolupdater.zoneOperations.list</tt>.
module Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.List

-- | A resource alias for <tt>replicapoolupdater.zoneOperations.list</tt>
--   method which the <a>ZoneOperationsList</a> request conforms to.
type ZoneOperationsListResource = "replicapoolupdater" :> ("v1beta1" :> ("projects" :> (Capture "project" Text :> ("zones" :> (Capture "zone" Text :> ("operations" :> (QueryParam "filter" Text :> (QueryParam "pageToken" Text :> (QueryParam "maxResults" (Textual Word32) :> (QueryParam "alt" AltJSON :> Get '[JSON] OperationList))))))))))

-- | Creates a value of <a>ZoneOperationsList</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>zolProject</a></li>
--   <li><a>zolZone</a></li>
--   <li><a>zolFilter</a></li>
--   <li><a>zolPageToken</a></li>
--   <li><a>zolMaxResults</a></li>
--   </ul>
zoneOperationsList :: Text -> Text -> ZoneOperationsList

-- | Retrieves the list of Operation resources contained within the
--   specified zone.
--   
--   <i>See:</i> <a>zoneOperationsList</a> smart constructor.
data ZoneOperationsList

-- | Name of the project scoping this request.
zolProject :: Lens' ZoneOperationsList Text

-- | Name of the zone scoping this request.
zolZone :: Lens' ZoneOperationsList Text

-- | Optional. Filter expression for filtering listed resources.
zolFilter :: Lens' ZoneOperationsList (Maybe Text)

-- | Optional. Tag returned by a previous list request truncated by
--   maxResults. Used to continue a previous list request.
zolPageToken :: Lens' ZoneOperationsList (Maybe Text)

-- | Optional. Maximum count of results to be returned. Maximum value is
--   500 and default value is 500.
zolMaxResults :: Lens' ZoneOperationsList Word32
instance GHC.Generics.Generic Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.List.ZoneOperationsList
instance Data.Data.Data Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.List.ZoneOperationsList
instance GHC.Show.Show Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.List.ZoneOperationsList
instance GHC.Classes.Eq Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.List.ZoneOperationsList
instance Network.Google.Types.GoogleRequest Network.Google.Resource.ReplicaPoolUpdater.ZoneOperations.List.ZoneOperationsList


-- | [Deprecated. Please use compute.instanceGroupManagers.update method.
--   replicapoolupdater API will be disabled after December 30th, 2016]
--   Updates groups of Compute Engine instances.
--   
--   <i>See:</i> <a>Google Compute Engine Instance Group Updater API
--   Reference</a>
module Network.Google.ReplicaPoolUpdater

-- | Default request referring to version <tt>v1beta1</tt> of the Google
--   Compute Engine Instance Group Updater API. This contains the host and
--   root path used as a starting point for constructing service requests.
replicaPoolUpdaterService :: ServiceConfig

-- | View your data across Google Cloud Platform services
cloudPlatformReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform.read-only"]

-- | View and manage your data across Google Cloud Platform services
cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]

-- | View and manage replica pools
replicapoolScope :: Proxy '["https://www.googleapis.com/auth/replicapool"]

-- | View replica pools
replicapoolReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/replicapool.readonly"]

-- | Represents the entirety of the methods and resources available for the
--   Google Compute Engine Instance Group Updater API service.
type ReplicaPoolUpdaterAPI = RollingUpdatesInsertResource :<|> (RollingUpdatesListResource :<|> (RollingUpdatesGetResource :<|> (RollingUpdatesRollbackResource :<|> (RollingUpdatesPauseResource :<|> (RollingUpdatesCancelResource :<|> (RollingUpdatesListInstanceUpdatesResource :<|> (RollingUpdatesResumeResource :<|> (ZoneOperationsListResource :<|> ZoneOperationsGetResource))))))))
data OperationWarningsItemDataItem

-- | Creates a value of <a>OperationWarningsItemDataItem</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>owidiValue</a></li>
--   <li><a>owidiKey</a></li>
--   </ul>
operationWarningsItemDataItem :: OperationWarningsItemDataItem

-- | <ul>
--   <li><i>Output Only</i> Metadata value for this warning.</li>
--   </ul>
owidiValue :: Lens' OperationWarningsItemDataItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Metadata key for this warning.</li>
--   </ul>
owidiKey :: Lens' OperationWarningsItemDataItem (Maybe Text)

-- | The following represents a resource describing a single update
--   (rollout) of a group of instances to the given template.
--   
--   <i>See:</i> <a>rollingUpdate</a> smart constructor.
data RollingUpdate

-- | Creates a value of <a>RollingUpdate</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>ruStatus</a></li>
--   <li><a>ruProgress</a></li>
--   <li><a>ruInstanceGroupManager</a></li>
--   <li><a>ruKind</a></li>
--   <li><a>ruError</a></li>
--   <li><a>ruInstanceTemplate</a></li>
--   <li><a>ruUser</a></li>
--   <li><a>ruSelfLink</a></li>
--   <li><a>ruStatusMessage</a></li>
--   <li><a>ruCreationTimestamp</a></li>
--   <li><a>ruId</a></li>
--   <li><a>ruPolicy</a></li>
--   <li><a>ruActionType</a></li>
--   <li><a>ruOldInstanceTemplate</a></li>
--   <li><a>ruDescription</a></li>
--   <li><a>ruInstanceGroup</a></li>
--   </ul>
rollingUpdate :: RollingUpdate

-- | <ul>
--   <li><i>Output Only</i> Status of the update. Possible values are: -
--   "ROLLING_FORWARD": The update is going forward. - "ROLLING_BACK": The
--   update is being rolled back. - "PAUSED": The update is temporarily
--   paused (inactive). - "ROLLED_OUT": The update is finished, all
--   instances have been updated successfully. - "ROLLED_BACK": The update
--   is finished, all instances have been reverted to the previous
--   template. - "CANCELLED": The update is paused and no longer can be
--   resumed, undefined how many instances are running in which
--   template.</li>
--   </ul>
ruStatus :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional progress indicator that ranges from
--   0 to 100. There is no requirement that this be linear or support any
--   granularity of operations. This should not be used to guess at when
--   the update will be complete. This number should be monotonically
--   increasing as the update progresses.</li>
--   </ul>
ruProgress :: Lens' RollingUpdate (Maybe Int32)

-- | Fully-qualified URL of an instance group manager being updated.
--   Exactly one of instanceGroupManager and instanceGroup must be set.
ruInstanceGroupManager :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource.</li>
--   </ul>
ruKind :: Lens' RollingUpdate Text

-- | <ul>
--   <li><i>Output Only</i> Errors that occurred during the rolling
--   update.</li>
--   </ul>
ruError :: Lens' RollingUpdate (Maybe RollingUpdateError)

-- | Fully-qualified URL of an instance template to apply.
ruInstanceTemplate :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> User who requested the update, for example:
--   user'example.com.</li>
--   </ul>
ruUser :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
ruSelfLink :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional textual description of the current
--   status of the update.</li>
--   </ul>
ruStatusMessage :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Creation timestamp in RFC3339 text format.</li>
--   </ul>
ruCreationTimestamp :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Unique identifier for the resource; defined by
--   the server.</li>
--   </ul>
ruId :: Lens' RollingUpdate (Maybe Text)

-- | Parameters of the update process.
ruPolicy :: Lens' RollingUpdate (Maybe RollingUpdatePolicy)

-- | Specifies the action to take for each instance within the instance
--   group. This can be RECREATE which will recreate each instance and is
--   only available for managed instance groups. It can also be REBOOT
--   which performs a soft reboot for each instance and is only available
--   for regular (non-managed) instance groups.
ruActionType :: Lens' RollingUpdate (Maybe Text)

-- | Fully-qualified URL of the instance template encountered while
--   starting the update.
ruOldInstanceTemplate :: Lens' RollingUpdate (Maybe Text)

-- | An optional textual description of the resource; provided by the
--   client when the resource is created.
ruDescription :: Lens' RollingUpdate (Maybe Text)

-- | Fully-qualified URL of an instance group being updated. Exactly one of
--   instanceGroupManager and instanceGroup must be set.
ruInstanceGroup :: Lens' RollingUpdate (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Errors that occurred during the rolling
--   update.</li>
--   </ul>
--   
--   <i>See:</i> <a>rollingUpdateError</a> smart constructor.
data RollingUpdateError

-- | Creates a value of <a>RollingUpdateError</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>rueErrors</a></li>
--   </ul>
rollingUpdateError :: RollingUpdateError

-- | <ul>
--   <li><i>Output Only</i> The array of errors encountered while
--   processing this operation.</li>
--   </ul>
rueErrors :: Lens' RollingUpdateError [RollingUpdateErrorErrorsItem]

-- | Contains a list of Operation resources.
--   
--   <i>See:</i> <a>operationList</a> smart constructor.
data OperationList

-- | Creates a value of <a>OperationList</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>olNextPageToken</a></li>
--   <li><a>olKind</a></li>
--   <li><a>olItems</a></li>
--   <li><a>olSelfLink</a></li>
--   <li><a>olId</a></li>
--   </ul>
operationList :: OperationList

-- | <ul>
--   <li><i>Output Only</i> A token used to continue a truncate.</li>
--   </ul>
olNextPageToken :: Lens' OperationList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of resource. Always
--   replicapoolupdater#operationList for OperationList resources.</li>
--   </ul>
olKind :: Lens' OperationList Text

-- | <ul>
--   <li><i>Output Only</i> The Operation resources.</li>
--   </ul>
olItems :: Lens' OperationList [Operation]

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
olSelfLink :: Lens' OperationList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Unique identifier for the resource; defined by
--   the server.</li>
--   </ul>
olId :: Lens' OperationList (Maybe Text)

-- | Response returned by ListInstanceUpdates method.
--   
--   <i>See:</i> <a>instanceUpdateList</a> smart constructor.
data InstanceUpdateList

-- | Creates a value of <a>InstanceUpdateList</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>iulNextPageToken</a></li>
--   <li><a>iulKind</a></li>
--   <li><a>iulItems</a></li>
--   <li><a>iulSelfLink</a></li>
--   </ul>
instanceUpdateList :: InstanceUpdateList

-- | A token used to continue a truncated list request.
iulNextPageToken :: Lens' InstanceUpdateList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource.</li>
--   </ul>
iulKind :: Lens' InstanceUpdateList Text

-- | Collection of requested instance updates.
iulItems :: Lens' InstanceUpdateList [InstanceUpdate]

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
iulSelfLink :: Lens' InstanceUpdateList (Maybe Text)
data RollingUpdateErrorErrorsItem

-- | Creates a value of <a>RollingUpdateErrorErrorsItem</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>rueeiLocation</a></li>
--   <li><a>rueeiCode</a></li>
--   <li><a>rueeiMessage</a></li>
--   </ul>
rollingUpdateErrorErrorsItem :: RollingUpdateErrorErrorsItem

-- | <ul>
--   <li><i>Output Only</i> Indicates the field in the request that caused
--   the error. This property is optional.</li>
--   </ul>
rueeiLocation :: Lens' RollingUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The error type identifier for this error.</li>
--   </ul>
rueeiCode :: Lens' RollingUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional, human-readable error message.</li>
--   </ul>
rueeiMessage :: Lens' RollingUpdateErrorErrorsItem (Maybe Text)

-- | An operation resource, used to manage asynchronous API requests.
--   
--   <i>See:</i> <a>operation</a> smart constructor.
data Operation

-- | Creates a value of <a>Operation</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>oTargetId</a></li>
--   <li><a>oStatus</a></li>
--   <li><a>oInsertTime</a></li>
--   <li><a>oProgress</a></li>
--   <li><a>oStartTime</a></li>
--   <li><a>oKind</a></li>
--   <li><a>oError</a></li>
--   <li><a>oHTTPErrorMessage</a></li>
--   <li><a>oZone</a></li>
--   <li><a>oWarnings</a></li>
--   <li><a>oHTTPErrorStatusCode</a></li>
--   <li><a>oUser</a></li>
--   <li><a>oSelfLink</a></li>
--   <li><a>oName</a></li>
--   <li><a>oStatusMessage</a></li>
--   <li><a>oCreationTimestamp</a></li>
--   <li><a>oEndTime</a></li>
--   <li><a>oId</a></li>
--   <li><a>oOperationType</a></li>
--   <li><a>oRegion</a></li>
--   <li><a>oTargetLink</a></li>
--   <li><a>oClientOperationId</a></li>
--   </ul>
operation :: Operation

-- | <ul>
--   <li><i>Output Only</i> Unique target id which identifies a particular
--   incarnation of the target.</li>
--   </ul>
oTargetId :: Lens' Operation (Maybe Word64)

-- | <ul>
--   <li><i>Output Only</i> Status of the operation. Can be one of the
--   following: "PENDING", "RUNNING", or "DONE".</li>
--   </ul>
oStatus :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The time that this operation was requested.
--   This is in RFC 3339 format.</li>
--   </ul>
oInsertTime :: Lens' Operation (Maybe Text)
oProgress :: Lens' Operation (Maybe Int32)

-- | <ul>
--   <li><i>Output Only</i> The time that this operation was started by the
--   server. This is in RFC 3339 format.</li>
--   </ul>
oStartTime :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource. Always
--   replicapoolupdater#operation for Operation resources.</li>
--   </ul>
oKind :: Lens' Operation Text

-- | <ul>
--   <li><i>Output Only</i> If errors occurred during processing of this
--   operation, this field will be populated.</li>
--   </ul>
oError :: Lens' Operation (Maybe OperationError)
oHTTPErrorMessage :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> URL of the zone where the operation
--   resides.</li>
--   </ul>
oZone :: Lens' Operation (Maybe Text)
oWarnings :: Lens' Operation [OperationWarningsItem]
oHTTPErrorStatusCode :: Lens' Operation (Maybe Int32)
oUser :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
oSelfLink :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Name of the resource.</li>
--   </ul>
oName :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional textual description of the current
--   status of the operation.</li>
--   </ul>
oStatusMessage :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Creation timestamp in RFC3339 text format.</li>
--   </ul>
oCreationTimestamp :: Lens' Operation (Maybe Text)
oEndTime :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Unique identifier for the resource; defined by
--   the server.</li>
--   </ul>
oId :: Lens' Operation (Maybe Word64)
oOperationType :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> URL of the region where the operation
--   resides.</li>
--   </ul>
oRegion :: Lens' Operation (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> URL of the resource the operation is
--   mutating.</li>
--   </ul>
oTargetLink :: Lens' Operation (Maybe Text)
oClientOperationId :: Lens' Operation (Maybe Text)

-- | Update of a single instance.
--   
--   <i>See:</i> <a>instanceUpdate</a> smart constructor.
data InstanceUpdate

-- | Creates a value of <a>InstanceUpdate</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>iuStatus</a></li>
--   <li><a>iuError</a></li>
--   <li><a>iuInstance</a></li>
--   </ul>
instanceUpdate :: InstanceUpdate

-- | Status of the instance update. Possible values are: - "PENDING": The
--   instance update is pending execution. - "ROLLING_FORWARD": The
--   instance update is going forward. - "ROLLING_BACK": The instance
--   update is being rolled back. - "PAUSED": The instance update is
--   temporarily paused (inactive). - "ROLLED_OUT": The instance update is
--   finished, the instance is running the new template. - "ROLLED_BACK":
--   The instance update is finished, the instance has been reverted to the
--   previous template. - "CANCELLED": The instance update is paused and no
--   longer can be resumed, undefined in which template the instance is
--   running.
iuStatus :: Lens' InstanceUpdate (Maybe Text)

-- | Errors that occurred during the instance update.
iuError :: Lens' InstanceUpdate (Maybe InstanceUpdateError)

-- | Fully-qualified URL of the instance being updated.
iuInstance :: Lens' InstanceUpdate (Maybe Text)

-- | Errors that occurred during the instance update.
--   
--   <i>See:</i> <a>instanceUpdateError</a> smart constructor.
data InstanceUpdateError

-- | Creates a value of <a>InstanceUpdateError</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>iueErrors</a></li>
--   </ul>
instanceUpdateError :: InstanceUpdateError

-- | <ul>
--   <li><i>Output Only</i> The array of errors encountered while
--   processing this operation.</li>
--   </ul>
iueErrors :: Lens' InstanceUpdateError [InstanceUpdateErrorErrorsItem]

-- | Parameters of the update process.
--   
--   <i>See:</i> <a>rollingUpdatePolicy</a> smart constructor.
data RollingUpdatePolicy

-- | Creates a value of <a>RollingUpdatePolicy</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>rupMinInstanceUpdateTimeSec</a></li>
--   <li><a>rupInstanceStartupTimeoutSec</a></li>
--   <li><a>rupMaxNumFailedInstances</a></li>
--   <li><a>rupAutoPauseAfterInstances</a></li>
--   <li><a>rupMaxNumConcurrentInstances</a></li>
--   </ul>
rollingUpdatePolicy :: RollingUpdatePolicy

-- | The minimum amount of time that the updater spends to update each
--   instance. Update time is the time it takes to complete all update
--   actions (e.g. Stop call on Instance resource in Rolling Reboot),
--   reboot, and initialize. If the instance update finishes early, the
--   updater pauses for the remainder of the time before it starts the next
--   instance update.
rupMinInstanceUpdateTimeSec :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | The maximum amount of time that the updater waits for a HEALTHY state
--   after all of the update steps are complete. If the HEALTHY state is
--   not received before the deadline, the instance update is considered a
--   failure.
rupInstanceStartupTimeoutSec :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | The maximum number of instance updates that can fail before the group
--   update is considered a failure. An instance update is considered
--   failed if any of its update actions (e.g. Stop call on Instance
--   resource in Rolling Reboot) failed with permanent failure, or if the
--   instance is in an UNHEALTHY state after it finishes all of the update
--   actions.
rupMaxNumFailedInstances :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | Number of instances to update before the updater pauses the rolling
--   update.
rupAutoPauseAfterInstances :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | The maximum number of instances that can be updated simultaneously. An
--   instance update is considered complete only after the instance is
--   restarted and initialized.
rupMaxNumConcurrentInstances :: Lens' RollingUpdatePolicy (Maybe Int32)

-- | <ul>
--   <li><i>Output Only</i> If errors occurred during processing of this
--   operation, this field will be populated.</li>
--   </ul>
--   
--   <i>See:</i> <a>operationError</a> smart constructor.
data OperationError

-- | Creates a value of <a>OperationError</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>oeErrors</a></li>
--   </ul>
operationError :: OperationError

-- | <ul>
--   <li><i>Output Only</i> The array of errors encountered while
--   processing this operation.</li>
--   </ul>
oeErrors :: Lens' OperationError [OperationErrorErrorsItem]
data OperationErrorErrorsItem

-- | Creates a value of <a>OperationErrorErrorsItem</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>oeeiLocation</a></li>
--   <li><a>oeeiCode</a></li>
--   <li><a>oeeiMessage</a></li>
--   </ul>
operationErrorErrorsItem :: OperationErrorErrorsItem

-- | <ul>
--   <li><i>Output Only</i> Indicates the field in the request that caused
--   the error. This property is optional.</li>
--   </ul>
oeeiLocation :: Lens' OperationErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The error type identifier for this error.</li>
--   </ul>
oeeiCode :: Lens' OperationErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional, human-readable error message.</li>
--   </ul>
oeeiMessage :: Lens' OperationErrorErrorsItem (Maybe Text)
data InstanceUpdateErrorErrorsItem

-- | Creates a value of <a>InstanceUpdateErrorErrorsItem</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>iueeiLocation</a></li>
--   <li><a>iueeiCode</a></li>
--   <li><a>iueeiMessage</a></li>
--   </ul>
instanceUpdateErrorErrorsItem :: InstanceUpdateErrorErrorsItem

-- | <ul>
--   <li><i>Output Only</i> Indicates the field in the request that caused
--   the error. This property is optional.</li>
--   </ul>
iueeiLocation :: Lens' InstanceUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> The error type identifier for this error.</li>
--   </ul>
iueeiCode :: Lens' InstanceUpdateErrorErrorsItem (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> An optional, human-readable error message.</li>
--   </ul>
iueeiMessage :: Lens' InstanceUpdateErrorErrorsItem (Maybe Text)

-- | Response returned by List method.
--   
--   <i>See:</i> <a>rollingUpdateList</a> smart constructor.
data RollingUpdateList

-- | Creates a value of <a>RollingUpdateList</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>rulNextPageToken</a></li>
--   <li><a>rulKind</a></li>
--   <li><a>rulItems</a></li>
--   <li><a>rulSelfLink</a></li>
--   </ul>
rollingUpdateList :: RollingUpdateList

-- | A token used to continue a truncated list request.
rulNextPageToken :: Lens' RollingUpdateList (Maybe Text)

-- | <ul>
--   <li><i>Output Only</i> Type of the resource.</li>
--   </ul>
rulKind :: Lens' RollingUpdateList Text

-- | Collection of requested updates.
rulItems :: Lens' RollingUpdateList [RollingUpdate]

-- | <ul>
--   <li><i>Output Only</i> The fully qualified URL for the resource.</li>
--   </ul>
rulSelfLink :: Lens' RollingUpdateList (Maybe Text)
data OperationWarningsItem

-- | Creates a value of <a>OperationWarningsItem</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>owiData</a></li>
--   <li><a>owiCode</a></li>
--   <li><a>owiMessage</a></li>
--   </ul>
operationWarningsItem :: OperationWarningsItem

-- | <ul>
--   <li><i>Output only</i> Metadata for this warning in key:value
--   format.</li>
--   </ul>
owiData :: Lens' OperationWarningsItem [OperationWarningsItemDataItem]

-- | <ul>
--   <li><i>Output only</i> The warning type identifier for this
--   warning.</li>
--   </ul>
owiCode :: Lens' OperationWarningsItem (Maybe Text)

-- | <ul>
--   <li><i>Output only</i> Optional human-readable details for this
--   warning.</li>
--   </ul>
owiMessage :: Lens' OperationWarningsItem (Maybe Text)
