Files
story/cmd/workflow-model-bridge/main.go
T

38 lines
926 B
Go
Raw Normal View History

package main
import (
"data-terminal-cloud/internal/workflowbridge"
"log"
"net/http"
"os"
"strings"
"time"
)
func secret(name string) string {
if p := os.Getenv(name + "_FILE"); p != "" {
b, err := os.ReadFile(p)
if err != nil {
log.Fatal("secret file unavailable")
}
return strings.TrimSpace(string(b))
}
return strings.TrimSpace(os.Getenv(name))
}
func main() {
key, admin := secret("ARK_API_KEY"), secret("DIFY_BRIDGE_SECRET")
if key == "" || admin == "" {
log.Fatal("bridge credentials missing")
}
base := os.Getenv("ARK_BASE_URL")
if base == "" {
base = "https://ark.cn-beijing.volces.com/api/v3"
}
service, err := workflowbridge.NewArkService(admin, base, key)
if err != nil {
log.Fatal("model configuration invalid")
}
server := &http.Server{Addr: ":8188", Handler: service, ReadHeaderTimeout: 10 * time.Second, IdleTimeout: 30 * time.Second}
log.Fatal(server.ListenAndServe())
}