diff --git a/mmv1/products/colab/NotebookExecution.yaml b/mmv1/products/colab/NotebookExecution.yaml index 6e832a2bd97c..e26c1e6888fa 100644 --- a/mmv1/products/colab/NotebookExecution.yaml +++ b/mmv1/products/colab/NotebookExecution.yaml @@ -24,6 +24,8 @@ base_url: 'projects/{{project}}/locations/{{location}}/notebookExecutionJobs' self_link: 'projects/{{project}}/locations/{{location}}/notebookExecutionJobs/{{notebook_execution_job_id}}' immutable: true create_url: 'projects/{{project}}/locations/{{location}}/notebookExecutionJobs?notebook_execution_job_id={{notebook_execution_job_id}}' +timeouts: + insert_minutes: 60 async: type: 'OpAsync' operation: @@ -70,6 +72,11 @@ samples: test_env_vars: project_id: 'PROJECT_NAME' service_account: 'SERVICE_ACCT' + # Vertex AI GetNotebookExecutionJob API does not return workbenchRuntime in read responses. + ignore_read_extra: + - workbench_runtime.0.vm_image.0.project + - workbench_runtime.0.vm_image.0.family + - workbench_runtime.0.vm_image.0.name - name: 'colab_notebook_execution_dataform' min_version: beta primary_resource_id: 'notebook-execution' @@ -229,3 +236,33 @@ properties: - execution_user - service_account description: 'The service account to run the execution as.' + - name: 'workbenchRuntime' + type: NestedObject + # Vertex AI GetNotebookExecutionJob API does not return workbenchRuntime in read responses. + ignore_read: true + description: 'Configuration for a Workbench Instances-based environment.' + properties: + - name: 'vmImage' + type: NestedObject + description: | + Definition of a custom Compute Engine virtual machine image for starting + a notebook execution with the environment installed directly on the VM. + properties: + - name: 'project' + type: String + required: true + description: | + The name of the Google Cloud project that this VM image belongs to. + Format: `{project_id}` + - name: 'name' + type: String + description: 'Use this VM image name to find the image.' + exactly_one_of: + - workbench_runtime.0.vm_image.0.name + - workbench_runtime.0.vm_image.0.family + - name: 'family' + type: String + description: 'Use this VM image family to find the image; the newest image in this family will be used.' + exactly_one_of: + - workbench_runtime.0.vm_image.0.name + - workbench_runtime.0.vm_image.0.family diff --git a/mmv1/templates/terraform/samples/services/colab/colab_notebook_execution_full.tf.tmpl b/mmv1/templates/terraform/samples/services/colab/colab_notebook_execution_full.tf.tmpl index 249fd6da7a74..87c089c6517d 100644 --- a/mmv1/templates/terraform/samples/services/colab/colab_notebook_execution_full.tf.tmpl +++ b/mmv1/templates/terraform/samples/services/colab/colab_notebook_execution_full.tf.tmpl @@ -80,6 +80,13 @@ resource "google_colab_notebook_execution" "{{$.PrimaryResourceId}}" { gcs_output_uri = "gs://${google_storage_bucket.output_bucket.name}" notebook_runtime_template_resource_name = "projects/${google_colab_runtime_template.my_runtime_template.project}/locations/${google_colab_runtime_template.my_runtime_template.location}/notebookRuntimeTemplates/${google_colab_runtime_template.my_runtime_template.name}" + workbench_runtime { + vm_image { + project = "cloud-notebooks-managed" + family = "workbench-instances-2603" + } + } + depends_on = [ google_storage_bucket_object.notebook, google_storage_bucket.output_bucket,