Versioning / Safe Deploy (pre-release)
This release introduces a preview of new APIs that gracefully manage code changes and worker pools that support them. The goal is to better control which workers should execute new, and existing, workflows and activities tasks, based on their code and configuration.
Worker Deployments provide a consistent interface to set versioning policy for multiple Task Queues within a versioned application. Versioning Behaviors eliminate the need of patching short-running Workflows by pinning them to a particular version. The new UpdateWorkflowExecutionOptions
API overrides versioning attributes for a particular workflow, or, using a batch command, for a set of workflows.
The following EXPERIMENTAL Versioning APIs implement Worker Deployments and Workflow Versioning Behavior annotations. It requires a server with version v1.26.2 or later.
Client.DeploymentClient()
:Describe()
: Show properties of a Worker Deployment.GetReachability()
: Return information to safely decommission Workers.List()
: Enumerate Worker Deployments in the client's namespaceSetCurrent()
: Set the current Deployment for a Deployment Series.GetCurrent()
: Find the current Deployment for a Deployment Series.
UpdateWorkflowExecutionOptions
: Override options of a workflow execution.Worker.Options.DeploymentOptions
: Set Deployment and Workflow Behavior defaults.Workflow.RegisterOptions.VersioningBehavior
: Annotate Workflow Behavior
Documentation is coming soon. Do not use above APIs in production.
Workflow Update
Workflow Update, excluding Update-with-Start, is no longer marked as experimental.
What’s Changed
2024-12-12 - ccb28ef - Versioning 3 (#1744)
2024-12-20 - 380add9 - Add Nexus links tests (#1613)
2025-01-08 - 423a9a3 - Remove Nexus OpCanceledBeforeStarted test (#1763)
2025-01-08 - 4dd46b8 - Resolve workflow name alias in Nexus WorkflowRunOperation (#1766)
2025-01-08 - 938dcad - Fix versioning override with AutoUpgrade behavior (#1765)
2025-01-10 - 815c648 - small docs/rendering fixes (#1769)
2025-01-10 - a708f7e - Remove docker flag that disables versioning tests (#1771)
2025-01-10 - b8f9b44 - docs: fix bullets in intellisense (#1768)
2025-01-14 - 3506cd2 - Fix doclink tool's duplicate docstring generation issue (#1773)
New Contributors
- @GSmithApps made their first contribution in #1768
Full Changelog: v1.31.0...v1.32.1