google-apis-notebooks_v1 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d715939660548e01f218d1cbca1bdf42eb266bc814ab09577b3b4b50076807fb
4
- data.tar.gz: 34240a2a09cd38dd0d1c2226ea66821937611a303a6b00f9cf8986b23c10f08e
3
+ metadata.gz: b8fc74b68104ea029c2d514077e62c454f40cf77408a307906c635346e939adb
4
+ data.tar.gz: 8801f3a94bfdf9986656940c925d9e49dda65195d611c88e0e8ca85d3b6ed02f
5
5
  SHA512:
6
- metadata.gz: 913a8b6204265d42ae034d3b336ed60b552d24c398e953b3c870bc711d175ea4f0718e00f077b83fce54ca92fdc8aceb7bd4111a0cedd74226d68fcd322b3c20
7
- data.tar.gz: 82eccc959d6c1766951d774b253f29f0b9ef8b1b986ef56ff1921b717b4c205611eb69891dcfe1f696adc898d44e3db81de8a23ef11a08b101efe7f3fde87383
6
+ metadata.gz: 1f8c0c93880beb4f8124b67f9ee4494d4dcc62cb1e52eeba583f7653008c22a7363b099049795a2e4b1418a102e7bc03a629dc52e126767758db690d53df415a
7
+ data.tar.gz: e6cdaf71ccf44a749d0ca684fea7e457a3213a3bfbc401e3ef3966711f5f66ac8ae19d5eeb43000042755558a657e4a464b33688691ae277e37d22e9c7a5ba5e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-notebooks_v1
2
2
 
3
+ ### v0.6.0 (2021-03-31)
4
+
5
+ * Regenerated from discovery document revision 20210323
6
+
3
7
  ### v0.5.0 (2021-03-12)
4
8
 
5
9
  * Regenerated from discovery document revision 20210305
@@ -29,7 +29,7 @@ module Google
29
29
  # This is NOT the gem version.
30
30
  VERSION = 'V1'
31
31
 
32
- # View and manage your data across Google Cloud Platform services
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