Versioning
Tourbillon guarantees your code will run on the same revision, even when subsequent changes are made.
Tourbillon pulls your durable executions directly from source control (i.e. git). When a durable execution is triggered, the git revision of the code that is executed is stored against the instance of the execution.
If the execution is suspended, for example; the execution sleeps for one year, upon resumption the revision will be checked out from the repository and execution will resume.
If you need to specify a revision for a given durable execution you can do so via the request headers. Omitting this header will default to the newest revision that has been pulled by the Tourbillon service.
- grpcurl
- curl
grpcurl \
-plaintext \
-H 'Authorization: Basic <base64(<NAMESPACE>:<API-KEY>)>' \
-H 'Tourbillon-Program-Revision: abc123' \
-d '{ ... }' \
localhost:2424 \
echo.EchoService/Echo
curl -X POST \
'http://localhost:2424/echo.EchoService/Echo' \
-H 'Content-Type: application/json' \
-u <NAMESPACE>:<API-KEY> --basic \
-H 'Tourbillon-Program-Revision: abc123' \
-d '{ ... }'