@@ -1656,6 +1656,7 @@ data Image = Image'
16561656 , _iSourceDiskId :: !(Maybe Text)
16571657 , _iKind :: !Text
16581658 , _iArchiveSizeBytes :: !(Maybe (Textual Int64))
1659+ , _iFamily :: !(Maybe Text)
16591660 , _iRawDisk :: !(Maybe ImageRawDisk)
16601661 , _iSelfLink :: !(Maybe Text)
16611662 , _iName :: !(Maybe Text)
@@ -1683,6 +1684,8 @@ data Image = Image'
16831684--
16841685-- * 'iArchiveSizeBytes'
16851686--
1687+-- * 'iFamily'
1688+--
16861689-- * 'iRawDisk'
16871690--
16881691-- * 'iSelfLink'
@@ -1710,6 +1713,7 @@ image =
17101713 , _iSourceDiskId = Nothing
17111714 , _iKind = "compute#image"
17121715 , _iArchiveSizeBytes = Nothing
1716+ , _iFamily = Nothing
17131717 , _iRawDisk = Nothing
17141718 , _iSelfLink = Nothing
17151719 , _iName = Nothing
@@ -1760,6 +1764,12 @@ iArchiveSizeBytes
17601764 (\ s a -> s{_iArchiveSizeBytes = a})
17611765 . mapping _Coerce
17621766
1767+-- | The name of the image family to which this image belongs. You can create
1768+-- disks by specifying an image family instead of a specific image name.
1769+-- The image family always returns its latest image that is not deprecated.
1770+iFamily :: Lens' Image (Maybe Text)
1771+iFamily = lens _iFamily (\ s a -> s{_iFamily = a})
1772+
17631773-- | The parameters of the raw disk image.
17641774iRawDisk :: Lens' Image (Maybe ImageRawDisk)
17651775iRawDisk = lens _iRawDisk (\ s a -> s{_iRawDisk = a})
@@ -1829,6 +1839,7 @@ instance FromJSON Image where
18291839 <*> (o .:? "sourceDiskId")
18301840 <*> (o .:? "kind" .!= "compute#image")
18311841 <*> (o .:? "archiveSizeBytes")
1842+ <*> (o .:? "family")
18321843 <*> (o .:? "rawDisk")
18331844 <*> (o .:? "selfLink")
18341845 <*> (o .:? "name")
@@ -1849,6 +1860,7 @@ instance ToJSON Image where
18491860 ("sourceDiskId" .=) <$> _iSourceDiskId,
18501861 Just ("kind" .= _iKind),
18511862 ("archiveSizeBytes" .=) <$> _iArchiveSizeBytes,
1863+ ("family" .=) <$> _iFamily,
18521864 ("rawDisk" .=) <$> _iRawDisk,
18531865 ("selfLink" .=) <$> _iSelfLink,
18541866 ("name" .=) <$> _iName,
@@ -3687,7 +3699,7 @@ frName :: Lens' ForwardingRule (Maybe Text)
36873699frName = lens _frName (\ s a -> s{_frName = a})
36883700
36893701-- | The IP protocol to which this rule applies. Valid options are TCP, UDP,
3690−-- ESP, AH or SCTP.
3702+-- ESP, AH, SCTP or ICMP.
36913703frIPProtocol :: Lens' ForwardingRule (Maybe ForwardingRuleIPProtocol)
36923704frIPProtocol
36933705 = lens _frIPProtocol (\ s a -> s{_frIPProtocol = a})
@@ -4298,7 +4310,7 @@ oStartTime
42984310 = lens _oStartTime (\ s a -> s{_oStartTime = a})
42994311
43004312-- | [Output Only] Type of the resource. Always compute#operation for
4301−-- operation resources.
4313+-- Operation resources.
43024314oKind :: Lens' Operation Text
43034315oKind = lens _oKind (\ s a -> s{_oKind = a})
43044316
@@ -4631,22 +4643,17 @@ dUsers
46314643 _Coerce
46324644
46334645-- | The source image used to create this disk. If the source image is
4634−-- deleted from the system, this field will not be set, even if an image
4635−-- with the same name has been re-created. When creating a disk, you can
4636−-- provide a private (custom) image using the following input, and Compute
4637−-- Engine will use the corresponding image from your project. For example:
4638−-- global\/images\/my-private-image Or you can provide an image from a
4639−-- publicly-available project. For example, to use a Debian image from the
4640−-- debian-cloud project, make sure to include the project in the URL:
4641−-- projects\/debian-cloud\/global\/images\/debian-7-wheezy-vYYYYMMDD where
4642−-- vYYYYMMDD is the image version. The fully-qualified URL will also work
4643−-- in both cases. You can also specify the latest image for a private image
4644−-- family by replacing the image name suffix with family\/family-name. For
4645−-- example: global\/images\/family\/my-private-family Or you can specify an
4646−-- image family from a publicly-available project. For example, to use the
4647−-- latest Debian 7 from the debian-cloud project, make sure to include the
4648−-- project in the URL:
4649−-- projects\/debian-cloud\/global\/images\/family\/debian-7
4646+-- deleted, this field will not be set. To create a disk with one of the
4647+-- public operating system images, specify the image by its family name.
4648+-- For example, specify family\/debian-8 to use the latest Debian 8 image:
4649+-- projects\/debian-cloud\/global\/images\/family\/debian-8 Alternatively,
4650+-- use a specific version of a public operating system image:
4651+-- projects\/debian-cloud\/global\/images\/debian-8-jessie-vYYYYMMDD To
4652+-- create a disk with a private image that you created, specify the image
4653+-- name in the following format: global\/images\/my-private-image You can
4654+-- also specify a private image by its image family, which returns the
4655+-- latest version of the image in that family. Replace the image name with
4656+-- family\/family-name: global\/images\/family\/my-private-family
46504657dSourceImage :: Lens' Disk (Maybe Text)
46514658dSourceImage
46524659 = lens _dSourceImage (\ s a -> s{_dSourceImage = a})
@@ -5023,9 +5030,8 @@ instanceGroupManager =
50235030igmKind :: Lens' InstanceGroupManager Text
50245031igmKind = lens _igmKind (\ s a -> s{_igmKind = a})
50255032
5026−-- | [Output Only] The fingerprint of the target pools information. You can
5027−-- use this optional field for optimistic locking when you update the
5028−-- target pool entries.
5033+-- | [Output Only] The fingerprint of the resource data. You can use this
5034+-- optional field for optimistic locking when you update the resource.
50295035igmFingerprint :: Lens' InstanceGroupManager (Maybe Word8)
50305036igmFingerprint
50315037 = lens _igmFingerprint
@@ -6045,15 +6051,18 @@ attachedDiskInitializeParams =
60456051 , _adipDiskType = Nothing
60466052 }
60476053
6048−-- | A source image used to create the disk. You can provide a private
6049−-- (custom) image, and Compute Engine will use the corresponding image from
6050−-- your project. For example: global\/images\/my-private-image Or you can
6051−-- provide an image from a publicly-available project. For example, to use
6052−-- a Debian image from the debian-cloud project, make sure to include the
6053−-- project in the URL:
6054−-- projects\/debian-cloud\/global\/images\/debian-7-wheezy-vYYYYMMDD where
6055−-- vYYYYMMDD is the image version. The fully-qualified URL will also work
6056−-- in both cases.
6054+-- | The source image used to create this disk. If the source image is
6055+-- deleted, this field will not be set. To create a disk with one of the
6056+-- public operating system images, specify the image by its family name.
6057+-- For example, specify family\/debian-8 to use the latest Debian 8 image:
6058+-- projects\/debian-cloud\/global\/images\/family\/debian-8 Alternatively,
6059+-- use a specific version of a public operating system image:
6060+-- projects\/debian-cloud\/global\/images\/debian-8-jessie-vYYYYMMDD To
6061+-- create a disk with a private image that you created, specify the image
6062+-- name in the following format: global\/images\/my-private-image You can
6063+-- also specify a private image by its image family, which returns the
6064+-- latest version of the image in that family. Replace the image name with
6065+-- family\/family-name: global\/images\/family\/my-private-family
60576066adipSourceImage :: Lens' AttachedDiskInitializeParams (Maybe Text)
60586067adipSourceImage
60596068 = lens _adipSourceImage
@@ -6210,8 +6219,9 @@ niNetwork
62106219niName :: Lens' NetworkInterface (Maybe Text)
62116220niName = lens _niName (\ s a -> s{_niName = a})
62126221
6213−-- | [Output Only] An optional IPV4 internal network address assigned to the
6214−-- instance for this network interface.
6222+-- | An IPV4 internal network address to assign to the instance for this
6223+-- network interface. If not specified by user an unused internal IP is
6224+-- assigned by system.
62156225niNetworkIP :: Lens' NetworkInterface (Maybe Text)
62166226niNetworkIP
62176227 = lens _niNetworkIP (\ s a -> s{_niNetworkIP = a})
@@ -6222,8 +6232,8 @@ niNetworkIP
62226232-- network is in custom subnet mode, then this field should be specified.
62236233-- If you specify this property, you can specify the subnetwork as a full
62246234-- or partial URL. For example, the following are all valid URLs: -
6225−-- https:\/\/www.googleapis.com\/compute\/v1\/projects\/project\/zones\/zone\/subnetworks\/subnetwork
6226−-- - zones\/zone\/subnetworks\/subnetwork
6235+-- https:\/\/www.googleapis.com\/compute\/v1\/projects\/project\/regions\/region\/subnetworks\/subnetwork
6236+-- - regions\/region\/subnetworks\/subnetwork
62276237niSubnetwork :: Lens' NetworkInterface (Maybe Text)
62286238niSubnetwork
62296239 = lens _niSubnetwork (\ s a -> s{_niSubnetwork = a})
@@ -7218,16 +7228,15 @@ instance ToJSON Address where
72187228--
72197229-- /See:/ 'zone' smart constructor.
72207230data Zone = Zone'
7221− { _zStatus :: !(Maybe ZoneStatus)
7222− , _zMaintenanceWindows :: !(Maybe [ZoneMaintenanceWindowsItem])
7223− , _zKind :: !Text
7224− , _zSelfLink :: !(Maybe Text)
7225− , _zName :: !(Maybe Text)
7226− , _zCreationTimestamp :: !(Maybe Text)
7227− , _zId :: !(Maybe (Textual Word64))
7228− , _zRegion :: !(Maybe Text)
7229− , _zDescription :: !(Maybe Text)
7230− , _zDeprecated :: !(Maybe DeprecationStatus)
7231+ { _zStatus :: !(Maybe ZoneStatus)
7232+ , _zKind :: !Text
7233+ , _zSelfLink :: !(Maybe Text)
7234+ , _zName :: !(Maybe Text)
7235+ , _zCreationTimestamp :: !(Maybe Text)
7236+ , _zId :: !(Maybe (Textual Word64))
7237+ , _zRegion :: !(Maybe Text)
7238+ , _zDescription :: !(Maybe Text)
7239+ , _zDeprecated :: !(Maybe DeprecationStatus)
72317240 } deriving (Eq,Show,Data,Typeable,Generic)
72327241
72337242-- | Creates a value of 'Zone' with the minimum fields required to make a request.
@@ -7236,8 +7245,6 @@ data Zone = Zone'
72367245--
72377246-- * 'zStatus'
72387247--
7239−-- * 'zMaintenanceWindows'
7240−--
72417248-- * 'zKind'
72427249--
72437250-- * 'zSelfLink'
@@ -7258,7 +7265,6 @@ zone
72587265zone =
72597266 Zone'
72607267 { _zStatus = Nothing
7261− , _zMaintenanceWindows = Nothing
72627268 , _zKind = "compute#zone"
72637269 , _zSelfLink = Nothing
72647270 , _zName = Nothing
@@ -7273,16 +7279,6 @@ zone =
72737279zStatus :: Lens' Zone (Maybe ZoneStatus)
72747280zStatus = lens _zStatus (\ s a -> s{_zStatus = a})
72757281
7276−-- | [Output Only] Any scheduled maintenance windows for this zone. When the
7277−-- zone is in a maintenance window, all resources which reside in the zone
7278−-- will be unavailable. For more information, see Maintenance Windows
7279−zMaintenanceWindows :: Lens' Zone [ZoneMaintenanceWindowsItem]
7280−zMaintenanceWindows
7281− = lens _zMaintenanceWindows
7282− (\ s a -> s{_zMaintenanceWindows = a})
7283− . _Default
7284− . _Coerce
7285−
72867282-- | [Output Only] Type of the resource. Always compute#zone for zones.
72877283zKind :: Lens' Zone Text
72887284zKind = lens _zKind (\ s a -> s{_zKind = a})
@@ -7328,8 +7324,7 @@ instance FromJSON Zone where
73287324 (\ o ->
73297325 Zone' <$>
73307326 (o .:? "status") <*>
7331− (o .:? "maintenanceWindows" .!= mempty)
7332− <*> (o .:? "kind" .!= "compute#zone")
7327+ (o .:? "kind" .!= "compute#zone")
73337328 <*> (o .:? "selfLink")
73347329 <*> (o .:? "name")
73357330 <*> (o .:? "creationTimestamp")
@@ -7342,9 +7337,7 @@ instance ToJSON Zone where
73427337 toJSON Zone'{..}
73437338 = object
73447339 (catMaybes
7345− [("status" .=) <$> _zStatus,
7346− ("maintenanceWindows" .=) <$> _zMaintenanceWindows,
7347− Just ("kind" .= _zKind),
7340+ [("status" .=) <$> _zStatus, Just ("kind" .= _zKind),
73487341 ("selfLink" .=) <$> _zSelfLink,
73497342 ("name" .=) <$> _zName,
73507343 ("creationTimestamp" .=) <$> _zCreationTimestamp,
@@ -8066,76 +8059,6 @@ instance ToJSON InstanceTemplate where
80668059 ("description" .=) <$> _itDescription,
80678060 ("properties" .=) <$> _itProperties])
80688061
8069−--
8070−-- /See:/ 'zoneMaintenanceWindowsItem' smart constructor.
8071−data ZoneMaintenanceWindowsItem = ZoneMaintenanceWindowsItem'
8072− { _zmwiBeginTime :: !(Maybe Text)
8073− , _zmwiName :: !(Maybe Text)
8074− , _zmwiEndTime :: !(Maybe Text)
8075− , _zmwiDescription :: !(Maybe Text)
8076− } deriving (Eq,Show,Data,Typeable,Generic)
8077−
8078−-- | Creates a value of 'ZoneMaintenanceWindowsItem' with the minimum fields required to make a request.
8079−--
8080−-- Use one of the following lenses to modify other fields as desired:
8081−--
8082−-- * 'zmwiBeginTime'
8083−--
8084−-- * 'zmwiName'
8085−--
8086−-- * 'zmwiEndTime'
8087−--
8088−-- * 'zmwiDescription'
8089−zoneMaintenanceWindowsItem
8090− :: ZoneMaintenanceWindowsItem
8091−zoneMaintenanceWindowsItem =
8092− ZoneMaintenanceWindowsItem'
8093− { _zmwiBeginTime = Nothing
8094− , _zmwiName = Nothing
8095− , _zmwiEndTime = Nothing
8096− , _zmwiDescription = Nothing
8097− }
8098−
8099−-- | [Output Only] Starting time of the maintenance window, in RFC3339
8100−-- format.
8101−zmwiBeginTime :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)
8102−zmwiBeginTime
8103− = lens _zmwiBeginTime
8104− (\ s a -> s{_zmwiBeginTime = a})
8105−
8106−-- | [Output Only] Name of the maintenance window.
8107−zmwiName :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)
8108−zmwiName = lens _zmwiName (\ s a -> s{_zmwiName = a})
8109−
8110−-- | [Output Only] Ending time of the maintenance window, in RFC3339 format.
8111−zmwiEndTime :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)
8112−zmwiEndTime
8113− = lens _zmwiEndTime (\ s a -> s{_zmwiEndTime = a})
8114−
8115−-- | [Output Only] Textual description of the maintenance window.
8116−zmwiDescription :: Lens' ZoneMaintenanceWindowsItem (Maybe Text)
8117−zmwiDescription
8118− = lens _zmwiDescription
8119− (\ s a -> s{_zmwiDescription = a})
8120−
8121−instance FromJSON ZoneMaintenanceWindowsItem where
8122− parseJSON
8123− = withObject "ZoneMaintenanceWindowsItem"
8124− (\ o ->
8125− ZoneMaintenanceWindowsItem' <$>
8126− (o .:? "beginTime") <*> (o .:? "name") <*>
8127− (o .:? "endTime")
8128− <*> (o .:? "description"))
8129−
8130−instance ToJSON ZoneMaintenanceWindowsItem where
8131− toJSON ZoneMaintenanceWindowsItem'{..}
8132− = object
8133− (catMaybes
8134− [("beginTime" .=) <$> _zmwiBeginTime,
8135− ("name" .=) <$> _zmwiName,
8136− ("endTime" .=) <$> _zmwiEndTime,
8137− ("description" .=) <$> _zmwiDescription])
8138−
81398062-- | Represents a Target VPN gateway resource.
81408063--
81418064-- /See:/ 'targetVPNGateway' smart constructor.
@@ -11362,7 +11285,7 @@ subId
1136211285 = lens _subId (\ s a -> s{_subId = a}) .
1136311286 mapping _Coerce
1136411287
11365−-- | [Output Only] URL of the region where the Subnetwork resides.
11288+-- | URL of the region where the Subnetwork resides.
1136611289subRegion :: Lens' Subnetwork (Maybe Text)
1136711290subRegion
1136811291 = lens _subRegion (\ s a -> s{_subRegion = a})
@@ -12447,6 +12370,39 @@ instance ToJSON SubnetworkAggregatedList where
1244712370 ("selfLink" .=) <$> _salSelfLink,
1244812371 ("id" .=) <$> _salId])
1244912372
12373+--
12374+-- /See:/ 'disksResizeRequest' smart constructor.
12375+newtype DisksResizeRequest = DisksResizeRequest'
12376+ { _drrSizeGb :: Maybe (Textual Int64)
12377+ } deriving (Eq,Show,Data,Typeable,Generic)
12378+
12379+-- | Creates a value of 'DisksResizeRequest' with the minimum fields required to make a request.
12380+--
12381+-- Use one of the following lenses to modify other fields as desired:
12382+--
12383+-- * 'drrSizeGb'
12384+disksResizeRequest
12385+ :: DisksResizeRequest
12386+disksResizeRequest =
12387+ DisksResizeRequest'
12388+ { _drrSizeGb = Nothing
12389+ }
12390+
12391+-- | The new size of the persistent disk, which is specified in GB.
12392+drrSizeGb :: Lens' DisksResizeRequest (Maybe Int64)
12393+drrSizeGb
12394+ = lens _drrSizeGb (\ s a -> s{_drrSizeGb = a}) .
12395+ mapping _Coerce
12396+
12397+instance FromJSON DisksResizeRequest where
12398+ parseJSON
12399+ = withObject "DisksResizeRequest"
12400+ (\ o -> DisksResizeRequest' <$> (o .:? "sizeGb"))
12401+
12402+instance ToJSON DisksResizeRequest where
12403+ toJSON DisksResizeRequest'{..}
12404+ = object (catMaybes [("sizeGb" .=) <$> _drrSizeGb])
12405+
1245012406--
1245112407-- /See:/ 'autoscalersScopedListWarningDataItem' smart constructor.
1245212408data AutoscalersScopedListWarningDataItem = AutoscalersScopedListWarningDataItem'
@@ -15832,6 +15788,7 @@ data BackendService = BackendService'
1583215788 , _bsName :: !(Maybe Text)
1583315789 , _bsCreationTimestamp :: !(Maybe Text)
1583415790 , _bsId :: !(Maybe (Textual Word64))
15791+ , _bsRegion :: !(Maybe Text)
1583515792 , _bsTimeoutSec :: !(Maybe (Textual Int32))
1583615793 , _bsDescription :: !(Maybe Text)
1583715794 , _bsPortName :: !(Maybe Text)
@@ -15859,6 +15816,8 @@ data BackendService = BackendService'
1585915816--
1586015817-- * 'bsId'
1586115818--
15819+-- * 'bsRegion'
15820+--
1586215821-- * 'bsTimeoutSec'
1586315822--
1586415823-- * 'bsDescription'
@@ -15880,6 +15839,7 @@ backendService =
1588015839 , _bsName = Nothing
1588115840 , _bsCreationTimestamp = Nothing
1588215841 , _bsId = Nothing
15842+ , _bsRegion = Nothing
1588315843 , _bsTimeoutSec = Nothing
1588415844 , _bsDescription = Nothing
1588515845 , _bsPortName = Nothing
@@ -15943,6 +15903,11 @@ bsId
1594315903 = lens _bsId (\ s a -> s{_bsId = a}) .
1594415904 mapping _Coerce
1594515905
15906+-- | [Output Only] URL of the region where the regional backend service
15907+-- resides. This field is not applicable to global backend services.
15908+bsRegion :: Lens' BackendService (Maybe Text)
15909+bsRegion = lens _bsRegion (\ s a -> s{_bsRegion = a})
15910+
1594615911-- | How many seconds to wait for the backend before considering it a failed
1594715912-- request. Default is 30 seconds.
1594815913bsTimeoutSec :: Lens' BackendService (Maybe Int32)
@@ -15993,6 +15958,7 @@ instance FromJSON BackendService where
1599315958 <*> (o .:? "name")
1599415959 <*> (o .:? "creationTimestamp")
1599515960 <*> (o .:? "id")
15961+ <*> (o .:? "region")
1599615962 <*> (o .:? "timeoutSec")
1599715963 <*> (o .:? "description")
1599815964 <*> (o .:? "portName")
@@ -16010,7 +15976,7 @@ instance ToJSON BackendService where
1601015976 ("selfLink" .=) <$> _bsSelfLink,
1601115977 ("name" .=) <$> _bsName,
1601215978 ("creationTimestamp" .=) <$> _bsCreationTimestamp,
16013− ("id" .=) <$> _bsId,
15979+ ("id" .=) <$> _bsId, ("region" .=) <$> _bsRegion,
1601415980 ("timeoutSec" .=) <$> _bsTimeoutSec,
1601515981 ("description" .=) <$> _bsDescription,
1601615982 ("portName" .=) <$> _bsPortName,