Beacon/workers/go/workers.go

71 lines
2.1 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package workers
import (
"beacon/activities"
"beacon/config"
"beacon/workflows"
"fmt"
"go.temporal.io/sdk/client"
"go.temporal.io/sdk/worker"
"go.uber.org/zap"
"log"
)
func StartWorkflow(cnf *config.TemporalConfig) error {
// 创建使用默认选项的 Temporal 客户端。
c, err := client.Dial(client.Options{HostPort: fmt.Sprintf("%s:%d", cnf.Host, cnf.Port)})
if err != nil {
log.Fatalln("Unable to create Temporal client", err)
}
defer c.Close()
taskQueue := "data-task-queue"
// 创建一个监听指定任务队列的 Worker。
w := worker.New(c, taskQueue, worker.Options{})
// 将工作流和带有真实 Go 后缀的活动注册到 Worker。
w.RegisterWorkflow(workflows.TestRunWorkflow)
w.RegisterWorkflow(workflows.DynamicTestSuiteWorkflow)
w.RegisterActivity(activities.LoadCompositeCaseSteps)
//(for later) w.RegisterActivity(activities.AddSuffixActivity)
// 注意Python 和 ts 活动将由 Python/ts 进程处理,此处未进行注册。
// 启动 Worker。此调用会阻塞直到 Worker 被中断。
err = w.Run(worker.InterruptCh())
if err != nil {
zap.L().Error(fmt.Sprintf("Unable to start worker: %v", err))
}
return nil
}
/*func main() {
// 创建使用默认选项的 Temporal 客户端。
c, err := client.Dial(client.Options{HostPort: "temporal.newai.day:17233"})
if err != nil {
log.Fatalln("Unable to create Temporal client", err)
}
defer c.Close()
taskQueue := "test-task-queue"
// 创建一个监听指定任务队列的 Worker。
w := worker.New(c, taskQueue, worker.Options{})
// 将工作流和带有真实 Go 后缀的活动注册到 Worker。
w.RegisterWorkflow(workflows.TestRunWorkflow)
w.RegisterWorkflow(workflows.DynamicTestSuiteWorkflow)
w.RegisterActivity(activities.LoadCompositeCaseSteps)
//(for later) w.RegisterActivity(activities.AddSuffixActivity)
// 注意Python 和 ts 活动将由 Python/ts 进程处理,此处未进行注册。
// 启动 Worker。此调用会阻塞直到 Worker 被中断。
err = w.Run(worker.InterruptCh())
if err != nil {
log.Fatalln("Unable to start Worker", err)
}
}
*/