Skip to content

Commit 76377c7

Browse files
Sushisourcebergundydnr
authored
Worker Versioning (temporalio#1120)
Implement client API (changes) and various internal details of new worker versioning feature Co-authored-by: Roey Berman <[email protected]> Co-authored-by: Roey Berman <[email protected]> Co-authored-by: David Reiss <[email protected]>
1 parent fc09967 commit 76377c7

31 files changed

+1205
-330
lines changed

client/client.go

+26-5
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ type (
164164

165165
// UpdateWorkflowWithOptionsRequest encapsulates the parameters for
166166
// sending an update to a workflow execution.
167-
// NOTE: Experimental
167+
// WARNING: Worker versioning is currently experimental
168168
UpdateWorkflowWithOptionsRequest = internal.UpdateWorkflowWithOptionsRequest
169169

170170
// WorkflowUpdateHandle represents a running or completed workflow
@@ -178,16 +178,37 @@ type (
178178
GetWorkflowUpdateHandleOptions = internal.GetWorkflowUpdateHandleOptions
179179

180180
// UpdateWorkerBuildIdCompatibilityOptions is the input to Client.UpdateWorkerBuildIdCompatibility.
181-
// NOTE: Experimental
181+
// WARNING: Worker versioning is currently experimental
182182
UpdateWorkerBuildIdCompatibilityOptions = internal.UpdateWorkerBuildIdCompatibilityOptions
183183

184184
// GetWorkerBuildIdCompatibilityOptions is the input to Client.GetWorkerBuildIdCompatibility.
185-
// NOTE: Experimental
185+
// WARNING: Worker versioning is currently experimental
186186
GetWorkerBuildIdCompatibilityOptions = internal.GetWorkerBuildIdCompatibilityOptions
187187

188188
// WorkerBuildIDVersionSets is the response for Client.GetWorkerBuildIdCompatibility.
189+
// WARNING: Worker versioning is currently experimental
189190
WorkerBuildIDVersionSets = internal.WorkerBuildIDVersionSets
190191

192+
// BuildIDOpAddNewIDInNewDefaultSet is an operation for UpdateWorkerBuildIdCompatibilityOptions
193+
// to add a new BuildID in a new default set.
194+
// WARNING: Worker versioning is currently experimental
195+
BuildIDOpAddNewIDInNewDefaultSet = internal.BuildIDOpAddNewIDInNewDefaultSet
196+
197+
// BuildIDOpAddNewCompatibleVersion is an operation for UpdateWorkerBuildIdCompatibilityOptions
198+
// to add a new BuildID to an existing compatible set.
199+
// WARNING: Worker versioning is currently experimental
200+
BuildIDOpAddNewCompatibleVersion = internal.BuildIDOpAddNewCompatibleVersion
201+
202+
// BuildIDOpPromoteSet is an operation for UpdateWorkerBuildIdCompatibilityOptions to promote a
203+
// set to be the default set by targeting an existing BuildID.
204+
// WARNING: Worker versioning is currently experimental
205+
BuildIDOpPromoteSet = internal.BuildIDOpPromoteSet
206+
207+
// BuildIDOpPromoteIDWithinSet is an operation for UpdateWorkerBuildIdCompatibilityOptions to
208+
// promote a BuildID within a set to be the default.
209+
// WARNING: Worker versioning is currently experimental
210+
BuildIDOpPromoteIDWithinSet = internal.BuildIDOpPromoteIDWithinSet
211+
191212
// Client is the client for starting and getting information about a workflow executions as well as
192213
// completing activities asynchronously.
193214
Client interface {
@@ -477,12 +498,12 @@ type (
477498
// UpdateWorkerBuildIdCompatibility
478499
// Allows you to update the worker-build-id based version sets for a particular task queue. This is used in
479500
// conjunction with workers who specify their build id and thus opt into the feature.
480-
// NOTE: Experimental
501+
// WARNING: Worker versioning is currently experimental
481502
UpdateWorkerBuildIdCompatibility(ctx context.Context, options *UpdateWorkerBuildIdCompatibilityOptions) error
482503

483504
// GetWorkerBuildIdCompatibility
484505
// Returns the worker-build-id based version sets for a particular task queue.
485-
// NOTE: Experimental
506+
// WARNING: Worker versioning is currently experimental
486507
GetWorkerBuildIdCompatibility(ctx context.Context, options *GetWorkerBuildIdCompatibilityOptions) (*WorkerBuildIDVersionSets, error)
487508

488509
// CheckHealth performs a server health check using the gRPC health check

contrib/datadog/go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ module go.temporal.io/sdk/contrib/datadog
33
go 1.16
44

55
require (
6-
github.com/stretchr/testify v1.8.2
6+
github.com/stretchr/testify v1.8.3
77
go.temporal.io/sdk v1.12.0
88
gopkg.in/DataDog/dd-trace-go.v1 v1.42.0
99
)

contrib/datadog/go.sum

+129-29
Large diffs are not rendered by default.

contrib/opentelemetry/go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ module go.temporal.io/sdk/contrib/opentelemetry
33
go 1.16
44

55
require (
6-
github.com/stretchr/testify v1.8.2
6+
github.com/stretchr/testify v1.8.3
77
go.opentelemetry.io/otel v1.2.0
88
go.opentelemetry.io/otel/sdk v1.2.0
99
go.opentelemetry.io/otel/trace v1.2.0

contrib/opentelemetry/go.sum

+125-38
Large diffs are not rendered by default.

contrib/opentracing/go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ go 1.16
44

55
require (
66
github.com/opentracing/opentracing-go v1.2.0
7-
github.com/stretchr/testify v1.8.2
7+
github.com/stretchr/testify v1.8.3
88
go.temporal.io/sdk v1.12.0
99
)
1010

contrib/opentracing/go.sum

+125-38
Large diffs are not rendered by default.

contrib/tally/go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ module go.temporal.io/sdk/contrib/tally
33
go 1.16
44

55
require (
6-
github.com/stretchr/testify v1.8.2
6+
github.com/stretchr/testify v1.8.3
77
github.com/uber-go/tally/v4 v4.1.1
88
go.temporal.io/sdk v1.12.0
99
)

contrib/tally/go.sum

+125-38
Large diffs are not rendered by default.

go.mod

+4-4
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ require (
1111
github.com/grpc-ecosystem/go-grpc-middleware v1.3.0
1212
github.com/pborman/uuid v1.2.1
1313
github.com/robfig/cron v1.2.0
14-
github.com/stretchr/testify v1.8.2
15-
go.temporal.io/api v1.19.1-0.20230322213042-07fb271d475b
14+
github.com/stretchr/testify v1.8.3
15+
go.temporal.io/api v1.19.1-0.20230525203837-c5e9155968d8
1616
go.uber.org/atomic v1.9.0
17-
golang.org/x/time v0.1.0
18-
google.golang.org/grpc v1.54.0
17+
golang.org/x/time v0.3.0
18+
google.golang.org/grpc v1.55.0
1919
google.golang.org/protobuf v1.30.0
2020
)

0 commit comments

Comments
 (0)