Skip to main content

Enterprise Server 3.15 ist derzeit als Release Candidate verfügbar.

resolve upgrades

[Deep Plumbing] Bestimmt Upgrades, die für ein unformatiertes Dataset ausgeführt werden sollen.

Wer kann dieses Feature verwenden?

CodeQL ist für die folgenden Repositorytypen verfügbar:

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 resolve upgrades --dbscheme=<file> <options>...

Beschreibung

[Deep Plumbing] Bestimmt Upgrades, die für ein unformatiertes Dataset ausgeführt werden sollen.

Legt fest, welche Upgrades für ein bestimmtes unformatiertes QL-Dataset ausgeführt werden müssen, um es auf den Stand der konfigurierten QL-Bibliotheken zu bringen. Diese Berechnung ist Teil der Vorgänge während eines normalen Datenbankupgrades und wird als separater Installationsbefehl verfügbar gemacht, um (a) bei der Problembehandlung zu helfen und (b) einen Ausgangspunkt für die Änderung des Pfads in Ausnahmefällen bereitzustellen, in denen eine genaue Steuerung erforderlich ist.

Optionen

Primäre Optionen

--dbscheme=<file>

[Obligatorisch] Das aktuelle Datenbankschema des Datasets, das aktualisiert werden soll.

--format=<fmt>

Legt ein Ausgabeformat fest. Verfügbare Optionen:

lines (Standard) : gibt Upgradeskripts auf jeweils einer Zeile aus.

json: gibt ein JSON-Array von Upgradeskriptpfaden aus.

--just-check

Es erfolgt keine Ausgabe, sondern es wird der Exitcode 0 ausgegeben, wenn Upgrades ausgeführt werden müssen, und Exitcode 1, wenn keine vorhanden sind.

Optionen von der Befehlszeile des aufrufenden Befehls

--search-path=<dir>[:<dir>...]

Eine Liste mit Verzeichnissen, unter denen QL-Pakete mit Upgraderezepten zu finden sind. Jedes Verzeichnis kann entweder ein QL-Paket (oder ein Bündel von Paketen mit einer Datei vom Typ .codeqlmanifest.json am Stamm) oder das unmittelbar übergeordnete Element eines oder mehrerer solcher Verzeichnisse sein.

Wenn der Pfad Verzeichnisstrukturen enthält, definiert deren Reihenfolge die Rangfolge zwischen ihnen: Ist ein Paketname, der aufgelöst werden muss, in mehreren der Verzeichnisstrukturen vorhanden, wird die erste Angabe verwendet.

Ein entsprechender Verweis beim Auschecken des Open-Source-CodeQL-Repositorys sollte funktionieren, wenn eine der darin enthaltenen Sprachen abgefragt wird.

(Hinweis: Unter Windows wird ; als Pfadtrennzeichen verwendet.)

--additional-packs=<dir>[:<dir>...]

[Erweitert] Bei Angabe dieser Verzeichnisliste werden die Verzeichnisse vor den Verzeichnissen in --search-path nach Upgrades durchsucht. Die Reihenfolge zwischen diesen Elementen spielt keine Rolle. Wenn ein Paketname über diese Liste an zwei verschiedenen Stellen gefunden wird, handelt es sich um einen Fehler.

Dies ist hilfreich, wenn du vorübergehend eine neue Version eines Pakets entwickelst, die auch am Standardpfad vorhanden ist. Andererseits wird davon abgeraten, diese Option in einer Konfigurationsdatei zu überschreiben. Einige interne Aktionen fügen diese Option direkt hinzu, wodurch alle konfigurierten Werte überschrieben werden.

(Hinweis: Unter Windows wird ; als Pfadtrennzeichen verwendet.)

--target-dbscheme=<file>

Das _Ziel_datenbankschema für das Upgrade. Ohne diese Angabe wird ein maximaler Upgradepfad erstellt.

--target-sha=<sha>

[Erweitert] Eine Alternative zu --target-dbscheme, die den internen Hash des Zieldatenbankschemas anstatt der Datenbankschemadatei angibt.

--[no-]allow-downgrades

Schließe alle relevanten Downgrades ein, wenn keine Upgrades vorhanden sind.

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.