Skip to content

[STREAM-611] Move Launchpad to Taskbroker#561

Draft
james-mcnulty wants to merge 6 commits intomainfrom
george/move-launchpad-to-taskbroker
Draft

[STREAM-611] Move Launchpad to Taskbroker#561
james-mcnulty wants to merge 6 commits intomainfrom
george/move-launchpad-to-taskbroker

Conversation

@james-mcnulty
Copy link
Member

@james-mcnulty james-mcnulty commented Feb 2, 2026

Description

Used the new taskbroker / taskworker Python client to process Launchpad tasks emitted from within the Sentry monolith. This is part of the initiative to enable "external" taskworkers (that is, taskworkers that are external to the Sentry monolith).

Details

  • Added two environment variables (LAUNCHPAD_WORKER_RPC_HOST and LAUNCHPAD_WORKER_CONCURRENCY) for taskworker configuration
  • Downgraded from Python 3.13 to Python 3.12 because the taskbroker client relies on grpcio, which does not have prebuilt wheels for Python 1.13
  • Removed Kafka business from LaunchpadService, replaced with TaskWorker that starts when setup is called

See getsentry/sentry#107442 for monolith changes (task stub).

@linear
Copy link

linear bot commented Feb 2, 2026

@james-mcnulty
Copy link
Member Author

Input (Sentry CLI)

sentry-cli --log-level DEBUG \
  --url http://dev.getsentry.net:8000/ \
  --auth-token $SENTRY_TOKEN \
  build upload HackerNews.xcarchive \
  --org sentry \
  --project internal

Output (Launchpad)

           INFO     taskworker.spawn_child | pid=76547 processing_pool=launchpad
           INFO     taskworker.spawn_child | pid=76548 processing_pool=launchpad
[13:53:39] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
[13:53:41] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
[13:53:44] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
[13:53:48] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
[13:53:53] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
Processing artifact...
[13:53:54] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
size.macho.symbol_not_found_in_section
[13:53:56] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad 
size.macho.symbol_not_found_in_section
macho.treemap.size_mismatch
macho.treemap.size_mismatch
macho.treemap.size_mismatch
Processed artifact 🎉
[13:53:58] DEBUG    taskworker.workers._send_result | task_id=01e945ae5b1a45e3b833ef2983afd97e next=True processing_pool=launchpad
[13:53:59] DEBUG    taskworker.fetch_task.not_found | processing_pool=launchpad      

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