Skip to main content

database bundle

Erstellt ein wiederverwendbares Archiv einer CodeQL-Datenbank.

Wer kann dieses Feature verwenden?

GitHub CodeQL wird nach der Installation auf Benutzerbasis lizenziert. Du kannst CodeQL nur für bestimmte Aufgaben unter den Lizenzeinschränkungen verwenden. Weitere Informationen findest du unter Informationen zur CodeQL-CLI.

Wenn du über eine GitHub Advanced Security-Lizenz verfügst, kannst du CodeQL für eine automatisierte Analyse sowie für Continuous Integration und Continuous Delivery verwenden. Weitere Informationen findest du unter Informationen zu GitHub Advanced Security.

In diesem Inhalt wird die neueste Version von CodeQL CLI beschrieben. Weitere Informationen zu diesem Thema findest du unter https://github.com/github/codeql-cli-binaries/releases.

Um Details zu den Optionen anzuzeigen, die für diesen Befehl in früheren Releases verfügbar sind, führe den Befehl mit der Option --help im Terminal aus.

Übersicht

Shell
codeql database bundle --output=<output> [--mode=<mode>] <options>... -- <database>

Beschreibung

Erstellt ein wiederverwendbares Archiv einer CodeQL-Datenbank.

Ein Befehl, der die nützlichen Teile der Datenbank zippt. Dies schließt nur die obligatorischen Komponenten ein, es sei denn, die Benutzer*innen fordern ausdrücklich an, dass Ergebnisse, Protokolle, TRAP-Dateien oder ähnliches eingeschlossen werden sollen.

Optionen

Primäre Optionen

<database>

[Obligatorisch] Pfad zu der CodeQL-Datenbank, die gebündelt werden soll.

-o, --output=<output>

[Obligatorisch] Die Ausgabedatei (in der Regel mit der Erweiterung „.zip“).

--include-diagnostics

Nehmen Sie die Diagnose in das Paket auf.

Verfügbar seit v2.16.0.

--include-results

Schließe alle vorberechneten Abfrageergebnisse in das Paket ein.

--include-temp

Enthält das Verzeichnis „temp“, in dem sich alle generierten Pakete, Abfragen und Sammlungen befinden.

Verfügbar seit v2.13.3.

--include-uncompressed-source

Schließe eine unkomprimierte Version des Quellarchivverzeichnisses ein. Dies ist für Legacy-CodeQL-Plug-Ins (z. B. CodeQL für Eclipse) erforderlich.

--name=<name>

Der Name des Verzeichnisses der obersten Ebene im Paket. Wenn keine Angabe erfolgt, wird standardmäßig der Name des Datenbankverzeichnisses verwendet.

Optionen für die Bereinigung von Datasets auf niedriger Ebene

--max-disk-cache=<MB>

Dient zum Festlegen des maximalen Speicherplatzes, der vom Datenträgercache für Zwischenergebnisse von Abfragen beansprucht werden darf.

Wird diese Größe nicht explizit konfiguriert, versucht der Auswerter, basierend auf der Größe des Datasets und der Komplexität der Abfragen eine angemessene Menge an Cachespeicherplatz zu verwenden. Durch explizites Festlegen eines höheren Grenzwerts (im Vergleich zur Standardnutzung) können mehr Daten zwischengespeichert werden, was spätere Abfragen beschleunigen kann.

--min-disk-free=<MB>

[Erweitert] Dient zum Festlegen der Zielmenge des freien Speicherplatzes im Dateisystem.

Ohne Angabe von --max-disk-cache versucht der Auswerter nach Möglichkeit, die Nutzung des Datenträgercaches einzuschränken, wenn der freie Speicherplatz im Dateisystem diesen Wert unterschreitet.

--min-disk-free-pct=<pct>

[Erweitert] Dient zum Festlegen des Zielanteils des freien Speicherplatzes im Dateisystem.

Ohne Angabe von --max-disk-cache versucht der Auswerter nach Möglichkeit, die Nutzung des Datenträgercaches einzuschränken, wenn der freie Speicherplatz im Dateisystem diesen Prozentsatz unterschreitet.

-m, --mode=<mode>

Wähle aus, wie aggressiv der Cache gekürzt werden soll. Verfügbare Optionen:

clear: Entfernt den gesamten Cache, um den Zustand eines frisch extrahierten Datasets zu erreichen.

trim (Standardwert) : Kürzt alles bis auf explizit zwischengespeicherte Prädikate.

fit: Stellt lediglich sicher, dass die definierten Größenlimits für den Datenträgercache eingehalten werden, und löscht so viele Zwischenelemente wie nötig.

--cleanup-upgrade-backups

Löscht alle ggf. vorhandenen Sicherungsverzeichnisse, die bei Datenbankupgrades erstellt wurden.

Allgemeine Optionen

-h, --help

Zeigt diesen Hilfetext an.

-J=<opt>

[Erweitert] Dient zum Angeben einer Option für die JVM-Instanz, die den Befehl ausführt.

(Beachte, dass Optionen, die Leerzeichen enthalten, nicht ordnungsgemäß verarbeitet werden.)

-v, --verbose

Ermöglicht die inkrementelle Erhöhung der Anzahl ausgegebener Statusmeldungen.

-q, --quiet

Ermöglicht die inkrementelle Verringerung der Anzahl ausgegebener Statusmeldungen.

--verbosity=<level>

[Erweitert] Dient zum expliziten Festlegen des Ausführlichkeitsgrads auf „errors“, „warnings“, „progress“, „progress+“, „progress++“ oder „progress+++“. Überschreibt -v und -q:

--logdir=<dir>

[Erweitert] Ermöglicht das Schreiben detaillierter Protokolle in eine oder mehrere Dateien im angegebenen Verzeichnis mit generierten Namen, die Zeitstempel und den Namen des ausgeführten Unterbefehls enthalten.

(Um eine Protokolldatei mit einem Namen zu schreiben, über den du die volle Kontrolle hast, gib stattdessen --log-to-stderr an, und leite stderr wie gewünscht um.)

--common-caches=<dir>

[Erweitert] Steuert den Speicherort zwischengespeicherter Daten auf dem Datenträger, der zwischen mehreren Ausführungsvorgängen der CLI beibehalten wird, z. B. heruntergeladene QL-Pakete und kompilierte Abfragepläne. Wenn dies nicht explizit festgelegt ist, wird dieses Verzeichnis standardmäßig auf ein Verzeichnis mit dem Namen .codeql festgelegt, das sich im Startverzeichnis des Benutzer. Es wird erstellt, wenn es noch nicht vorhanden ist.

Verfügbar seit v2.15.2.