From f0b6e5cf2deedd8eda23bde628fea05cb2af2b52 Mon Sep 17 00:00:00 2001 From: psureshk Date: Thu, 26 Sep 2024 15:13:48 -0400 Subject: [PATCH] update/workspace.v1: Add StudioBuildDetails type in WorkspaceBuild StudioBuildDetails is a placeholder for per studio validation results that are not related to a device. It internally uses InputValidationResult type to keep track of errors. InputValidationResult is being extended to include fields for warnings. Change-Id: I667d5d9d8037b59c6b022de0b27d4cd8f6a1bd5c --- arista/workspace.v1/services.gen.swagger.json | 18 ++++++++++++++++++ arista/workspace.v1/workspace-changelog.yaml | 4 ++++ arista/workspace.v1/workspace.proto | 10 ++++++++++ 3 files changed, 32 insertions(+) diff --git a/arista/workspace.v1/services.gen.swagger.json b/arista/workspace.v1/services.gen.swagger.json index b545403..fb6453b 100644 --- a/arista/workspace.v1/services.gen.swagger.json +++ b/arista/workspace.v1/services.gen.swagger.json @@ -3386,6 +3386,10 @@ "otherErrors": { "$ref": "#/definitions/fmp.RepeatedString", "description": "other_errors are other miscellaneous errors." + }, + "inputValueWarnings": { + "$ref": "#/definitions/arista.workspace.v1.InputErrors", + "description": "input_value_warnings are warnings for values assigned to fields in the input schema." } }, "description": "InputValidationResult holds the result of an input validation build stage." @@ -3498,6 +3502,16 @@ }, "description": "Responses is a collection of responses for completed requests." }, + "arista.workspace.v1.StudioBuildDetails": { + "type": "object", + "properties": { + "inputValidationResults": { + "$ref": "#/definitions/arista.workspace.v1.InputValidationResults", + "description": "input_validation_results is a map from studio ID to InputValidationResult." + } + }, + "description": "StudioBuildDetails is a collection of per studio results that are not specific to a device." + }, "arista.workspace.v1.SyncOperation": { "type": "string", "enum": [ @@ -3644,6 +3658,10 @@ "authzResult": { "$ref": "#/definitions/arista.workspace.v1.AuthzResult", "description": "authz_result has the result of authorization check." + }, + "studioBuildDetails": { + "$ref": "#/definitions/arista.workspace.v1.StudioBuildDetails", + "description": "studio_build_details has per studio results that are not specific to a device." } }, "description": "WorkspaceBuild holds the details for a build of a workspace." diff --git a/arista/workspace.v1/workspace-changelog.yaml b/arista/workspace.v1/workspace-changelog.yaml index a082f27..9625040 100644 --- a/arista/workspace.v1/workspace-changelog.yaml +++ b/arista/workspace.v1/workspace-changelog.yaml @@ -7,6 +7,10 @@ # New entries go on top. Changes: + - date: 2024-10-04 + description: Add per studio results for non devices to WorkspaceBuild + version: 1.3.10 + cvaas: true - date: 2024-09-20 description: Add device decommissioned skip cause to ImageValidation version: 1.3.9 diff --git a/arista/workspace.v1/workspace.proto b/arista/workspace.v1/workspace.proto index 84d852b..e10c6e8 100644 --- a/arista/workspace.v1/workspace.proto +++ b/arista/workspace.v1/workspace.proto @@ -268,6 +268,8 @@ message InputValidationResult { InputErrors input_value_errors = 2; // other_errors are other miscellaneous errors. fmp.RepeatedString other_errors = 3; + // input_value_warnings are warnings for values assigned to fields in the input schema. + InputErrors input_value_warnings = 4; } // InputValidationResults is a collection of InputValidationResult (one per studio). @@ -398,6 +400,12 @@ message WorkspaceBuildKey { google.protobuf.StringValue build_id = 2; } +// StudioBuildDetails is a collection of per studio results that are not specific to a device. +message StudioBuildDetails{ + // input_validation_results is a map from studio ID to InputValidationResult. + InputValidationResults input_validation_results = 1; +} + // WorkspaceBuild holds the details for a build of a workspace. message WorkspaceBuild { option (fmp.model) = "ro"; @@ -414,6 +422,8 @@ message WorkspaceBuild { google.protobuf.StringValue built_by = 5; // authz_result has the result of authorization check. AuthzResult authz_result = 6; + // studio_build_details has per studio results that are not specific to a device. + StudioBuildDetails studio_build_details = 7; } // WorkspaceBuildDetailsKey uniquely identifies a build for a particular