google-apis-notebooks_v1 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/google/apis/notebooks_v1.rb +1 -1
- data/lib/google/apis/notebooks_v1/classes.rb +758 -0
- data/lib/google/apis/notebooks_v1/gem_version.rb +2 -2
- data/lib/google/apis/notebooks_v1/representations.rb +298 -0
- data/lib/google/apis/notebooks_v1/service.rb +319 -3
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b8fc74b68104ea029c2d514077e62c454f40cf77408a307906c635346e939adb
|
4
|
+
data.tar.gz: 8801f3a94bfdf9986656940c925d9e49dda65195d611c88e0e8ca85d3b6ed02f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1f8c0c93880beb4f8124b67f9ee4494d4dcc62cb1e52eeba583f7653008c22a7363b099049795a2e4b1418a102e7bc03a629dc52e126767758db690d53df415a
|
7
|
+
data.tar.gz: e6cdaf71ccf44a749d0ca684fea7e457a3213a3bfbc401e3ef3966711f5f66ac8ae19d5eeb43000042755558a657e4a464b33688691ae277e37d22e9c7a5ba5e
|
data/CHANGELOG.md
CHANGED
@@ -29,7 +29,7 @@ module Google
|
|
29
29
|
# This is NOT the gem version.
|
30
30
|
VERSION = 'V1'
|
31
31
|
|
32
|
-
#
|
32
|
+
# See, edit, configure, and delete your Google Cloud Platform data
|
33
33
|
AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
|
34
34
|
end
|
35
35
|
end
|
@@ -286,6 +286,28 @@ module Google
|
|
286
286
|
end
|
287
287
|
end
|
288
288
|
|
289
|
+
# Represents a custom encryption key configuration that can be applied to a
|
290
|
+
# resource. This will encrypt all disks in Virtual Machine.
|
291
|
+
class EncryptionConfig
|
292
|
+
include Google::Apis::Core::Hashable
|
293
|
+
|
294
|
+
# The Cloud KMS resource identifier of the customer-managed encryption key used
|
295
|
+
# to protect a resource, such as a disks. It has the following format: `projects/
|
296
|
+
# `PROJECT_ID`/locations/`REGION`/keyRings/`KEY_RING_NAME`/cryptoKeys/`KEY_NAME``
|
297
|
+
# Corresponds to the JSON property `kmsKey`
|
298
|
+
# @return [String]
|
299
|
+
attr_accessor :kms_key
|
300
|
+
|
301
|
+
def initialize(**args)
|
302
|
+
update!(**args)
|
303
|
+
end
|
304
|
+
|
305
|
+
# Update properties of this object
|
306
|
+
def update!(**args)
|
307
|
+
@kms_key = args[:kms_key] if args.key?(:kms_key)
|
308
|
+
end
|
309
|
+
end
|
310
|
+
|
289
311
|
# Definition of a software environment that is used to start a notebook instance.
|
290
312
|
class Environment
|
291
313
|
include Google::Apis::Core::Hashable
|
@@ -1045,6 +1067,39 @@ module Google
|
|
1045
1067
|
end
|
1046
1068
|
end
|
1047
1069
|
|
1070
|
+
# Response for listing Managed Notebook Runtimes.
|
1071
|
+
class ListRuntimesResponse
|
1072
|
+
include Google::Apis::Core::Hashable
|
1073
|
+
|
1074
|
+
# Page token that can be used to continue listing from the last result in the
|
1075
|
+
# next list call.
|
1076
|
+
# Corresponds to the JSON property `nextPageToken`
|
1077
|
+
# @return [String]
|
1078
|
+
attr_accessor :next_page_token
|
1079
|
+
|
1080
|
+
# A list of returned Runtimes.
|
1081
|
+
# Corresponds to the JSON property `runtimes`
|
1082
|
+
# @return [Array<Google::Apis::NotebooksV1::Runtime>]
|
1083
|
+
attr_accessor :runtimes
|
1084
|
+
|
1085
|
+
# Locations that could not be reached. For example, ['us-west1', 'us-central1'].
|
1086
|
+
# A ListRuntimesResponse will only contain either runtimes or unreachables,
|
1087
|
+
# Corresponds to the JSON property `unreachable`
|
1088
|
+
# @return [Array<String>]
|
1089
|
+
attr_accessor :unreachable
|
1090
|
+
|
1091
|
+
def initialize(**args)
|
1092
|
+
update!(**args)
|
1093
|
+
end
|
1094
|
+
|
1095
|
+
# Update properties of this object
|
1096
|
+
def update!(**args)
|
1097
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1098
|
+
@runtimes = args[:runtimes] if args.key?(:runtimes)
|
1099
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
1100
|
+
end
|
1101
|
+
end
|
1102
|
+
|
1048
1103
|
# Response for listing scheduled notebook job.
|
1049
1104
|
class ListSchedulesResponse
|
1050
1105
|
include Google::Apis::Core::Hashable
|
@@ -1079,6 +1134,169 @@ module Google
|
|
1079
1134
|
end
|
1080
1135
|
end
|
1081
1136
|
|
1137
|
+
# An Local attached disk resource.
|
1138
|
+
class LocalDisk
|
1139
|
+
include Google::Apis::Core::Hashable
|
1140
|
+
|
1141
|
+
# Output only. Specifies whether the disk will be auto-deleted when the instance
|
1142
|
+
# is deleted (but not when the disk is detached from the instance).
|
1143
|
+
# Corresponds to the JSON property `autoDelete`
|
1144
|
+
# @return [Boolean]
|
1145
|
+
attr_accessor :auto_delete
|
1146
|
+
alias_method :auto_delete?, :auto_delete
|
1147
|
+
|
1148
|
+
# Output only. Indicates that this is a boot disk. The virtual machine will use
|
1149
|
+
# the first partition of the disk for its root filesystem.
|
1150
|
+
# Corresponds to the JSON property `boot`
|
1151
|
+
# @return [Boolean]
|
1152
|
+
attr_accessor :boot
|
1153
|
+
alias_method :boot?, :boot
|
1154
|
+
|
1155
|
+
# Output only. Specifies a unique device name of your choice that is reflected
|
1156
|
+
# into the /dev/disk/by-id/google-* tree of a Linux operating system running
|
1157
|
+
# within the instance. This name can be used to reference the device for
|
1158
|
+
# mounting, resizing, and so on, from within the instance. If not specified, the
|
1159
|
+
# server chooses a default device name to apply to this disk, in the form
|
1160
|
+
# persistent-disk-x, where x is a number assigned by Google Compute Engine. This
|
1161
|
+
# field is only applicable for persistent disks.
|
1162
|
+
# Corresponds to the JSON property `deviceName`
|
1163
|
+
# @return [String]
|
1164
|
+
attr_accessor :device_name
|
1165
|
+
|
1166
|
+
# Output only. Indicates a list of features to enable on the guest operating
|
1167
|
+
# system. Applicable only for bootable images. Read Enabling guest operating
|
1168
|
+
# system features to see a list of available options.
|
1169
|
+
# Corresponds to the JSON property `guestOsFeatures`
|
1170
|
+
# @return [Array<Google::Apis::NotebooksV1::RuntimeGuestOsFeature>]
|
1171
|
+
attr_accessor :guest_os_features
|
1172
|
+
|
1173
|
+
# Output only. [Output Only] A zero-based index to this disk, where 0 is
|
1174
|
+
# reserved for the boot disk. If you have many disks attached to an instance,
|
1175
|
+
# each disk would have a unique index number.
|
1176
|
+
# Corresponds to the JSON property `index`
|
1177
|
+
# @return [Fixnum]
|
1178
|
+
attr_accessor :index
|
1179
|
+
|
1180
|
+
# [Input Only] Specifies the parameters for a new disk that will be created
|
1181
|
+
# alongside the new instance. Use initialization parameters to create boot disks
|
1182
|
+
# or local SSDs attached to the new runtime. This property is mutually exclusive
|
1183
|
+
# with the source property; you can only define one or the other, but not both.
|
1184
|
+
# Corresponds to the JSON property `initializeParams`
|
1185
|
+
# @return [Google::Apis::NotebooksV1::LocalDiskInitializeParams]
|
1186
|
+
attr_accessor :initialize_params
|
1187
|
+
|
1188
|
+
# Specifies the disk interface to use for attaching this disk, which is either
|
1189
|
+
# SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and
|
1190
|
+
# the request will fail if you attempt to attach a persistent disk in any other
|
1191
|
+
# format than SCSI. Local SSDs can use either NVME or SCSI. For performance
|
1192
|
+
# characteristics of SCSI over NVMe, see Local SSD performance. Valid values:
|
1193
|
+
# NVME SCSI
|
1194
|
+
# Corresponds to the JSON property `interface`
|
1195
|
+
# @return [String]
|
1196
|
+
attr_accessor :interface
|
1197
|
+
|
1198
|
+
# Output only. Type of the resource. Always compute#attachedDisk for attached
|
1199
|
+
# disks.
|
1200
|
+
# Corresponds to the JSON property `kind`
|
1201
|
+
# @return [String]
|
1202
|
+
attr_accessor :kind
|
1203
|
+
|
1204
|
+
# Output only. [Output Only] Any valid publicly visible licenses.
|
1205
|
+
# Corresponds to the JSON property `licenses`
|
1206
|
+
# @return [Array<String>]
|
1207
|
+
attr_accessor :licenses
|
1208
|
+
|
1209
|
+
# The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not
|
1210
|
+
# specified, the default is to attach the disk in READ_WRITE mode. Valid values:
|
1211
|
+
# READ_ONLY READ_WRITE
|
1212
|
+
# Corresponds to the JSON property `mode`
|
1213
|
+
# @return [String]
|
1214
|
+
attr_accessor :mode
|
1215
|
+
|
1216
|
+
# Specifies a valid partial or full URL to an existing Persistent Disk resource.
|
1217
|
+
# Corresponds to the JSON property `source`
|
1218
|
+
# @return [String]
|
1219
|
+
attr_accessor :source
|
1220
|
+
|
1221
|
+
# Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified,
|
1222
|
+
# the default is PERSISTENT. Valid values: PERSISTENT SCRATCH
|
1223
|
+
# Corresponds to the JSON property `type`
|
1224
|
+
# @return [String]
|
1225
|
+
attr_accessor :type
|
1226
|
+
|
1227
|
+
def initialize(**args)
|
1228
|
+
update!(**args)
|
1229
|
+
end
|
1230
|
+
|
1231
|
+
# Update properties of this object
|
1232
|
+
def update!(**args)
|
1233
|
+
@auto_delete = args[:auto_delete] if args.key?(:auto_delete)
|
1234
|
+
@boot = args[:boot] if args.key?(:boot)
|
1235
|
+
@device_name = args[:device_name] if args.key?(:device_name)
|
1236
|
+
@guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
|
1237
|
+
@index = args[:index] if args.key?(:index)
|
1238
|
+
@initialize_params = args[:initialize_params] if args.key?(:initialize_params)
|
1239
|
+
@interface = args[:interface] if args.key?(:interface)
|
1240
|
+
@kind = args[:kind] if args.key?(:kind)
|
1241
|
+
@licenses = args[:licenses] if args.key?(:licenses)
|
1242
|
+
@mode = args[:mode] if args.key?(:mode)
|
1243
|
+
@source = args[:source] if args.key?(:source)
|
1244
|
+
@type = args[:type] if args.key?(:type)
|
1245
|
+
end
|
1246
|
+
end
|
1247
|
+
|
1248
|
+
# [Input Only] Specifies the parameters for a new disk that will be created
|
1249
|
+
# alongside the new instance. Use initialization parameters to create boot disks
|
1250
|
+
# or local SSDs attached to the new runtime. This property is mutually exclusive
|
1251
|
+
# with the source property; you can only define one or the other, but not both.
|
1252
|
+
class LocalDiskInitializeParams
|
1253
|
+
include Google::Apis::Core::Hashable
|
1254
|
+
|
1255
|
+
# Optional. Provide this property when creating the disk.
|
1256
|
+
# Corresponds to the JSON property `description`
|
1257
|
+
# @return [String]
|
1258
|
+
attr_accessor :description
|
1259
|
+
|
1260
|
+
# Optional. Specifies the disk name. If not specified, the default is to use the
|
1261
|
+
# name of the instance. If the disk with the instance name exists already in the
|
1262
|
+
# given zone/region, a new name will be automatically generated.
|
1263
|
+
# Corresponds to the JSON property `diskName`
|
1264
|
+
# @return [String]
|
1265
|
+
attr_accessor :disk_name
|
1266
|
+
|
1267
|
+
# Optional. Specifies the size of the disk in base-2 GB. If not specified, the
|
1268
|
+
# disk will be the same size as the image (usually 10GB). If specified, the size
|
1269
|
+
# must be equal to or larger than 10GB. Default 100 GB.
|
1270
|
+
# Corresponds to the JSON property `diskSizeGb`
|
1271
|
+
# @return [Fixnum]
|
1272
|
+
attr_accessor :disk_size_gb
|
1273
|
+
|
1274
|
+
# Input only. The type of the boot disk attached to this instance, defaults to
|
1275
|
+
# standard persistent disk (`PD_STANDARD`).
|
1276
|
+
# Corresponds to the JSON property `diskType`
|
1277
|
+
# @return [String]
|
1278
|
+
attr_accessor :disk_type
|
1279
|
+
|
1280
|
+
# Optional. Labels to apply to this disk. These can be later modified by the
|
1281
|
+
# disks.setLabels method. This field is only applicable for persistent disks.
|
1282
|
+
# Corresponds to the JSON property `labels`
|
1283
|
+
# @return [Hash<String,String>]
|
1284
|
+
attr_accessor :labels
|
1285
|
+
|
1286
|
+
def initialize(**args)
|
1287
|
+
update!(**args)
|
1288
|
+
end
|
1289
|
+
|
1290
|
+
# Update properties of this object
|
1291
|
+
def update!(**args)
|
1292
|
+
@description = args[:description] if args.key?(:description)
|
1293
|
+
@disk_name = args[:disk_name] if args.key?(:disk_name)
|
1294
|
+
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
1295
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
1296
|
+
@labels = args[:labels] if args.key?(:labels)
|
1297
|
+
end
|
1298
|
+
end
|
1299
|
+
|
1082
1300
|
# A resource that represents Google Cloud Platform location.
|
1083
1301
|
class Location
|
1084
1302
|
include Google::Apis::Core::Hashable
|
@@ -1398,6 +1616,303 @@ module Google
|
|
1398
1616
|
end
|
1399
1617
|
end
|
1400
1618
|
|
1619
|
+
# Request for reseting a Managed Notebook Runtime.
|
1620
|
+
class ResetRuntimeRequest
|
1621
|
+
include Google::Apis::Core::Hashable
|
1622
|
+
|
1623
|
+
def initialize(**args)
|
1624
|
+
update!(**args)
|
1625
|
+
end
|
1626
|
+
|
1627
|
+
# Update properties of this object
|
1628
|
+
def update!(**args)
|
1629
|
+
end
|
1630
|
+
end
|
1631
|
+
|
1632
|
+
# The definition of a Runtime for a managed notebook instance.
|
1633
|
+
class Runtime
|
1634
|
+
include Google::Apis::Core::Hashable
|
1635
|
+
|
1636
|
+
# Specifies the login configuration for Runtime
|
1637
|
+
# Corresponds to the JSON property `accessConfig`
|
1638
|
+
# @return [Google::Apis::NotebooksV1::RuntimeAccessConfig]
|
1639
|
+
attr_accessor :access_config
|
1640
|
+
|
1641
|
+
# Output only. Runtime creation time.
|
1642
|
+
# Corresponds to the JSON property `createTime`
|
1643
|
+
# @return [String]
|
1644
|
+
attr_accessor :create_time
|
1645
|
+
|
1646
|
+
# Output only. Runtime health_state.
|
1647
|
+
# Corresponds to the JSON property `healthState`
|
1648
|
+
# @return [String]
|
1649
|
+
attr_accessor :health_state
|
1650
|
+
|
1651
|
+
# Contains runtime daemon metrics, such as OS and kernels and sessions stats.
|
1652
|
+
# Corresponds to the JSON property `metrics`
|
1653
|
+
# @return [Google::Apis::NotebooksV1::RuntimeMetrics]
|
1654
|
+
attr_accessor :metrics
|
1655
|
+
|
1656
|
+
# Output only. The resource name of the runtime. Format: `projects/`project`/
|
1657
|
+
# locations/`location`/runtimes/`runtime``
|
1658
|
+
# Corresponds to the JSON property `name`
|
1659
|
+
# @return [String]
|
1660
|
+
attr_accessor :name
|
1661
|
+
|
1662
|
+
# Specifies the selection and config of software inside the runtime. / The
|
1663
|
+
# properties to set on runtime. Properties keys are specified in `key:value`
|
1664
|
+
# format, for example: * idle_shutdown: idle_shutdown=true *
|
1665
|
+
# idle_shutdown_timeout: idle_shutdown_timeout=180 * report-system-health:
|
1666
|
+
# report-system-health=true
|
1667
|
+
# Corresponds to the JSON property `softwareConfig`
|
1668
|
+
# @return [Google::Apis::NotebooksV1::RuntimeSoftwareConfig]
|
1669
|
+
attr_accessor :software_config
|
1670
|
+
|
1671
|
+
# Output only. Runtime state.
|
1672
|
+
# Corresponds to the JSON property `state`
|
1673
|
+
# @return [String]
|
1674
|
+
attr_accessor :state
|
1675
|
+
|
1676
|
+
# Output only. Runtime update time.
|
1677
|
+
# Corresponds to the JSON property `updateTime`
|
1678
|
+
# @return [String]
|
1679
|
+
attr_accessor :update_time
|
1680
|
+
|
1681
|
+
# Runtime using Virtual Machine for computing.
|
1682
|
+
# Corresponds to the JSON property `virtualMachine`
|
1683
|
+
# @return [Google::Apis::NotebooksV1::VirtualMachine]
|
1684
|
+
attr_accessor :virtual_machine
|
1685
|
+
|
1686
|
+
def initialize(**args)
|
1687
|
+
update!(**args)
|
1688
|
+
end
|
1689
|
+
|
1690
|
+
# Update properties of this object
|
1691
|
+
def update!(**args)
|
1692
|
+
@access_config = args[:access_config] if args.key?(:access_config)
|
1693
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1694
|
+
@health_state = args[:health_state] if args.key?(:health_state)
|
1695
|
+
@metrics = args[:metrics] if args.key?(:metrics)
|
1696
|
+
@name = args[:name] if args.key?(:name)
|
1697
|
+
@software_config = args[:software_config] if args.key?(:software_config)
|
1698
|
+
@state = args[:state] if args.key?(:state)
|
1699
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1700
|
+
@virtual_machine = args[:virtual_machine] if args.key?(:virtual_machine)
|
1701
|
+
end
|
1702
|
+
end
|
1703
|
+
|
1704
|
+
# Definition of the types of hardware accelerators that can be used. Definition
|
1705
|
+
# of the types of hardware accelerators that can be used. See [Compute Engine
|
1706
|
+
# AcceleratorTypes](https://cloud.google.com/compute/docs/reference/beta/
|
1707
|
+
# acceleratorTypes). Examples: * `nvidia-tesla-k80` * `nvidia-tesla-p100` * `
|
1708
|
+
# nvidia-tesla-v100` * `nvidia-tesla-p4` * `nvidia-tesla-t4` * `nvidia-tesla-
|
1709
|
+
# a100`
|
1710
|
+
class RuntimeAcceleratorConfig
|
1711
|
+
include Google::Apis::Core::Hashable
|
1712
|
+
|
1713
|
+
# Count of cores of this accelerator.
|
1714
|
+
# Corresponds to the JSON property `coreCount`
|
1715
|
+
# @return [Fixnum]
|
1716
|
+
attr_accessor :core_count
|
1717
|
+
|
1718
|
+
# Accelerator model.
|
1719
|
+
# Corresponds to the JSON property `type`
|
1720
|
+
# @return [String]
|
1721
|
+
attr_accessor :type
|
1722
|
+
|
1723
|
+
def initialize(**args)
|
1724
|
+
update!(**args)
|
1725
|
+
end
|
1726
|
+
|
1727
|
+
# Update properties of this object
|
1728
|
+
def update!(**args)
|
1729
|
+
@core_count = args[:core_count] if args.key?(:core_count)
|
1730
|
+
@type = args[:type] if args.key?(:type)
|
1731
|
+
end
|
1732
|
+
end
|
1733
|
+
|
1734
|
+
# Specifies the login configuration for Runtime
|
1735
|
+
class RuntimeAccessConfig
|
1736
|
+
include Google::Apis::Core::Hashable
|
1737
|
+
|
1738
|
+
# The type of access mode this instance.
|
1739
|
+
# Corresponds to the JSON property `accessType`
|
1740
|
+
# @return [String]
|
1741
|
+
attr_accessor :access_type
|
1742
|
+
|
1743
|
+
# Output only. The proxy endpoint that is used to access the runtime.
|
1744
|
+
# Corresponds to the JSON property `proxyUri`
|
1745
|
+
# @return [String]
|
1746
|
+
attr_accessor :proxy_uri
|
1747
|
+
|
1748
|
+
# The owner of this runtime after creation. Format: `alias@example.com`
|
1749
|
+
# Currently supports one owner only.
|
1750
|
+
# Corresponds to the JSON property `runtimeOwner`
|
1751
|
+
# @return [String]
|
1752
|
+
attr_accessor :runtime_owner
|
1753
|
+
|
1754
|
+
def initialize(**args)
|
1755
|
+
update!(**args)
|
1756
|
+
end
|
1757
|
+
|
1758
|
+
# Update properties of this object
|
1759
|
+
def update!(**args)
|
1760
|
+
@access_type = args[:access_type] if args.key?(:access_type)
|
1761
|
+
@proxy_uri = args[:proxy_uri] if args.key?(:proxy_uri)
|
1762
|
+
@runtime_owner = args[:runtime_owner] if args.key?(:runtime_owner)
|
1763
|
+
end
|
1764
|
+
end
|
1765
|
+
|
1766
|
+
# A list of features to enable on the guest operating system. Applicable only
|
1767
|
+
# for bootable images. Read Enabling guest operating system features to see a
|
1768
|
+
# list of available options. Guest OS features for boot disk.
|
1769
|
+
class RuntimeGuestOsFeature
|
1770
|
+
include Google::Apis::Core::Hashable
|
1771
|
+
|
1772
|
+
# The ID of a supported feature. Read Enabling guest operating system features
|
1773
|
+
# to see a list of available options. Valid values: FEATURE_TYPE_UNSPECIFIED
|
1774
|
+
# MULTI_IP_SUBNET SECURE_BOOT UEFI_COMPATIBLE VIRTIO_SCSI_MULTIQUEUE WINDOWS
|
1775
|
+
# Corresponds to the JSON property `type`
|
1776
|
+
# @return [String]
|
1777
|
+
attr_accessor :type
|
1778
|
+
|
1779
|
+
def initialize(**args)
|
1780
|
+
update!(**args)
|
1781
|
+
end
|
1782
|
+
|
1783
|
+
# Update properties of this object
|
1784
|
+
def update!(**args)
|
1785
|
+
@type = args[:type] if args.key?(:type)
|
1786
|
+
end
|
1787
|
+
end
|
1788
|
+
|
1789
|
+
# Contains runtime daemon metrics, such as OS and kernels and sessions stats.
|
1790
|
+
class RuntimeMetrics
|
1791
|
+
include Google::Apis::Core::Hashable
|
1792
|
+
|
1793
|
+
# Output only. The system metrics.
|
1794
|
+
# Corresponds to the JSON property `systemMetrics`
|
1795
|
+
# @return [Hash<String,String>]
|
1796
|
+
attr_accessor :system_metrics
|
1797
|
+
|
1798
|
+
def initialize(**args)
|
1799
|
+
update!(**args)
|
1800
|
+
end
|
1801
|
+
|
1802
|
+
# Update properties of this object
|
1803
|
+
def update!(**args)
|
1804
|
+
@system_metrics = args[:system_metrics] if args.key?(:system_metrics)
|
1805
|
+
end
|
1806
|
+
end
|
1807
|
+
|
1808
|
+
# A set of Shielded Instance options. Check [Images using supported Shielded VM
|
1809
|
+
# features] Not all combinations are valid.
|
1810
|
+
class RuntimeShieldedInstanceConfig
|
1811
|
+
include Google::Apis::Core::Hashable
|
1812
|
+
|
1813
|
+
# Defines whether the instance has integrity monitoring enabled. Enables
|
1814
|
+
# monitoring and attestation of the boot integrity of the instance. The
|
1815
|
+
# attestation is performed against the integrity policy baseline. This baseline
|
1816
|
+
# is initially derived from the implicitly trusted boot image when the instance
|
1817
|
+
# is created. Enabled by default.
|
1818
|
+
# Corresponds to the JSON property `enableIntegrityMonitoring`
|
1819
|
+
# @return [Boolean]
|
1820
|
+
attr_accessor :enable_integrity_monitoring
|
1821
|
+
alias_method :enable_integrity_monitoring?, :enable_integrity_monitoring
|
1822
|
+
|
1823
|
+
# Defines whether the instance has Secure Boot enabled. Secure Boot helps ensure
|
1824
|
+
# that the system only runs authentic software by verifying the digital
|
1825
|
+
# signature of all boot components, and halting the boot process if signature
|
1826
|
+
# verification fails. Disabled by default.
|
1827
|
+
# Corresponds to the JSON property `enableSecureBoot`
|
1828
|
+
# @return [Boolean]
|
1829
|
+
attr_accessor :enable_secure_boot
|
1830
|
+
alias_method :enable_secure_boot?, :enable_secure_boot
|
1831
|
+
|
1832
|
+
# Defines whether the instance has the vTPM enabled. Enabled by default.
|
1833
|
+
# Corresponds to the JSON property `enableVtpm`
|
1834
|
+
# @return [Boolean]
|
1835
|
+
attr_accessor :enable_vtpm
|
1836
|
+
alias_method :enable_vtpm?, :enable_vtpm
|
1837
|
+
|
1838
|
+
def initialize(**args)
|
1839
|
+
update!(**args)
|
1840
|
+
end
|
1841
|
+
|
1842
|
+
# Update properties of this object
|
1843
|
+
def update!(**args)
|
1844
|
+
@enable_integrity_monitoring = args[:enable_integrity_monitoring] if args.key?(:enable_integrity_monitoring)
|
1845
|
+
@enable_secure_boot = args[:enable_secure_boot] if args.key?(:enable_secure_boot)
|
1846
|
+
@enable_vtpm = args[:enable_vtpm] if args.key?(:enable_vtpm)
|
1847
|
+
end
|
1848
|
+
end
|
1849
|
+
|
1850
|
+
# Specifies the selection and config of software inside the runtime. / The
|
1851
|
+
# properties to set on runtime. Properties keys are specified in `key:value`
|
1852
|
+
# format, for example: * idle_shutdown: idle_shutdown=true *
|
1853
|
+
# idle_shutdown_timeout: idle_shutdown_timeout=180 * report-system-health:
|
1854
|
+
# report-system-health=true
|
1855
|
+
class RuntimeSoftwareConfig
|
1856
|
+
include Google::Apis::Core::Hashable
|
1857
|
+
|
1858
|
+
# Specify a custom Cloud Storage path where the GPU driver is stored. If not
|
1859
|
+
# specified, we'll automatically choose from official GPU drivers.
|
1860
|
+
# Corresponds to the JSON property `customGpuDriverPath`
|
1861
|
+
# @return [String]
|
1862
|
+
attr_accessor :custom_gpu_driver_path
|
1863
|
+
|
1864
|
+
# Verifies core internal services are running. Default: True
|
1865
|
+
# Corresponds to the JSON property `enableHealthMonitoring`
|
1866
|
+
# @return [Boolean]
|
1867
|
+
attr_accessor :enable_health_monitoring
|
1868
|
+
alias_method :enable_health_monitoring?, :enable_health_monitoring
|
1869
|
+
|
1870
|
+
# Runtime will automatically shutdown after idle_shutdown_time. Default: False
|
1871
|
+
# Corresponds to the JSON property `idleShutdown`
|
1872
|
+
# @return [Boolean]
|
1873
|
+
attr_accessor :idle_shutdown
|
1874
|
+
alias_method :idle_shutdown?, :idle_shutdown
|
1875
|
+
|
1876
|
+
# Time in minutes to wait before shuting down runtime. Default: 90 minutes
|
1877
|
+
# Corresponds to the JSON property `idleShutdownTimeout`
|
1878
|
+
# @return [Fixnum]
|
1879
|
+
attr_accessor :idle_shutdown_timeout
|
1880
|
+
|
1881
|
+
# Install Nvidia Driver automatically.
|
1882
|
+
# Corresponds to the JSON property `installGpuDriver`
|
1883
|
+
# @return [Boolean]
|
1884
|
+
attr_accessor :install_gpu_driver
|
1885
|
+
alias_method :install_gpu_driver?, :install_gpu_driver
|
1886
|
+
|
1887
|
+
# Cron expression in UTC timezone, used to schedule instance auto upgrade.
|
1888
|
+
# Please follow the [cron format](https://en.wikipedia.org/wiki/Cron).
|
1889
|
+
# Corresponds to the JSON property `notebookUpgradeSchedule`
|
1890
|
+
# @return [String]
|
1891
|
+
attr_accessor :notebook_upgrade_schedule
|
1892
|
+
|
1893
|
+
# Path to a Bash script that automatically runs after a notebook instance fully
|
1894
|
+
# boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-
|
1895
|
+
# name).
|
1896
|
+
# Corresponds to the JSON property `postStartupScript`
|
1897
|
+
# @return [String]
|
1898
|
+
attr_accessor :post_startup_script
|
1899
|
+
|
1900
|
+
def initialize(**args)
|
1901
|
+
update!(**args)
|
1902
|
+
end
|
1903
|
+
|
1904
|
+
# Update properties of this object
|
1905
|
+
def update!(**args)
|
1906
|
+
@custom_gpu_driver_path = args[:custom_gpu_driver_path] if args.key?(:custom_gpu_driver_path)
|
1907
|
+
@enable_health_monitoring = args[:enable_health_monitoring] if args.key?(:enable_health_monitoring)
|
1908
|
+
@idle_shutdown = args[:idle_shutdown] if args.key?(:idle_shutdown)
|
1909
|
+
@idle_shutdown_timeout = args[:idle_shutdown_timeout] if args.key?(:idle_shutdown_timeout)
|
1910
|
+
@install_gpu_driver = args[:install_gpu_driver] if args.key?(:install_gpu_driver)
|
1911
|
+
@notebook_upgrade_schedule = args[:notebook_upgrade_schedule] if args.key?(:notebook_upgrade_schedule)
|
1912
|
+
@post_startup_script = args[:post_startup_script] if args.key?(:post_startup_script)
|
1913
|
+
end
|
1914
|
+
end
|
1915
|
+
|
1401
1916
|
# The definition of a schedule.
|
1402
1917
|
class Schedule
|
1403
1918
|
include Google::Apis::Core::Hashable
|
@@ -1676,6 +2191,19 @@ module Google
|
|
1676
2191
|
end
|
1677
2192
|
end
|
1678
2193
|
|
2194
|
+
# Request for starting a Managed Notebook Runtime.
|
2195
|
+
class StartRuntimeRequest
|
2196
|
+
include Google::Apis::Core::Hashable
|
2197
|
+
|
2198
|
+
def initialize(**args)
|
2199
|
+
update!(**args)
|
2200
|
+
end
|
2201
|
+
|
2202
|
+
# Update properties of this object
|
2203
|
+
def update!(**args)
|
2204
|
+
end
|
2205
|
+
end
|
2206
|
+
|
1679
2207
|
# The `Status` type defines a logical error model that is suitable for different
|
1680
2208
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1681
2209
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
@@ -1728,6 +2256,49 @@ module Google
|
|
1728
2256
|
end
|
1729
2257
|
end
|
1730
2258
|
|
2259
|
+
# Request for stopping a Managed Notebook Runtime.
|
2260
|
+
class StopRuntimeRequest
|
2261
|
+
include Google::Apis::Core::Hashable
|
2262
|
+
|
2263
|
+
def initialize(**args)
|
2264
|
+
update!(**args)
|
2265
|
+
end
|
2266
|
+
|
2267
|
+
# Update properties of this object
|
2268
|
+
def update!(**args)
|
2269
|
+
end
|
2270
|
+
end
|
2271
|
+
|
2272
|
+
# Request for switching a Managed Notebook Runtime.
|
2273
|
+
class SwitchRuntimeRequest
|
2274
|
+
include Google::Apis::Core::Hashable
|
2275
|
+
|
2276
|
+
# Definition of the types of hardware accelerators that can be used. Definition
|
2277
|
+
# of the types of hardware accelerators that can be used. See [Compute Engine
|
2278
|
+
# AcceleratorTypes](https://cloud.google.com/compute/docs/reference/beta/
|
2279
|
+
# acceleratorTypes). Examples: * `nvidia-tesla-k80` * `nvidia-tesla-p100` * `
|
2280
|
+
# nvidia-tesla-v100` * `nvidia-tesla-p4` * `nvidia-tesla-t4` * `nvidia-tesla-
|
2281
|
+
# a100`
|
2282
|
+
# Corresponds to the JSON property `acceleratorConfig`
|
2283
|
+
# @return [Google::Apis::NotebooksV1::RuntimeAcceleratorConfig]
|
2284
|
+
attr_accessor :accelerator_config
|
2285
|
+
|
2286
|
+
# machine type.
|
2287
|
+
# Corresponds to the JSON property `machineType`
|
2288
|
+
# @return [String]
|
2289
|
+
attr_accessor :machine_type
|
2290
|
+
|
2291
|
+
def initialize(**args)
|
2292
|
+
update!(**args)
|
2293
|
+
end
|
2294
|
+
|
2295
|
+
# Update properties of this object
|
2296
|
+
def update!(**args)
|
2297
|
+
@accelerator_config = args[:accelerator_config] if args.key?(:accelerator_config)
|
2298
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
2299
|
+
end
|
2300
|
+
end
|
2301
|
+
|
1731
2302
|
# Request message for `TestIamPermissions` method.
|
1732
2303
|
class TestIamPermissionsRequest
|
1733
2304
|
include Google::Apis::Core::Hashable
|
@@ -1781,6 +2352,27 @@ module Google
|
|
1781
2352
|
end
|
1782
2353
|
end
|
1783
2354
|
|
2355
|
+
# Request for updating the Shielded Instance config for a notebook instance. You
|
2356
|
+
# can only use this method on a stopped instance
|
2357
|
+
class UpdateShieldedInstanceConfigRequest
|
2358
|
+
include Google::Apis::Core::Hashable
|
2359
|
+
|
2360
|
+
# A set of Shielded Instance options. Check [Images using supported Shielded VM
|
2361
|
+
# features] Not all combinations are valid.
|
2362
|
+
# Corresponds to the JSON property `shieldedInstanceConfig`
|
2363
|
+
# @return [Google::Apis::NotebooksV1::ShieldedInstanceConfig]
|
2364
|
+
attr_accessor :shielded_instance_config
|
2365
|
+
|
2366
|
+
def initialize(**args)
|
2367
|
+
update!(**args)
|
2368
|
+
end
|
2369
|
+
|
2370
|
+
# Update properties of this object
|
2371
|
+
def update!(**args)
|
2372
|
+
@shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
|
2373
|
+
end
|
2374
|
+
end
|
2375
|
+
|
1784
2376
|
# The entry of VM image upgrade history.
|
1785
2377
|
class UpgradeHistoryEntry
|
1786
2378
|
include Google::Apis::Core::Hashable
|
@@ -1887,6 +2479,172 @@ module Google
|
|
1887
2479
|
end
|
1888
2480
|
end
|
1889
2481
|
|
2482
|
+
# Runtime using Virtual Machine for computing.
|
2483
|
+
class VirtualMachine
|
2484
|
+
include Google::Apis::Core::Hashable
|
2485
|
+
|
2486
|
+
# Output only. The unique identifier of the Managed Compute Engine instance.
|
2487
|
+
# Corresponds to the JSON property `instanceId`
|
2488
|
+
# @return [String]
|
2489
|
+
attr_accessor :instance_id
|
2490
|
+
|
2491
|
+
# Output only. The user-friendly name of the Managed Compute Engine instance.
|
2492
|
+
# Corresponds to the JSON property `instanceName`
|
2493
|
+
# @return [String]
|
2494
|
+
attr_accessor :instance_name
|
2495
|
+
|
2496
|
+
# The config settings for virtual machine.
|
2497
|
+
# Corresponds to the JSON property `virtualMachineConfig`
|
2498
|
+
# @return [Google::Apis::NotebooksV1::VirtualMachineConfig]
|
2499
|
+
attr_accessor :virtual_machine_config
|
2500
|
+
|
2501
|
+
def initialize(**args)
|
2502
|
+
update!(**args)
|
2503
|
+
end
|
2504
|
+
|
2505
|
+
# Update properties of this object
|
2506
|
+
def update!(**args)
|
2507
|
+
@instance_id = args[:instance_id] if args.key?(:instance_id)
|
2508
|
+
@instance_name = args[:instance_name] if args.key?(:instance_name)
|
2509
|
+
@virtual_machine_config = args[:virtual_machine_config] if args.key?(:virtual_machine_config)
|
2510
|
+
end
|
2511
|
+
end
|
2512
|
+
|
2513
|
+
# The config settings for virtual machine.
|
2514
|
+
class VirtualMachineConfig
|
2515
|
+
include Google::Apis::Core::Hashable
|
2516
|
+
|
2517
|
+
# Definition of the types of hardware accelerators that can be used. Definition
|
2518
|
+
# of the types of hardware accelerators that can be used. See [Compute Engine
|
2519
|
+
# AcceleratorTypes](https://cloud.google.com/compute/docs/reference/beta/
|
2520
|
+
# acceleratorTypes). Examples: * `nvidia-tesla-k80` * `nvidia-tesla-p100` * `
|
2521
|
+
# nvidia-tesla-v100` * `nvidia-tesla-p4` * `nvidia-tesla-t4` * `nvidia-tesla-
|
2522
|
+
# a100`
|
2523
|
+
# Corresponds to the JSON property `acceleratorConfig`
|
2524
|
+
# @return [Google::Apis::NotebooksV1::RuntimeAcceleratorConfig]
|
2525
|
+
attr_accessor :accelerator_config
|
2526
|
+
|
2527
|
+
# Optional. Use a list of container images to start the notebook instance.
|
2528
|
+
# Corresponds to the JSON property `containerImages`
|
2529
|
+
# @return [Array<Google::Apis::NotebooksV1::ContainerImage>]
|
2530
|
+
attr_accessor :container_images
|
2531
|
+
|
2532
|
+
# An Local attached disk resource.
|
2533
|
+
# Corresponds to the JSON property `dataDisk`
|
2534
|
+
# @return [Google::Apis::NotebooksV1::LocalDisk]
|
2535
|
+
attr_accessor :data_disk
|
2536
|
+
|
2537
|
+
# Represents a custom encryption key configuration that can be applied to a
|
2538
|
+
# resource. This will encrypt all disks in Virtual Machine.
|
2539
|
+
# Corresponds to the JSON property `encryptionConfig`
|
2540
|
+
# @return [Google::Apis::NotebooksV1::EncryptionConfig]
|
2541
|
+
attr_accessor :encryption_config
|
2542
|
+
|
2543
|
+
# Output only. The Compute Engine guest attributes. (see [Project and instance
|
2544
|
+
# guest attributes](https://cloud.google.com/compute/docs/storing-retrieving-
|
2545
|
+
# metadata#guest_attributes)).
|
2546
|
+
# Corresponds to the JSON property `guestAttributes`
|
2547
|
+
# @return [Hash<String,String>]
|
2548
|
+
attr_accessor :guest_attributes
|
2549
|
+
|
2550
|
+
# Optional. If true, runtime will only have internal IP addresses. By default,
|
2551
|
+
# runtimes are not restricted to internal IP addresses, and will have ephemeral
|
2552
|
+
# external IP addresses assigned to each vm. This `internal_ip_only` restriction
|
2553
|
+
# can only be enabled for subnetwork enabled networks, and all dependencies must
|
2554
|
+
# be configured to be accessible without external IP addresses.
|
2555
|
+
# Corresponds to the JSON property `internalIpOnly`
|
2556
|
+
# @return [Boolean]
|
2557
|
+
attr_accessor :internal_ip_only
|
2558
|
+
alias_method :internal_ip_only?, :internal_ip_only
|
2559
|
+
|
2560
|
+
# Optional. The labels to associate with this runtime. Label **keys** must
|
2561
|
+
# contain 1 to 63 characters, and must conform to [RFC 1035](https://www.ietf.
|
2562
|
+
# org/rfc/rfc1035.txt). Label **values** may be empty, but, if present, must
|
2563
|
+
# contain 1 to 63 characters, and must conform to [RFC 1035](https://www.ietf.
|
2564
|
+
# org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster.
|
2565
|
+
# Corresponds to the JSON property `labels`
|
2566
|
+
# @return [Hash<String,String>]
|
2567
|
+
attr_accessor :labels
|
2568
|
+
|
2569
|
+
# Required. The Compute Engine machine type used for runtimes. Short name is
|
2570
|
+
# valid. Examples: * `n1-standard-2` * `e2-standard-8`
|
2571
|
+
# Corresponds to the JSON property `machineType`
|
2572
|
+
# @return [String]
|
2573
|
+
attr_accessor :machine_type
|
2574
|
+
|
2575
|
+
# Optional. The Compute Engine metadata entries to add to virtual machine. (see [
|
2576
|
+
# Project and instance metadata](https://cloud.google.com/compute/docs/storing-
|
2577
|
+
# retrieving-metadata#project_and_instance_metadata)).
|
2578
|
+
# Corresponds to the JSON property `metadata`
|
2579
|
+
# @return [Hash<String,String>]
|
2580
|
+
attr_accessor :metadata
|
2581
|
+
|
2582
|
+
# Optional. The Compute Engine network to be used for machine communications.
|
2583
|
+
# Cannot be specified with subnetwork. If neither `network` nor `subnet` is
|
2584
|
+
# specified, the "default" network of the project is used, if it exists. A full
|
2585
|
+
# URL or partial URI. Examples: * `https://www.googleapis.com/compute/v1/
|
2586
|
+
# projects/[project_id]/regions/global/default` * `projects/[project_id]/regions/
|
2587
|
+
# global/default` Runtimes are managed resources inside Google Infrastructure.
|
2588
|
+
# Runtimes support the following network configurations: * Google Managed
|
2589
|
+
# Network (Network & subnet are empty) * Consumer Project VPC (network & subnet
|
2590
|
+
# are required). Requires configuring Private Service Access. * Shared VPC (
|
2591
|
+
# network & subnet are required). Requires configuring Private Service Access.
|
2592
|
+
# Corresponds to the JSON property `network`
|
2593
|
+
# @return [String]
|
2594
|
+
attr_accessor :network
|
2595
|
+
|
2596
|
+
# A set of Shielded Instance options. Check [Images using supported Shielded VM
|
2597
|
+
# features] Not all combinations are valid.
|
2598
|
+
# Corresponds to the JSON property `shieldedInstanceConfig`
|
2599
|
+
# @return [Google::Apis::NotebooksV1::RuntimeShieldedInstanceConfig]
|
2600
|
+
attr_accessor :shielded_instance_config
|
2601
|
+
|
2602
|
+
# Optional. The Compute Engine subnetwork to be used for machine communications.
|
2603
|
+
# Cannot be specified with network. A full URL or partial URI are valid.
|
2604
|
+
# Examples: * `https://www.googleapis.com/compute/v1/projects/[project_id]/
|
2605
|
+
# regions/us-east1/subnetworks/sub0` * `projects/[project_id]/regions/us-east1/
|
2606
|
+
# subnetworks/sub0`
|
2607
|
+
# Corresponds to the JSON property `subnet`
|
2608
|
+
# @return [String]
|
2609
|
+
attr_accessor :subnet
|
2610
|
+
|
2611
|
+
# Optional. The Compute Engine tags to add to runtime (see [Tagging instances](
|
2612
|
+
# https://cloud.google.com/compute/docs/label-or-tag-resources#tags)).
|
2613
|
+
# Corresponds to the JSON property `tags`
|
2614
|
+
# @return [Array<String>]
|
2615
|
+
attr_accessor :tags
|
2616
|
+
|
2617
|
+
# Output only. The zone where the virtual machine is located. If using regional
|
2618
|
+
# request, the notebooks service will pick a location in the corresponding
|
2619
|
+
# runtime region. On a get request, zone will always be present. Example: * `us-
|
2620
|
+
# central1-b`
|
2621
|
+
# Corresponds to the JSON property `zone`
|
2622
|
+
# @return [String]
|
2623
|
+
attr_accessor :zone
|
2624
|
+
|
2625
|
+
def initialize(**args)
|
2626
|
+
update!(**args)
|
2627
|
+
end
|
2628
|
+
|
2629
|
+
# Update properties of this object
|
2630
|
+
def update!(**args)
|
2631
|
+
@accelerator_config = args[:accelerator_config] if args.key?(:accelerator_config)
|
2632
|
+
@container_images = args[:container_images] if args.key?(:container_images)
|
2633
|
+
@data_disk = args[:data_disk] if args.key?(:data_disk)
|
2634
|
+
@encryption_config = args[:encryption_config] if args.key?(:encryption_config)
|
2635
|
+
@guest_attributes = args[:guest_attributes] if args.key?(:guest_attributes)
|
2636
|
+
@internal_ip_only = args[:internal_ip_only] if args.key?(:internal_ip_only)
|
2637
|
+
@labels = args[:labels] if args.key?(:labels)
|
2638
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
2639
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
2640
|
+
@network = args[:network] if args.key?(:network)
|
2641
|
+
@shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
|
2642
|
+
@subnet = args[:subnet] if args.key?(:subnet)
|
2643
|
+
@tags = args[:tags] if args.key?(:tags)
|
2644
|
+
@zone = args[:zone] if args.key?(:zone)
|
2645
|
+
end
|
2646
|
+
end
|
2647
|
+
|
1890
2648
|
# Definition of a custom Compute Engine virtual machine image for starting a
|
1891
2649
|
# notebook instance with the environment installed directly on the VM.
|
1892
2650
|
class VmImage
|