From afe1b7d40f81b8260e1dc6da2f359d3991973bf9 Mon Sep 17 00:00:00 2001 From: "Chang, Hui-Tang" Date: Mon, 24 Jun 2024 20:36:34 +0800 Subject: [PATCH] feat(vdp): expose `raw_recipe` field in pipeline endpoint (#373) Because - We are going to support pipeline recipes in YAML format. We will return the recipe in YAML format in the response and also allow users to create/update recipes using YAML format. This commit - Exposes the `raw_recipe` field in the pipeline and pipeline_release messages. --- openapiv2/vdp/service.swagger.yaml | 30 ++++++++++++++++++++++++++++++ vdp/pipeline/v1beta/pipeline.proto | 6 ++++++ 2 files changed, 36 insertions(+) diff --git a/openapiv2/vdp/service.swagger.yaml b/openapiv2/vdp/service.swagger.yaml index 2966de5e..f4fc3e54 100644 --- a/openapiv2/vdp/service.swagger.yaml +++ b/openapiv2/vdp/service.swagger.yaml @@ -493,6 +493,11 @@ paths: stats: $ref: '#/definitions/PipelineStats' description: Statistic data. + rawRecipe: + type: string + description: |- + Recipe in YAML format describes the components of a pipeline and how they + are connected. title: The pipeline fields that will replace the existing ones. tags: - Pipeline @@ -1020,6 +1025,11 @@ paths: $ref: '#/definitions/v1betaDataSpecification' description: Data specifications. readOnly: true + rawRecipe: + type: string + description: |- + Recipe in YAML format describes the components of a pipeline and how they + are connected. title: |- The pipeline release fields that will replace the existing ones. A pipeline release resource to update @@ -1501,6 +1511,11 @@ paths: stats: $ref: '#/definitions/PipelineStats' description: Statistic data. + rawRecipe: + type: string + description: |- + Recipe in YAML format describes the components of a pipeline and how they + are connected. title: The pipeline fields that will replace the existing ones. tags: - Pipeline @@ -2022,6 +2037,11 @@ paths: $ref: '#/definitions/v1betaDataSpecification' description: Data specifications. readOnly: true + rawRecipe: + type: string + description: |- + Recipe in YAML format describes the components of a pipeline and how they + are connected. title: |- The pipeline release fields that will replace the existing ones. A pipeline release resource to update @@ -4482,6 +4502,11 @@ definitions: stats: $ref: '#/definitions/PipelineStats' description: Statistic data. + rawRecipe: + type: string + description: |- + Recipe in YAML format describes the components of a pipeline and how they + are connected. description: |- A Pipeline is an end-to-end workflow that automates a sequence of components to process data. @@ -4545,6 +4570,11 @@ definitions: $ref: '#/definitions/v1betaDataSpecification' description: Data specifications. readOnly: true + rawRecipe: + type: string + description: |- + Recipe in YAML format describes the components of a pipeline and how they + are connected. description: |- Pipeline releases contain the version control information of a pipeline. This allows users to track changes in the pipeline over time. diff --git a/vdp/pipeline/v1beta/pipeline.proto b/vdp/pipeline/v1beta/pipeline.proto index 3b292720..ef8eb59c 100644 --- a/vdp/pipeline/v1beta/pipeline.proto +++ b/vdp/pipeline/v1beta/pipeline.proto @@ -153,6 +153,9 @@ message Pipeline { repeated string tags = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; // Statistic data. Stats stats = 26; + // Recipe in YAML format describes the components of a pipeline and how they + // are connected. + string raw_recipe = 27 [(google.api.field_behavior) = OPTIONAL]; } // TriggerMetadata contains the traces of the pipeline inference. @@ -240,6 +243,9 @@ message PipelineRelease { string readme = 13 [(google.api.field_behavior) = OPTIONAL]; // Data specifications. DataSpecification data_specification = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Recipe in YAML format describes the components of a pipeline and how they + // are connected. + string raw_recipe = 15 [(google.api.field_behavior) = OPTIONAL]; } // ListPipelinesRequest represents a request to list pipelines.