Skip to content

add Go SDK samples and integration tests - #389

Draft
Tomer Rosenthal (torosent) wants to merge 5 commits into
mainfrom
torosent-go-sdk-samples
Draft

Tomer Rosenthal (torosent) wants to merge 5 commits into
mainfrom
torosent-go-sdk-samples

Conversation

@torosent

@torosent Tomer Rosenthal (torosent) commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

Purpose

  • Go developers need clear, runnable examples for the new Durable Task SDK beta. Add 19 samples with small entrypoints, separate integration tests, and setup guides.
  • The samples use the emulator by default. Existing sample implementations in other languages are unchanged.

Does this introduce a breaking change?

[ ] Yes
[x] No

Pull Request Type

What kind of change does this Pull Request introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

How to Test

  • Get the code
git clone https://github.com/Azure-Samples/Durable-Task-Scheduler.git
cd Durable-Task-Scheduler
git checkout torosent-go-sdk-samples
cd samples/durable-task-sdks/go
go mod download
  • Test the code

Use Go 1.25 or later. For backend tests, first start an isolated DTS hub and Azurite as described in the Go sample README.

go build ./...
go test -race ./...
go vet ./...
HISTORY_EXPORT_ISOLATED_TASKHUB=1 DTS_SAMPLES_E2E=1 \
  go test -v -count=1 -timeout 30m ./e2e

What to Check

Verify that the following are valid

  • Demos show the workflow pattern and shut down cleanly. Integration tests check results, failure handling, saved history, and cleanup.

Other Information

Go 1.25 builds, race tests, and vet passed locally. All 19 demos and 19 integration suites passed on both the emulator and live DTS.

Add Go counterparts for all 20 Python samples using durabletask-go v1.0.0-beta.1, with shared configuration, focused tests, executable emulator coverage, and repository-wide documentation and CI updates.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Remove counterpart labels and Python comparison sections while retaining standalone setup, behavior, and safety guidance.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Keep entrypoints small, organize workflow and activity code into focused files, and move exhaustive verification into opt-in integration tests. Remove the Go agent-directed workflow example and update catalogs, documentation, and the sequential demo/test runner.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Simplify sentences and vocabulary, keep technical names and commands, and use punctuation without em dashes.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Restore the root README after the previous scope mistake. Review all 19 Go sample READMEs and their shared guide, simplify the wording, and remove em dashes while preserving commands, links, and technical guidance.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant