Skip to content

πŸ“‘ Background worker service that orchestrates repository scanning and persists test data using asynq queues.

License

Notifications You must be signed in to change notification settings

specvital/collector

Repository files navigation

specvital collector

Repository analysis worker service for SpecVital platform.

Architecture

Clean Architecture with separate entry points for Railway deployment:

src/cmd/
β”œβ”€β”€ worker/      # River worker - queue processing (Railway service #1)
β”œβ”€β”€ scheduler/   # Cron scheduler - periodic jobs (Railway service #2)
β”œβ”€β”€ enqueue/     # CLI tool for manual task enqueue

Build

# Build all binaries
just build

# Build specific target
just build worker
just build scheduler
just build enqueue

# Output: bin/worker, bin/scheduler, bin/enqueue

Development

# Run worker locally with hot reload
just run local

# Run scheduler locally
just run-scheduler local

# Run tests
just test unit
just test integration
just test all

Environment Variables

  • DATABASE_URL: PostgreSQL connection string (also used for river job queue)

Railway Deployment

Deploy as two separate services:

  • Worker: bin/worker - processes analysis tasks from queue (scalable)
  • Scheduler: bin/scheduler - runs periodic cron jobs (single instance)

About

πŸ“‘ Background worker service that orchestrates repository scanning and persists test data using asynq queues.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •