2025-11-26 19:21:48 -08:00
2024-12-17 21:29:27 -08:00
2024-12-17 21:29:27 -08:00
2024-12-17 21:29:27 -08:00
2025-01-30 14:40:47 -08:00
2025-11-26 19:21:48 -08:00
2025-11-26 19:21:48 -08:00
2024-12-18 11:57:55 -08:00
2025-11-26 19:21:48 -08:00
2025-11-26 19:21:48 -08:00

Introduction to hepc HTTP End Point for CodeQL

Usage Sample

  cd ~/work-gh/mrva/mrvahepc 
  uv sync  # one-time install; uv-run shebangs avoid manual activation

  # Collect DBs from filesystem
  cd ~/work-gh/mrva/mrvahepc && rm -fR db-collection.tmp/
  export MRVA_HEPC_ENDPOINT=http://hepc
  ./bin/mc-hepc-init --db_collection_dir db-collection.tmp \
                     --starting_path ~/work-gh/mrva/mrva-open-source-download/ \
                     --max_dbs 17

  # Serve collected DBs plus metadata
  cd ~/work-gh/mrva/mrvahepc 
  ./bin/mc-hepc-serve --codeql-db-dir db-collection.tmp

  # Test server
  curl 127.0.0.1:8070/index -o - 2>/dev/null | wc -l

  curl 127.0.0.1:8070/api/v1/latest_results/codeql-all \
       -o - 2>/dev/null | wc -l

  url=$(curl 127.0.0.1:8070/api/v1/latest_results/codeql-all \
             -o - 2>/dev/null | head -1 | jq -r .result_url)
  echo $url
  # http://hepc/db/db-collection.tmp/aircrack-ng-aircrack-ng-ctsj-41ebbe.zip

  wget $(echo $url|sed 's|http://hepc|http://127.0.0.1:8070|g;')

Installation

  • Use uv to install dependencies without manually activating a venv

      cd ~/work-gh/mrva/mrvahepc
      uv sync
    

    uv sync installs everything declared in pyproject.toml into a managed .venv and caches the wheels; the bin/ scripts already use uv run in their shebangs, so you can execute them directly.

  • Local development

      cd ~/work-gh/mrva/mrvahepc
      uv sync
      uv pip install --editable .
    

    The --editable install is optional; use ./bin/* directly to avoid relying on entry points in your shell.

  • Full installation

    pip install mrvahepc
    

Use as library

The best way to examine the code is starting from the high-level scripts in bin/.

Description
No description provided
Readme Apache-2.0 71 KiB
Languages
Python 100%