Temporalex.Worker (Temporalex v0.2.0)

Copy Markdown View Source

Supervisor for a Temporal worker — one per task queue.

Starts a Server (connects to Temporal, receives poll loop messages) and a Task.Supervisor for activity execution.

Usage

children = [
  {Temporalex.Worker,
    url: "http://localhost:7233",
    namespace: "default",
    task_queue: "my-queue",
    workflows: [MyApp.Workflows.Checkout],
    activities: [MyApp.Activities.Payment]}
]

Supervisor.start_link(children, strategy: :one_for_one)

Options

  • :url (required) — Temporal server URL (http:// or https://)
  • :task_queue (required) — task queue name
  • :namespace — Temporal namespace (default: "default")
  • :workflows — list of workflow modules (default: [])
  • :activities — list of activity modules (default: [])
  • :name — supervisor name (default: Temporalex.Worker)
  • :api_key — API key for Temporal Cloud
  • :headers — additional gRPC headers
  • :max_cached_workflows — max cached workflow executions (default: 1000)

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

start_link(opts)