@@ -20,6 +20,8 @@ const WorkerDeploymentUnversioned = "__unversioned__"
2020// A reserved separator for Worker Deployment Versions.
2121const WorkerDeploymentVersionSeparator = "."
2222
23+ var errBuildIdCantBeEmpty = fmt .Errorf ("BuildID cannot be empty" )
24+
2325// safeAsTime ensures that a nil proto timestamp makes `IsZero()` true.
2426func safeAsTime (timestamp * timestamppb.Timestamp ) time.Time {
2527 if timestamp == nil {
@@ -156,14 +158,6 @@ func (h *workerDeploymentHandleImpl) validate() error {
156158 return nil
157159}
158160
159- func (h * workerDeploymentHandleImpl ) validateBuildID (buildId string , noUnversioned bool ) error {
160- if (buildId == "" ) && noUnversioned {
161- return fmt .Errorf ("BuildID cannot be empty" )
162- }
163-
164- return nil
165- }
166-
167161func (h * workerDeploymentHandleImpl ) buildIdToVersionStr (buildId string ) string {
168162 if buildId == "" {
169163 return WorkerDeploymentUnversioned
@@ -326,8 +320,8 @@ func (h *workerDeploymentHandleImpl) DescribeVersion(ctx context.Context, option
326320 if err := h .validate (); err != nil {
327321 return WorkerDeploymentVersionDescription {}, err
328322 }
329- if err := h . validateBuildID ( options .BuildID , true ); err != nil {
330- return WorkerDeploymentVersionDescription {}, err
323+ if options .BuildID == "" {
324+ return WorkerDeploymentVersionDescription {}, errBuildIdCantBeEmpty
331325 }
332326 if err := h .workflowClient .ensureInitialized (ctx ); err != nil {
333327 return WorkerDeploymentVersionDescription {}, err
@@ -358,8 +352,8 @@ func (h *workerDeploymentHandleImpl) DeleteVersion(ctx context.Context, options
358352 if err := h .validate (); err != nil {
359353 return WorkerDeploymentDeleteVersionResponse {}, err
360354 }
361- if err := h . validateBuildID ( options .BuildID , true ); err != nil {
362- return WorkerDeploymentDeleteVersionResponse {}, err
355+ if options .BuildID == "" {
356+ return WorkerDeploymentDeleteVersionResponse {}, errBuildIdCantBeEmpty
363357 }
364358 if err := h .workflowClient .ensureInitialized (ctx ); err != nil {
365359 return WorkerDeploymentDeleteVersionResponse {}, err
@@ -417,18 +411,19 @@ func (h *workerDeploymentHandleImpl) UpdateVersionMetadata(ctx context.Context,
417411 if err := h .validate (); err != nil {
418412 return WorkerDeploymentUpdateVersionMetadataResponse {}, err
419413 }
420- if err := h . validateBuildID ( options .Version , true ); err != nil {
421- return WorkerDeploymentUpdateVersionMetadataResponse {}, err
414+ if options .Version . BuildId == "" {
415+ return WorkerDeploymentUpdateVersionMetadataResponse {}, errBuildIdCantBeEmpty
422416 }
423417 if err := h .workflowClient .ensureInitialized (ctx ); err != nil {
424418 return WorkerDeploymentUpdateVersionMetadataResponse {}, err
425419 }
426420
427421 request := & workflowservice.UpdateWorkerDeploymentVersionMetadataRequest {
428- Namespace : h .workflowClient .namespace ,
429- Version : options .Version ,
430- UpsertEntries : workerDeploymentUpsertEntriesMetadataToProto (h .workflowClient .dataConverter , options .MetadataUpdate ),
431- RemoveEntries : options .MetadataUpdate .RemoveEntries ,
422+ Namespace : h .workflowClient .namespace ,
423+ Version : options .Version .toCanonicalString (),
424+ DeploymentVersion : options .Version .toProto (),
425+ UpsertEntries : workerDeploymentUpsertEntriesMetadataToProto (h .workflowClient .dataConverter , options .MetadataUpdate ),
426+ RemoveEntries : options .MetadataUpdate .RemoveEntries ,
432427 }
433428 grpcCtx , cancel := newGRPCContext (ctx , defaultGrpcRetryParameters (ctx ))
434429 defer cancel ()
0 commit comments