Billy D. 7cdcbfbff3
Some checks failed
CI / Lint (pull_request) Failing after 57s
CI / Test (pull_request) Failing after 1m23s
CI / Release (pull_request) Has been skipped
CI / Docker Build & Push (pull_request) Has been skipped
CI / Notify (pull_request) Successful in 1s
feat: migrate to typed messages
- Switch OnMessage → OnTypedMessage with natsutil.Decode[messages.PipelineTrigger]
- Return *messages.PipelineStatus (not map[string]any)
- Remove strVal/mapVal helpers
- Add .dockerignore, GOAMD64=v3 in Dockerfile
- Update tests for typed structs (14 tests pass)
2026-02-20 07:11:03 -05:00
2026-02-20 07:11:03 -05:00
2026-02-19 17:52:31 -05:00
2026-02-20 07:11:03 -05:00
2026-02-20 07:11:03 -05:00
2026-02-20 06:45:23 -05:00
2026-02-20 06:45:23 -05:00
2026-02-02 11:08:05 +00:00
2026-02-20 07:11:03 -05:00
2026-02-20 07:11:03 -05:00
2026-02-19 17:52:31 -05:00

pipeline-bridge

Bridges NATS events to Argo Workflows and Kubeflow Pipelines. Subscribes to ai.pipeline.trigger and submits workflow runs to the appropriate engine, publishing status updates to ai.pipeline.status.{request_id}.

Supported Pipelines

Name Engine Template / Pipeline ID
document-ingestion Argo document-ingestion
batch-inference Argo batch-inference
model-evaluation Argo model-evaluation
rag-query Kubeflow rag-pipeline
voice-pipeline Kubeflow voice-pipeline

Configuration

Variable Default Description
KUBEFLOW_HOST http://ml-pipeline.kubeflow.svc.cluster.local:8888 Kubeflow Pipelines API
ARGO_HOST http://argo-server.argo.svc.cluster.local:2746 Argo Server API
ARGO_NAMESPACE ai-ml Namespace for Argo workflows

Plus all standard handler-base settings (NATS_URL, OTEL_*, HEALTH_PORT, etc.).

Build

go build -o pipeline-bridge .

Test

go test -v -race ./...

Docker

docker build -t pipeline-bridge .
Description
No description provided
Readme MIT 315 KiB
Languages
Go 96%
Dockerfile 4%