AdvancedSecurity-Codeql-Init@1 : Task "Advanced Security Initialize CodeQL v1" (Erweiterte Sicherheit: Initialisieren von CodeQL v1)
Initialisiert die CodeQL-Datenbank als Vorbereitung für die Erstellung.
Für das zu überprüfende Repository muss GitHub Advanced Security für Azure DevOps aktiviert sein.
Syntax
# Advanced Security Initialize CodeQL v1
# Initializes the CodeQL database in preparation for building.
- task: AdvancedSecurity-Codeql-Init@1
inputs:
#languages: # 'csharp' | 'cpp' | 'go' | 'java' | 'javascript' | 'python' | 'ruby' | 'swift'. Languages to analyze.
#querysuite: 'Select a query suite...' # 'Select a query suite...' | 'code-scanning' | 'security-extended' | 'security-experimental' | 'security-and-quality'. CodeQL Query Suite to use for analysis. Default: Select a query suite....
# Advanced
#ram: # string. Options to control RAM usage in MB.
#threads: # string. Use this many threads to evaluate queries.
#codeqlpathstoignore: # string. Set a list of paths to exclude in the CodeQL analysis.
#codeqlpathstoinclude: # string. Set a list of additional paths to include in the CodeQL analysis.
#sourcesfolder: # string. Sets the folder that contains the sources to be analyzed.
#loglevel: '_' # '0' | '1' | '2' | '_'. Set the log level for the CodeQL analysis. Default: _.
#configfilepath: # string. Use this to enable custom query analysis in codeql (path must be absolute).
#codeqltoolsdirectory: # string. Set a custom CodeQL tools directory (path must be absolute).
Eingaben
languages
- Zu analysierende Sprachen
string
. Zulässige Werte: csharp
, cpp
, go
, javascript
java
, python
, ruby
, , swift
.
Die zu analysierende Programmiersprache. Mehrere Sprachen können durch ein Komma getrennt werden.
Sie können die Sprache hier in der Aufgabe festlegen, oder Sie können die Sprache in einer Pipelinevariablen namens advancedsecurity.codeql.language
angeben. Wenn beide festgelegt sind, hat der im Task angegebene Wert Vorrang.
querysuite
- CodeQL Query Suite, die für die Analyse verwendet werden soll.
string
. Zulässige Werte: Select a query suite...
, code-scanning
, security-extended
, security-experimental
, security-and-quality
. Standardwert. Select a query suite...
.
Die Abfragesammlung, d. h. der Regelsatz, der für die Analyse verwendet wird. Sie können den Wert hier in der Aufgabe oder in einer Pipelinevariablen mit dem Namen advancedsecurity.codeql.querysuite
angeben. Wenn beide festgelegt sind, hat der im Task angegebene Wert Vorrang. Der Standardwert gibt Select a query suite...
an, dass die Abfragesammlung in der advancedsecurity.codeql.querysuite
Variablen angegeben werden muss.
ram
- Optionen zum Steuern der RAM-Nutzung in MB
string
.
Dient zum Festlegen der Gesamtmenge des RAM, die vom Abfrageauswerter verwendet werden darf.
Sie können hier in der Aufgabe angeben ram
, oder Sie können sie in einer Pipelinevariable namens advancedsecurity.codeql.ram
angeben. Wenn beide festgelegt sind, hat der im Task angegebene Wert Vorrang.
threads
- Verwenden Sie diese vielzahl von Threads zum Auswerten von Abfragen.
string
.
Du kannst 0 übergeben, um jeweils einen Thread pro Kern auf dem Computer zu verwenden, oder -N, um N Kerne ungenutzt zu lassen. (Es wird allerdings immer noch mindestens ein Thread verwendet.)
Sie können hier in der Aufgabe angeben threads
, oder Sie können sie in einer Pipelinevariable namens advancedsecurity.codeql.threads
angeben. Wenn beide festgelegt sind, hat der im Task angegebene Wert Vorrang.
codeqlpathstoignore
- Festlegen einer Liste von Pfaden, die in der CodeQL-Analyse ausgeschlossen werden sollen
string
.
Sie können mehrere Pfade angeben, die durch Kommas getrennt sind. Die Pfade müssen relativ zum sourcesfolder
Ort sein, in dem CodeQL ausgeführt wird, wobei standardmäßig die Build.SourcesDirectory
Pipelineumgebungsvariable verwendet wird. Wenn Sie z. B. das $(Build.SourcesDirectory)/donotscan
Verzeichnis ignorieren möchten, legen Sie anstelle codeqlpathstoignore: $(Build.SourcesDirectory)/donotscan
von festcodeqlpathstoignore: donotscan
.
codeqlpathstoinclude
- Festlegen einer Liste zusätzlicher Pfade, die in die CodeQL-Analyse einbezogen werden sollen
string
.
Sie können mehrere Pfade angeben, die durch Kommas getrennt sind. Die Pfade müssen relativ zum sourcesfolder
Ort sein, in dem CodeQL ausgeführt wird, wobei standardmäßig die Build.SourcesDirectory
Pipelineumgebungsvariable verwendet wird. Um z. B. das $(Build.SourcesDirectory)/app
Verzeichnis einzuschließen, legen Sie anstelle von codeqlpathstoinclude: $(Build.SourcesDirectory)/app
festcodeqlpathstoinclude: app
.
sourcesfolder
- Legt den Ordner fest, der die zu analysierenden Quellen enthält.
string
.
Wenn Sie diesen Wert nicht angeben, wird der Standardordner quellen für die Pipelineinfrastruktur verwendet (von der Build.SourcesDirectory
Variablen bereitgestellt).
loglevel
- Festlegen der Protokollebene für die CodeQL-Analyse
string
. Zulässige Werte: 0
(Warnung), 1
(Ausführlich), 2
(Debuggen), _
(Standard (Warnung)). Standardwert. _
.
Geben Sie die Protokollierungsebene an.
Sie können hier in der Aufgabe angeben loglevel
, oder Sie können sie in einer Pipelinevariable namens advancedsecurity.codeql.loglevel
angeben. Wenn beide festgelegt sind, hat der im Task angegebene Wert Vorrang, es sei denn, der Standardwert _
für loglevel
in der Aufgabe ist angegeben. Wenn _
angegeben ist, wird der Wert von advancedsecurity.codeql.loglevel
verwendet, sofern verfügbar.
configfilepath
- Verwenden Sie dies, um die benutzerdefinierte Abfrageanalyse in codeql zu aktivieren (Pfad muss absolut sein).
string
.
Wenn kein Pfad angegeben wird, wird die Codeql-Analyse mit Standardabfragen fortgesetzt.
codeqltoolsdirectory
- Festlegen eines benutzerdefinierten CodeQL-Toolsverzeichnisses (Pfad muss absolut sein)
string
.
Wenn der Pfad nicht angegeben wird, wird der Standardwert von $agent_toolsdirectory
verwendet.
Optionen für die Vorgangskontrolle
Alle Vorgänge verfügen zusätzlich zu ihren Eingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.
Ausgabevariablen
Keine.
Hinweise
Für das zu überprüfende Repository muss GitHub Advanced Security für Azure DevOps aktiviert sein.
Wichtig
Diese Aufgabe wird nur mit Azure Repos Git-Repositorys unterstützt.
Die Pipeline muss die Tasks in der folgenden Reihenfolge aufrufen.
- Initialisieren von CodeQL
- AutoBuild (oder Ihre benutzerdefinierten Buildtasks)
- Ausführen der CodeQL-Analyse
Die AutoBuild-Aufgabe ist optional und kann durch Ihre benutzerdefinierten Buildtasks ersetzt werden. Entweder AutoBuild oder Ihre benutzerdefinierten Buildtasks müssen ausgeführt werden, damit Ihr Projekt analysiert werden kann.
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Klassischer Build, klassisches Release |
Wird ausgeführt auf | Agent, DeploymentGroup |
Forderungen | Keine |
Capabilities | Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag. |
Befehlseinschränkungen | Any |
Setzbare Variablen | Any |
Agent-Version | Alle unterstützten Agent-Versionen. |
Aufgabenkategorie | Entwickeln |