google-cloud-notebooks-v2 0.a → 0.2.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.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/notebooks/v2/bindings_override.rb +135 -0
  6. data/lib/google/cloud/notebooks/v2/diagnostic_config_pb.rb +44 -0
  7. data/lib/google/cloud/notebooks/v2/event_pb.rb +47 -0
  8. data/lib/google/cloud/notebooks/v2/gce_setup_pb.rb +57 -0
  9. data/lib/google/cloud/notebooks/v2/instance_pb.rb +54 -0
  10. data/lib/google/cloud/notebooks/v2/notebook_service/client.rb +1591 -0
  11. data/lib/google/cloud/notebooks/v2/notebook_service/credentials.rb +47 -0
  12. data/lib/google/cloud/notebooks/v2/notebook_service/operations.rb +779 -0
  13. data/lib/google/cloud/notebooks/v2/notebook_service/paths.rb +69 -0
  14. data/lib/google/cloud/notebooks/v2/notebook_service/rest/client.rb +1486 -0
  15. data/lib/google/cloud/notebooks/v2/notebook_service/rest/operations.rb +870 -0
  16. data/lib/google/cloud/notebooks/v2/notebook_service/rest/service_stub.rb +764 -0
  17. data/lib/google/cloud/notebooks/v2/notebook_service/rest.rb +54 -0
  18. data/lib/google/cloud/notebooks/v2/notebook_service.rb +56 -0
  19. data/lib/google/cloud/notebooks/v2/rest.rb +38 -0
  20. data/lib/google/cloud/notebooks/v2/service_pb.rb +71 -0
  21. data/lib/google/cloud/notebooks/v2/service_services_pb.rb +67 -0
  22. data/lib/google/cloud/notebooks/v2/version.rb +7 -2
  23. data/lib/google/cloud/notebooks/v2.rb +45 -0
  24. data/lib/google-cloud-notebooks-v2.rb +21 -0
  25. data/proto_docs/README.md +4 -0
  26. data/proto_docs/google/api/client.rb +381 -0
  27. data/proto_docs/google/api/field_behavior.rb +85 -0
  28. data/proto_docs/google/api/launch_stage.rb +71 -0
  29. data/proto_docs/google/api/resource.rb +222 -0
  30. data/proto_docs/google/cloud/notebooks/v2/diagnostic_config.rb +63 -0
  31. data/proto_docs/google/cloud/notebooks/v2/event.rb +79 -0
  32. data/proto_docs/google/cloud/notebooks/v2/gce_setup.rb +352 -0
  33. data/proto_docs/google/cloud/notebooks/v2/instance.rb +233 -0
  34. data/proto_docs/google/cloud/notebooks/v2/service.rb +263 -0
  35. data/proto_docs/google/longrunning/operations.rb +164 -0
  36. data/proto_docs/google/protobuf/any.rb +144 -0
  37. data/proto_docs/google/protobuf/duration.rb +98 -0
  38. data/proto_docs/google/protobuf/empty.rb +34 -0
  39. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  40. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  41. data/proto_docs/google/rpc/status.rb +48 -0
  42. data/proto_docs/google/type/expr.rb +75 -0
  43. metadata +237 -13
