Skip to content

Commit 246f246

Browse files
JamyDevclaude
andcommitted
feat(orchestrator): rewrite main.go to use pipeline.Construct
Replace ~600 lines of manual wiring with a single pipeline.Construct call. The orchestrator's run() now: 1. Builds per-queue profiles (Profile/Profiles in profiles.go) 2. Populates orchestrator.Deps with profile-derived Factory adapters 3. Calls pipeline.Construct(deps, orchestrator.Stages, ...) to get a single lifecycle.Component 4. Drives Start/Stop on that component Removed: - newTopicRegistry (topology now declared in orchestrator.Stages) - queueExtensions/queueRegistry (replaced by Profile/Profiles) - Four *Factory adapter structs (replaced by func-type adapters) - registerPrimaryControllers (stages declare their own New funcs) - registerDLQControllers (stages declare their own DLQ funcs) The host retains: infrastructure bootstrap, per-queue profile construction, change provider wiring, gRPC server lifecycle, and signal handling — all host-specific concerns per the RFC. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent e091f18 commit 246f246

3 files changed

Lines changed: 301 additions & 625 deletions

File tree

service/submitqueue/orchestrator/server/BUILD.bazel

Lines changed: 6 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,23 +7,21 @@ exports_files(
77

88
go_library(
99
name = "orchestrator_lib",
10-
srcs = ["main.go"],
10+
srcs = [
11+
"main.go",
12+
"profiles.go",
13+
],
1114
importpath = "github.com/uber/submitqueue/service/submitqueue/orchestrator/server",
1215
visibility = ["//visibility:private"],
1316
deps = [
14-
"//api/runway/messagequeue:go_default_library",
1517
"//api/submitqueue/orchestrator/protopb:go_default_library",
16-
"//platform/consumer:go_default_library",
17-
"//platform/errs:go_default_library",
1818
"//platform/errs/generic:go_default_library",
1919
"//platform/errs/mysql:go_default_library",
20-
"//platform/extension/counter:go_default_library",
2120
"//platform/extension/counter/mysql:go_default_library",
22-
"//platform/extension/messagequeue:go_default_library",
2321
"//platform/extension/messagequeue/mysql:go_default_library",
2422
"//platform/http:go_default_library",
23+
"//platform/pipeline:go_default_library",
2524
"//submitqueue/core/changeset:go_default_library",
26-
"//submitqueue/core/topickey:go_default_library",
2725
"//submitqueue/entity:go_default_library",
2826
"//submitqueue/extension/buildrunner:go_default_library",
2927
"//submitqueue/extension/buildrunner/fake:go_default_library",
@@ -41,23 +39,9 @@ go_library(
4139
"//submitqueue/extension/scorer/composite:go_default_library",
4240
"//submitqueue/extension/scorer/fake:go_default_library",
4341
"//submitqueue/extension/scorer/heuristic:go_default_library",
44-
"//submitqueue/extension/storage:go_default_library",
4542
"//submitqueue/extension/storage/mysql:go_default_library",
4643
"//submitqueue/extension/validator/fake:go_default_library",
47-
"//submitqueue/orchestrator/controller:go_default_library",
48-
"//submitqueue/orchestrator/controller/batch:go_default_library",
49-
"//submitqueue/orchestrator/controller/build:go_default_library",
50-
"//submitqueue/orchestrator/controller/buildsignal:go_default_library",
51-
"//submitqueue/orchestrator/controller/cancel:go_default_library",
52-
"//submitqueue/orchestrator/controller/conclude:go_default_library",
53-
"//submitqueue/orchestrator/controller/dlq:go_default_library",
54-
"//submitqueue/orchestrator/controller/merge:go_default_library",
55-
"//submitqueue/orchestrator/controller/mergeconflictsignal:go_default_library",
56-
"//submitqueue/orchestrator/controller/mergesignal:go_default_library",
57-
"//submitqueue/orchestrator/controller/score:go_default_library",
58-
"//submitqueue/orchestrator/controller/speculate:go_default_library",
59-
"//submitqueue/orchestrator/controller/start:go_default_library",
60-
"//submitqueue/orchestrator/controller/validate:go_default_library",
44+
"//submitqueue/orchestrator:go_default_library",
6145
"@com_github_go_sql_driver_mysql//:go_default_library",
6246
"@com_github_uber_go_tally//:go_default_library",
6347
"@org_golang_google_grpc//:go_default_library",

0 commit comments

Comments
 (0)