This repository provides code used for exercises and demonstrations included in the Python version of the Temporal 102 training course.
It's important to remember that the example code used in this course was designed to support learning a specific aspect of Temporal, not to serve as a ready-to-use template for implementing a production system.
For the exercises, make sure to run temporal server start-dev --ui-port 8080 --db-filename clusterdata.db
in one terminal to start the Temporal server. For more details on this command, please refer to the Setting up a Local Development Environment
chapter in the course. Note: If you're using the Gitpod environment to run this exercise, you can skip this step.
Directory Name | Exercise |
---|---|
exercises/durable-execution |
Exercise 1 |
exercises/testing-code |
Exercise 2 |
exercises/debug-activity |
Exercise 3 |
Directory Name | Description |
---|---|
samples/age-estimation |
Calls a remote API to estimate the age of a person given their name |
samples/using-dataclasses-as-input-and-output |
Demonstrate how data classes are passed in as input and output |
The following links provide additional information that you may find helpful as you work through this course.
- General Temporal Documentation
- Temporal Python SDK Documentation
- Python Language Documentation
- Python Packaging and Virtual Environment Documentation
- GitPod Documentation: Troubleshooting
All Python libraries for this course should be installed in a virtual environment. If you are running these exercises in the course's GitPod environment, there is a virtual environment already setup for you and you can skip this section. (Be certain that you are running Python 3.7+. If you system has)
- Open a terminal window in the environment and change directories to the root directory of the
edu-102-python-code
repository - Run the following command to create a virtual environment
$ python3 -m venv env
- Activate the virtual environment
Linux/Mac:
$ source env/bin/activate
Windows:
$ env\Scripts\activate
Once the environment is active you should see (env)
prepended to your prompt similar
to below
(env) $
- Install the necessary packages into the virtual environment
python -m pip install -r requirements.txt
- For every new terminal you open, you will need to activate the environment using the following command
Linux/Mac:
$ source env/bin/activate
Windows:
$ env\Scripts\activate
However, the packages are already installed, so there is no need to run pip again.
You can launch an exercise environment for this course in GitPod by clicking the button below:
Alternatively, you can follow these instructions to set up your own Temporal Cluster with Docker Compose, which you can use as an exercise environment.