@@ -0,0 +1,352 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Notebooks
23
+ module V2
24
+ # The definition of a network interface resource attached to a VM.
25
+ # @!attribute [rw] network
26
+ # @return [::String]
27
+ # Optional. The name of the VPC that this VM instance is in.
28
+ # Format:
29
+ # `projects/{project_id}/global/networks/{network_id}`
30
+ # @!attribute [rw] subnet
31
+ # @return [::String]
32
+ # Optional. The name of the subnet that this VM instance is in.
33
+ # Format:
34
+ # `projects/{project_id}/regions/{region}/subnetworks/{subnetwork_id}`
35
+ # @!attribute [rw] nic_type
36
+ # @return [::Google::Cloud::Notebooks::V2::NetworkInterface::NicType]
37
+ # Optional. The type of vNIC to be used on this interface. This may be gVNIC
38
+ # or VirtioNet.
39
+ class NetworkInterface
40
+ include ::Google::Protobuf::MessageExts
41
+ extend ::Google::Protobuf::MessageExts::ClassMethods
42
+
43
+ # The type of vNIC driver.
44
+ # Default should be NIC_TYPE_UNSPECIFIED.
45
+ module NicType
46
+ # No type specified.
47
+ NIC_TYPE_UNSPECIFIED = 0
48
+
49
+ # VIRTIO
50
+ VIRTIO_NET = 1
51
+
52
+ # GVNIC
53
+ GVNIC = 2
54
+ end
55
+ end
56
+
57
+ # Definition of a custom Compute Engine virtual machine image for starting a
58
+ # notebook instance with the environment installed directly on the VM.
59
+ # @!attribute [rw] project
60
+ # @return [::String]
61
+ # Required. The name of the Google Cloud project that this VM image belongs
62
+ # to. Format: `{project_id}`
63
+ # @!attribute [rw] name
64
+ # @return [::String]
65
+ # Optional. Use VM image name to find the image.
66
+ # @!attribute [rw] family
67
+ # @return [::String]
68
+ # Optional. Use this VM image family to find the image; the newest image in
69
+ # this family will be used.
70
+ class VmImage
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # Definition of a container image for starting a notebook instance with the
76
+ # environment installed in a container.
77
+ # @!attribute [rw] repository
78
+ # @return [::String]
79
+ # Required. The path to the container image repository. For example:
80
+ # `gcr.io/{project_id}/{image_name}`
81
+ # @!attribute [rw] tag
82
+ # @return [::String]
83
+ # Optional. The tag of the container image. If not specified, this defaults
84
+ # to the latest tag.
85
+ class ContainerImage
86
+ include ::Google::Protobuf::MessageExts
87
+ extend ::Google::Protobuf::MessageExts::ClassMethods
88
+ end
89
+
90
+ # An accelerator configuration for a VM instance
91
+ # Definition of a hardware accelerator. Note that there is no check on `type`
92
+ # and `core_count` combinations. TPUs are not supported.
93
+ # See [GPUs on Compute
94
+ # Engine](https://cloud.google.com/compute/docs/gpus/#gpus-list) to find a
95
+ # valid combination.
96
+ # @!attribute [rw] type
97
+ # @return [::Google::Cloud::Notebooks::V2::AcceleratorConfig::AcceleratorType]
98
+ # Optional. Type of this accelerator.
99
+ # @!attribute [rw] core_count
100
+ # @return [::Integer]
101
+ # Optional. Count of cores of this accelerator.
102
+ class AcceleratorConfig
103
+ include ::Google::Protobuf::MessageExts
104
+ extend ::Google::Protobuf::MessageExts::ClassMethods
105
+
106
+ # Definition of the types of hardware accelerators that can be used on
107
+ # this instance.
108
+ module AcceleratorType
109
+ # Accelerator type is not specified.
110
+ ACCELERATOR_TYPE_UNSPECIFIED = 0
111
+
112
+ # Accelerator type is Nvidia Tesla P100.
113
+ NVIDIA_TESLA_P100 = 2
114
+
115
+ # Accelerator type is Nvidia Tesla V100.
116
+ NVIDIA_TESLA_V100 = 3
117
+
118
+ # Accelerator type is Nvidia Tesla P4.
119
+ NVIDIA_TESLA_P4 = 4
120
+
121
+ # Accelerator type is Nvidia Tesla T4.
122
+ NVIDIA_TESLA_T4 = 5
123
+
124
+ # Accelerator type is Nvidia Tesla A100 - 40GB.
125
+ NVIDIA_TESLA_A100 = 11
126
+
127
+ # Accelerator type is Nvidia Tesla A100 - 80GB.
128
+ NVIDIA_A100_80GB = 12
129
+
130
+ # Accelerator type is Nvidia Tesla L4.
131
+ NVIDIA_L4 = 13
132
+
133
+ # Accelerator type is NVIDIA Tesla T4 Virtual Workstations.
134
+ NVIDIA_TESLA_T4_VWS = 8
135
+
136
+ # Accelerator type is NVIDIA Tesla P100 Virtual Workstations.
137
+ NVIDIA_TESLA_P100_VWS = 9
138
+
139
+ # Accelerator type is NVIDIA Tesla P4 Virtual Workstations.
140
+ NVIDIA_TESLA_P4_VWS = 10
141
+ end
142
+ end
143
+
144
+ # A set of Shielded Instance options.
145
+ # See [Images using supported Shielded VM
146
+ # features](https://cloud.google.com/compute/docs/instances/modifying-shielded-vm).
147
+ # Not all combinations are valid.
148
+ # @!attribute [rw] enable_secure_boot
149
+ # @return [::Boolean]
150
+ # Optional. Defines whether the VM instance has Secure Boot enabled.
151
+ #
152
+ # Secure Boot helps ensure that the system only runs authentic software by
153
+ # verifying the digital signature of all boot components, and halting the
154
+ # boot process if signature verification fails. Disabled by default.
155
+ # @!attribute [rw] enable_vtpm
156
+ # @return [::Boolean]
157
+ # Optional. Defines whether the VM instance has the vTPM enabled. Enabled by
158
+ # default.
159
+ # @!attribute [rw] enable_integrity_monitoring
160
+ # @return [::Boolean]
161
+ # Optional. Defines whether the VM instance has integrity monitoring enabled.
162
+ #
163
+ # Enables monitoring and attestation of the boot integrity of the VM
164
+ # instance. The attestation is performed against the integrity policy
165
+ # baseline. This baseline is initially derived from the implicitly trusted
166
+ # boot image when the VM instance is created. Enabled by default.
167
+ class ShieldedInstanceConfig
168
+ include ::Google::Protobuf::MessageExts
169
+ extend ::Google::Protobuf::MessageExts::ClassMethods
170
+ end
171
+
172
+ # A GPU driver configuration
173
+ # @!attribute [rw] enable_gpu_driver
174
+ # @return [::Boolean]
175
+ # Optional. Whether the end user authorizes Google Cloud to install GPU
176
+ # driver on this VM instance. If this field is empty or set to false, the GPU
177
+ # driver won't be installed. Only applicable to instances with GPUs.
178
+ # @!attribute [rw] custom_gpu_driver_path
179
+ # @return [::String]
180
+ # Optional. Specify a custom Cloud Storage path where the GPU driver is
181
+ # stored. If not specified, we'll automatically choose from official GPU
182
+ # drivers.
183
+ class GPUDriverConfig
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
187
+
188
+ # An instance-attached disk resource.
189
+ # @!attribute [rw] disk_size_gb
190
+ # @return [::Integer]
191
+ # Optional. The size of the disk in GB attached to this VM instance, up to a
192
+ # maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
193
+ # @!attribute [rw] disk_type
194
+ # @return [::Google::Cloud::Notebooks::V2::DiskType]
195
+ # Optional. Input only. Indicates the type of the disk.
196
+ # @!attribute [rw] disk_encryption
197
+ # @return [::Google::Cloud::Notebooks::V2::DiskEncryption]
198
+ # Optional. Input only. Disk encryption method used on the boot and data
199
+ # disks, defaults to GMEK.
200
+ # @!attribute [rw] kms_key
201
+ # @return [::String]
202
+ # Optional. Input only. The KMS key used to encrypt the disks, only
203
+ # applicable if disk_encryption is CMEK. Format:
204
+ # `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
205
+ #
206
+ # Learn more about using your own encryption keys.
207
+ class DataDisk
208
+ include ::Google::Protobuf::MessageExts
209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
210
+ end
211
+
212
+ # The definition of a boot disk.
213
+ # @!attribute [rw] disk_size_gb
214
+ # @return [::Integer]
215
+ # Optional. The size of the boot disk in GB attached to this instance, up to
216
+ # a maximum of 64000 GB (64 TB). If not specified, this defaults to the
217
+ # recommended value of 150GB.
218
+ # @!attribute [rw] disk_type
219
+ # @return [::Google::Cloud::Notebooks::V2::DiskType]
220
+ # Optional. Indicates the type of the disk.
221
+ # @!attribute [rw] disk_encryption
222
+ # @return [::Google::Cloud::Notebooks::V2::DiskEncryption]
223
+ # Optional. Input only. Disk encryption method used on the boot and data
224
+ # disks, defaults to GMEK.
225
+ # @!attribute [rw] kms_key
226
+ # @return [::String]
227
+ # Optional. Input only. The KMS key used to encrypt the disks, only
228
+ # applicable if disk_encryption is CMEK. Format:
229
+ # `projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}`
230
+ #
231
+ # Learn more about using your own encryption keys.
232
+ class BootDisk
233
+ include ::Google::Protobuf::MessageExts
234
+ extend ::Google::Protobuf::MessageExts::ClassMethods
235
+ end
236
+
237
+ # A service account that acts as an identity.
238
+ # @!attribute [rw] email
239
+ # @return [::String]
240
+ # Optional. Email address of the service account.
241
+ # @!attribute [r] scopes
242
+ # @return [::Array<::String>]
243
+ # Output only. The list of scopes to be made available for this service
244
+ # account. Set by the CLH to https://www.googleapis.com/auth/cloud-platform
245
+ class ServiceAccount
246
+ include ::Google::Protobuf::MessageExts
247
+ extend ::Google::Protobuf::MessageExts::ClassMethods
248
+ end
249
+
250
+ # The definition of how to configure a VM instance outside of Resources and
251
+ # Identity.
252
+ # @!attribute [rw] machine_type
253
+ # @return [::String]
254
+ # Optional. The machine type of the VM instance.
255
+ # https://cloud.google.com/compute/docs/machine-resource
256
+ # @!attribute [rw] accelerator_configs
257
+ # @return [::Array<::Google::Cloud::Notebooks::V2::AcceleratorConfig>]
258
+ # Optional. The hardware accelerators used on this instance. If you use
259
+ # accelerators, make sure that your configuration has
260
+ # [enough vCPUs and memory to support the `machine_type` you have
261
+ # selected](https://cloud.google.com/compute/docs/gpus/#gpus-list).
262
+ # Currently supports only one accelerator configuration.
263
+ # @!attribute [rw] service_accounts
264
+ # @return [::Array<::Google::Cloud::Notebooks::V2::ServiceAccount>]
265
+ # Optional. The service account that serves as an identity for the VM
266
+ # instance. Currently supports only one service account.
267
+ # @!attribute [rw] vm_image
268
+ # @return [::Google::Cloud::Notebooks::V2::VmImage]
269
+ # Optional. Use a Compute Engine VM image to start the notebook instance.
270
+ # @!attribute [rw] container_image
271
+ # @return [::Google::Cloud::Notebooks::V2::ContainerImage]
272
+ # Optional. Use a container image to start the notebook instance.
273
+ # @!attribute [rw] boot_disk
274
+ # @return [::Google::Cloud::Notebooks::V2::BootDisk]
275
+ # Optional. The boot disk for the VM.
276
+ # @!attribute [rw] data_disks
277
+ # @return [::Array<::Google::Cloud::Notebooks::V2::DataDisk>]
278
+ # Optional. Data disks attached to the VM instance.
279
+ # Currently supports only one data disk.
280
+ # @!attribute [rw] shielded_instance_config
281
+ # @return [::Google::Cloud::Notebooks::V2::ShieldedInstanceConfig]
282
+ # Optional. Shielded VM configuration.
283
+ # [Images using supported Shielded VM
284
+ # features](https://cloud.google.com/compute/docs/instances/modifying-shielded-vm).
285
+ # @!attribute [rw] network_interfaces
286
+ # @return [::Array<::Google::Cloud::Notebooks::V2::NetworkInterface>]
287
+ # Optional. The network interfaces for the VM.
288
+ # Supports only one interface.
289
+ # @!attribute [rw] disable_public_ip
290
+ # @return [::Boolean]
291
+ # Optional. If true, no external IP will be assigned to this VM instance.
292
+ # @!attribute [rw] tags
293
+ # @return [::Array<::String>]
294
+ # Optional. The Compute Engine tags to add to runtime (see [Tagging
295
+ # instances](https://cloud.google.com/compute/docs/label-or-tag-resources#tags)).
296
+ # @!attribute [rw] metadata
297
+ # @return [::Google::Protobuf::Map{::String => ::String}]
298
+ # Optional. Custom metadata to apply to this instance.
299
+ # @!attribute [rw] enable_ip_forwarding
300
+ # @return [::Boolean]
301
+ # Optional. Flag to enable ip forwarding or not, default false/off.
302
+ # https://cloud.google.com/vpc/docs/using-routes#canipforward
303
+ # @!attribute [rw] gpu_driver_config
304
+ # @return [::Google::Cloud::Notebooks::V2::GPUDriverConfig]
305
+ # Optional. Configuration for GPU drivers.
306
+ class GceSetup
307
+ include ::Google::Protobuf::MessageExts
308
+ extend ::Google::Protobuf::MessageExts::ClassMethods
309
+
310
+ # @!attribute [rw] key
311
+ # @return [::String]
312
+ # @!attribute [rw] value
313
+ # @return [::String]
314
+ class MetadataEntry
315
+ include ::Google::Protobuf::MessageExts
316
+ extend ::Google::Protobuf::MessageExts::ClassMethods
317
+ end
318
+ end
319
+
320
+ # Definition of the disk encryption options.
321
+ module DiskEncryption
322
+ # Disk encryption is not specified.
323
+ DISK_ENCRYPTION_UNSPECIFIED = 0
324
+
325
+ # Use Google managed encryption keys to encrypt the boot disk.
326
+ GMEK = 1
327
+
328
+ # Use customer managed encryption keys to encrypt the boot disk.
329
+ CMEK = 2
330
+ end
331
+
332
+ # Possible disk types.
333
+ module DiskType
334
+ # Disk type not set.
335
+ DISK_TYPE_UNSPECIFIED = 0
336
+
337
+ # Standard persistent disk type.
338
+ PD_STANDARD = 1
339
+
340
+ # SSD persistent disk type.
341
+ PD_SSD = 2
342
+
343
+ # Balanced persistent disk type.
344
+ PD_BALANCED = 3
345
+
346
+ # Extreme persistent disk type.
347
+ PD_EXTREME = 4
348
+ end
349
+ end
350
+ end
351
+ end
352
+ end
@@ -0,0 +1,233 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Notebooks
23
+ module V2
24
+ # The entry of VM image upgrade history.
25
+ # @!attribute [rw] snapshot
26
+ # @return [::String]
27
+ # Optional. The snapshot of the boot disk of this notebook instance before
28
+ # upgrade.
29
+ # @!attribute [rw] vm_image
30
+ # @return [::String]
31
+ # Optional. The VM image before this instance upgrade.
32
+ # @!attribute [rw] container_image
33
+ # @return [::String]
34
+ # Optional. The container image before this instance upgrade.
35
+ # @!attribute [rw] framework
36
+ # @return [::String]
37
+ # Optional. The framework of this notebook instance.
38
+ # @!attribute [rw] version
39
+ # @return [::String]
40
+ # Optional. The version of the notebook instance before this upgrade.
41
+ # @!attribute [r] state
42
+ # @return [::Google::Cloud::Notebooks::V2::UpgradeHistoryEntry::State]
43
+ # Output only. The state of this instance upgrade history entry.
44
+ # @!attribute [rw] create_time
45
+ # @return [::Google::Protobuf::Timestamp]
46
+ # Immutable. The time that this instance upgrade history entry is created.
47
+ # @!attribute [rw] action
48
+ # @return [::Google::Cloud::Notebooks::V2::UpgradeHistoryEntry::Action]
49
+ # Optional. Action. Rolloback or Upgrade.
50
+ # @!attribute [rw] target_version
51
+ # @return [::String]
52
+ # Optional. Target VM Version, like m63.
53
+ class UpgradeHistoryEntry
54
+ include ::Google::Protobuf::MessageExts
55
+ extend ::Google::Protobuf::MessageExts::ClassMethods
56
+
57
+ # The definition of the states of this upgrade history entry.
58
+ module State
59
+ # State is not specified.
60
+ STATE_UNSPECIFIED = 0
61
+
62
+ # The instance upgrade is started.
63
+ STARTED = 1
64
+
65
+ # The instance upgrade is succeeded.
66
+ SUCCEEDED = 2
67
+
68
+ # The instance upgrade is failed.
69
+ FAILED = 3
70
+ end
71
+
72
+ # The definition of operations of this upgrade history entry.
73
+ module Action
74
+ # Operation is not specified.
75
+ ACTION_UNSPECIFIED = 0
76
+
77
+ # Upgrade.
78
+ UPGRADE = 1
79
+
80
+ # Rollback.
81
+ ROLLBACK = 2
82
+ end
83
+ end
84
+
85
+ # The definition of a notebook instance.
86
+ # @!attribute [r] name
87
+ # @return [::String]
88
+ # Output only. The name of this notebook instance. Format:
89
+ # `projects/{project_id}/locations/{location}/instances/{instance_id}`
90
+ # @!attribute [rw] gce_setup
91
+ # @return [::Google::Cloud::Notebooks::V2::GceSetup]
92
+ # Optional. Compute Engine setup for the notebook. Uses notebook-defined
93
+ # fields.
94
+ # @!attribute [r] proxy_uri
95
+ # @return [::String]
96
+ # Output only. The proxy endpoint that is used to access the Jupyter
97
+ # notebook.
98
+ # @!attribute [rw] instance_owners
99
+ # @return [::Array<::String>]
100
+ # Optional. Input only. The owner of this instance after creation. Format:
101
+ # `alias@example.com`
102
+ #
103
+ # Currently supports one owner only. If not specified, all of the service
104
+ # account users of your VM instance's service account can use
105
+ # the instance.
106
+ # @!attribute [r] creator
107
+ # @return [::String]
108
+ # Output only. Email address of entity that sent original CreateInstance
109
+ # request.
110
+ # @!attribute [r] state
111
+ # @return [::Google::Cloud::Notebooks::V2::State]
112
+ # Output only. The state of this instance.
113
+ # @!attribute [r] upgrade_history
114
+ # @return [::Array<::Google::Cloud::Notebooks::V2::UpgradeHistoryEntry>]
115
+ # Output only. The upgrade history of this instance.
116
+ # @!attribute [r] id
117
+ # @return [::String]
118
+ # Output only. Unique ID of the resource.
119
+ # @!attribute [r] health_state
120
+ # @return [::Google::Cloud::Notebooks::V2::HealthState]
121
+ # Output only. Instance health_state.
122
+ # @!attribute [r] health_info
123
+ # @return [::Google::Protobuf::Map{::String => ::String}]
124
+ # Output only. Additional information about instance health.
125
+ # Example:
126
+ #
127
+ # healthInfo": {
128
+ # "docker_proxy_agent_status": "1",
129
+ # "docker_status": "1",
130
+ # "jupyterlab_api_status": "-1",
131
+ # "jupyterlab_status": "-1",
132
+ # "updated": "2020-10-18 09:40:03.573409"
133
+ # }
134
+ # @!attribute [r] create_time
135
+ # @return [::Google::Protobuf::Timestamp]
136
+ # Output only. Instance creation time.
137
+ # @!attribute [r] update_time
138
+ # @return [::Google::Protobuf::Timestamp]
139
+ # Output only. Instance update time.
140
+ # @!attribute [rw] disable_proxy_access
141
+ # @return [::Boolean]
142
+ # Optional. If true, the notebook instance will not register with the proxy.
143
+ # @!attribute [rw] labels
144
+ # @return [::Google::Protobuf::Map{::String => ::String}]
145
+ # Optional. Labels to apply to this instance.
146
+ # These can be later modified by the UpdateInstance method.
147
+ class Instance
148
+ include ::Google::Protobuf::MessageExts
149
+ extend ::Google::Protobuf::MessageExts::ClassMethods
150
+
151
+ # @!attribute [rw] key
152
+ # @return [::String]
153
+ # @!attribute [rw] value
154
+ # @return [::String]
155
+ class HealthInfoEntry
156
+ include ::Google::Protobuf::MessageExts
157
+ extend ::Google::Protobuf::MessageExts::ClassMethods
158
+ end
159
+
160
+ # @!attribute [rw] key
161
+ # @return [::String]
162
+ # @!attribute [rw] value
163
+ # @return [::String]
164
+ class LabelsEntry
165
+ include ::Google::Protobuf::MessageExts
166
+ extend ::Google::Protobuf::MessageExts::ClassMethods
167
+ end
168
+ end
169
+
170
+ # The definition of the states of this instance.
171
+ module State
172
+ # State is not specified.
173
+ STATE_UNSPECIFIED = 0
174
+
175
+ # The control logic is starting the instance.
176
+ STARTING = 1
177
+
178
+ # The control logic is installing required frameworks and registering the
179
+ # instance with notebook proxy
180
+ PROVISIONING = 2
181
+
182
+ # The instance is running.
183
+ ACTIVE = 3
184
+
185
+ # The control logic is stopping the instance.
186
+ STOPPING = 4
187
+
188
+ # The instance is stopped.
189
+ STOPPED = 5
190
+
191
+ # The instance is deleted.
192
+ DELETED = 6
193
+
194
+ # The instance is upgrading.
195
+ UPGRADING = 7
196
+
197
+ # The instance is being created.
198
+ INITIALIZING = 8
199
+
200
+ # The instance is suspending.
201
+ SUSPENDING = 9
202
+
203
+ # The instance is suspended.
204
+ SUSPENDED = 10
205
+ end
206
+
207
+ # The instance health state.
208
+ module HealthState
209
+ # The instance substate is unknown.
210
+ HEALTH_STATE_UNSPECIFIED = 0
211
+
212
+ # The instance is known to be in an healthy state
213
+ # (for example, critical daemons are running)
214
+ # Applies to ACTIVE state.
215
+ HEALTHY = 1
216
+
217
+ # The instance is known to be in an unhealthy state
218
+ # (for example, critical daemons are not running)
219
+ # Applies to ACTIVE state.
220
+ UNHEALTHY = 2
221
+
222
+ # The instance has not installed health monitoring agent.
223
+ # Applies to ACTIVE state.
224
+ AGENT_NOT_INSTALLED = 3
225
+
226
+ # The instance health monitoring agent is not running.
227
+ # Applies to ACTIVE state.
228
+ AGENT_NOT_RUNNING = 4
229
+ end
230
+ end
231
+ end
232
+ end
233
+ end