Skip to content

chore(example): wire stovepipe orchestrator start controller#253

Open
mnoah1 wants to merge 1 commit into
mnoah1/stovepipe-start-controllerfrom
mnoah1/stovepipe-start-wiring
Open

chore(example): wire stovepipe orchestrator start controller#253
mnoah1 wants to merge 1 commit into
mnoah1/stovepipe-start-controllerfrom
mnoah1/stovepipe-start-wiring

Conversation

@mnoah1

@mnoah1 mnoah1 commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Wires the start controller into the orchestrator sample app.

Why?

Building out overall structure of https://github.com/uber/submitqueue/blob/main/doc/rfc/stovepipe/workflow.md

What?

  • Update main.go to include the newly added start controller from branch below this
  • This will create a start controller and begin watching for events on the topic. Also adding the validate topic, as start will insert these

Test Plan

  • make local-stovepipe-start
  • make local-stovepipe-logs
  • Insert a sample message:
docker exec -i stovepipe-mysql-queue-1 mysql -uroot -proot submitqueue -e "INSERT INTO queue_messages (topic, partition_key, id, payload, metadata, created_at, published_at, visible_after, failed_at, failure_count, last_error, original_topic) VALUES ('start', 'github.com/uber/cadence', CONCAT('manual-', CAST(UNIX_TIMESTAMP(NOW(3)) * 1000 AS UNSIGNED)), '{\"uri\":\"git://github.com/uber/cadence/refs/heads/main/abc123def456\",\"partition_key\":\"github.com/uber/cadence\"}', NULL, CAST(UNIX_TIMESTAMP(NOW(3)) * 1000 AS UNSIGNED), CAST(UNIX_TIMESTAMP(NOW(3)) * 1000 AS UNSIGNED), 0, 0, 0, '', '');"
mysql: [Warning] Using a password on the command line interface can be insecure.
  • Confirm via logs that the message is receives and enqueues the validate message:
orchestrator-service-1  | 2026-06-16T21:48:54.451Z	INFO	start_controller	start/start.go:91	received change event	{"uri": "git://github.com/uber/cadence/refs/heads/main/abc123def456", "attempt": 1, "partition_key": "github.com/uber/cadence"}
orchestrator-service-1  | 2026-06-16T21:48:54.451Z	DEBUG	queue_mysql.message_store	mysql/message_store.go:72	inserting messages	{"topic": "validate", "count": 1, "visible_after": 0}
orchestrator-service-1  | 2026-06-16T21:48:54.458Z	DEBUG	queue_mysql.message_store	mysql/message_store.go:125	inserted messages	{"topic": "validate", "count": 1}
orchestrator-service-1  | 2026-06-16T21:48:54.458Z	DEBUG	queue_mysql.publisher	mysql/publisher.go:65	published message	{"topic": "validate", "message_id": "git://github.com/uber/cadence/refs/heads/main/abc123def456"}
orchestrator-service-1  | 2026-06-16T21:48:54.458Z	INFO	start_controller	start/start.go:106	published commit to validate	{"uri": "git://github.com/uber/cadence/refs/heads/main/abc123def456", "topic_key": "validate"}
orchestrator-service-1  | 2026-06-16T21:48:54.461Z	DEBUG	consumer/consumer.go:479	message processed successfully	{"controller": "start", "topic_key": "start", "message_id": "manual-1781646534435", "partition_key": "github.com/uber/cadence", "attempt": 1, "elapsed_ms": 6}
  • main.go doesn't have tests of its own but we can get some e2e tests in place for stovepipe separately

@mnoah1 mnoah1 marked this pull request as ready for review June 16, 2026 21:57
@mnoah1 mnoah1 requested review from a team, behinddwalls and sbalabanov as code owners June 16, 2026 21:57
Wires the start controller into the runnable orchestrator sample app.
@mnoah1 mnoah1 force-pushed the mnoah1/stovepipe-start-controller branch from 57a2397 to 03a6c15 Compare June 17, 2026 03:03
@mnoah1 mnoah1 force-pushed the mnoah1/stovepipe-start-wiring branch from 092eba3 to 07811a3 Compare June 17, 2026 03:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant