# vuln-osv – Gitea OSV raw-data mirror Speichert Original-JSON aus OSV-Ökosystem-Snapshots direkt in Git unter `data//.json`. ## Installation 1. Leeres Gitea-Repository `VULN/vuln-osv` erstellen, dieses Verzeichnis pushen. 2. Auf der Gitea-VM: `sudo install -d -o act_runner -g act_runner -m 700 /var/lib/act_runner/cache/vuln-osv`. 3. `vuln-runner:host` muss registriert sein. `python3`, `git` und `flock` müssen verfügbar sein. 4. Actions-Job-Token benötigt Schreibrechte. Workflow `.gitea/workflows/update.yml` starten. ## Updates - Zeitplan: alle sechs Stunden (Minute 41). - HTTP `If-None-Match` / `If-Modified-Since`: Bei unverändertem Export Antwort `304`, kein ZIP-Download. - Wenn sich ein ZIP ändert, wird **das gesamte Ökosystem-ZIP erneut geladen**, nicht nur die Änderungen. Ein späterer Umbau auf `modified_id.csv` spart weitere Bandbreite. - Nur geänderte JSON-Dateien werden geschrieben und committed. - Standard-Ökosysteme: PyPI, npm, Go, Maven, NuGet, crates.io, Packagist, RubyGems, GitHub Actions, OSS-Fuzz. - Für andere Ökosysteme `python3 scripts/sync.py --ecosystems 'PyPI,npm,Go'` ausführen, beziehungsweise Workflow-Aufruf anpassen. - **Löschungen**: Standardmäßig werden keine Dateien entfernt. Erst nach belastbar bestätigtem Full-Snapshot mit `--allow-deletions` aktivieren. Ein fehlender Snapshot darf niemals als Leeren interpretiert werden. - Sehr große Git-Repos: Speicherplatz, Inodes und Gitea-Push-Limits kontrollieren. Für npm/Go sind mehrere hunderttausend Dateien möglich. Offizielle Quelle: https://google.github.io/osv.dev/data/