Skip to content

JBMod/symbol-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Symbol Server

A simple symbol server built on Cloudflare Workers that proxies debug symbols from an S3-compatible storage bucket. It supports both Visual Studio (SymSrv) and gdb (debuginfod) clients.

Used by JBMod as a lightweight symbol server for low traffic serving.

Architecture

  • Worker Router: Handles SymSrv and debuginfod URL formats.
  • Index: Uses Cloudflare KV to map Symbol Hash (PDB GUID+Age or ELF Build ID) to the S3 bucket key.
  • Storage: Proxies binary chunks securely from a private S3 bucket.

Local Development

To test this server locally:

  1. Ensure you have Node.js v24+ installed.
  2. Run npm install
  3. Create a .dev.vars file with test secrets:
    INDEXER_SECRET="your_secret"
    AWS_ACCESS_KEY_ID="test"
    AWS_SECRET_ACCESS_KEY="test"
    S3_ENDPOINT="https://s3.us-east-1.amazonaws.com"
    S3_REGION="us-east-1"
    S3_BUCKET="my-symbols-bucket"
  4. Run npx wrangler dev to start the local Cloudflare emulator.

Deployment

The worker is deployed to https://symbols.jbmod.dev.
Deployment is handled via GitHub Actions.

About

Simple debug symbol server

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors