Public Courses

Versioning Workflows with Python (versioning_python)


Description
In this course, you'll go beyond the fundamentals, learning how to safely evolve your Temporal application code in production. There are several approaches to versioning Temporal Workflows, and this course will cover each of them, bookended by examples of how to monitor and test your Workflow Execution History, so you can verify that your Versioning is working correctly.

When you've completed the course, you'll be able to:

- Apply an appropriate Versioning strategy to modify your Workflows
- Implement a Versioned Workflow
- Verify correct implementations of Versioning strategies

Prerequisites:

To be successful in this course, you should have an understanding of the fundamental concepts, tools, and techniques used to develop and execute basic Temporal applications with the Python SDK. This includes the ability to develop and execute Temporal Workflows and Activities, navigate the Web UI, configure and run a Worker, as well as an understanding of the high-level interactions between the Temporal Application and Temporal Cluster during Workflow Execution. We strongly recommend that you complete Temporal 101 and 102, which cover these topics, before starting this course.

Since code used in examples and exercises are written in Python, you must also have at least basic proficiency with the Python programming language.

Programming Language: Python Number of hours: 1.5

Content
  • ABOUT THIS COURSE
  • Welcome
  • Meet the Instructors
  • Format and Duration
  • Course Outcomes
  • Exercise Environment Orientation
  • (Optional activity) Setting up a Local Development Environment
  • Course Conventions
  • Getting Help
  • UNDERSTANDING WORKFLOW VERSIONING
  • Understanding Workflow Versioning: What to Expect
  • What is Workflow Versioning?
  • Identifying Open Executions by Workflow Type
  • Approaches for Safely Deploying Incompatible Changes
  • Using a Different Workflow Type for a New Version
  • Versioning Workflows with the Patching API
  • Visualizing Search Attributes
  • TESTING YOUR VERSIONING IMPLEMENTATION
  • Testing Your Versioning Implementation: What to Expect
  • Testing with Temporal Review
  • Searching for Workflow Versions
  • Retrieving Event History
  • Determinism in Versioned Workflows
  • Testing Backwards Compatibility of a Change
  • Hands-On Exercise #1: Versioning Workflows with the Patching API
  • ADOPTING A VERSIONING STRATEGY
  • Adopting a Versioning Strategy: What to Expect
  • Migrating Workflows
  • Comparing Versioning Implementations
  • CONCLUSION
  • Essential Points
  • Parting Words
  • For More Information
Completion rules
  • All units must be completed