AdvancedSecurity-Codeql-Init@1 — zaawansowane zabezpieczenia inicjowania koduQL w wersji 1
Inicjuje bazę danych CodeQL w ramach przygotowań do utworzenia.
Musisz mieć włączoną GitHub Advanced Security dla usługi Azure DevOps dla skanowanego repozytorium.
Składnia
# 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).
Dane wejściowe
languages
- Języki do analizowania
string
. Dozwolone wartości: csharp
, , go
cpp
, java
javascript
python
, ruby
, . swift
Język programowania do przeanalizowania. Wiele języków można rozdzielić przecinkami.
Język można ustawić tutaj w zadaniu lub określić język w zmiennej potoku o nazwie advancedsecurity.codeql.language
. Jeśli oba są ustawione, wartość określona w zadaniu ma pierwszeństwo.
querysuite
- CodeQL Query Suite do użycia na potrzeby analizy.
string
. Dozwolone wartości: Select a query suite...
, , security-extended
code-scanning
, security-experimental
, security-and-quality
. Wartość domyślna: Select a query suite...
.
Zestaw zapytań, tj. zestaw reguł używany do analizy. Możesz określić wartość w tym zadaniu lub określić ją w zmiennej potoku o nazwie advancedsecurity.codeql.querysuite
. Jeśli oba są ustawione, wartość określona w zadaniu ma pierwszeństwo. Wartość domyślna wskazuje Select a query suite...
, że pakiet zapytań musi być określony w zmiennej advancedsecurity.codeql.querysuite
.
ram
- Opcje kontrolowania użycia pamięci RAM w MB
string
.
Ustaw całkowitą ilość pamięci RAM, która powinna być używana przez ewaluatora zapytań.
ram
Możesz określić tutaj w zadaniu lub określić go w zmiennej potoku o nazwie advancedsecurity.codeql.ram
. Jeśli oba są ustawione, wartość określona w zadaniu ma pierwszeństwo.
threads
- Użyj tych wielu wątków do oceny zapytań
string
.
Możesz przekazać 0, aby użyć jednego wątku na rdzeń na maszynie lub -N, aby pozostawić nieużywane rdzenie N (z wyjątkiem nadal używać co najmniej jednego wątku).
threads
Możesz określić tutaj w zadaniu lub określić go w zmiennej potoku o nazwie advancedsecurity.codeql.threads
. Jeśli oba są ustawione, wartość określona w zadaniu ma pierwszeństwo.
codeqlpathstoignore
- Ustawianie listy ścieżek do wykluczenia w analizie CodeQL
string
.
Można podać wiele ścieżek rozdzielonych przecinkami. Ścieżki muszą być względne względem lokalizacji, w sourcesfolder
której jest uruchomiony kodQL, który jest domyślnie domyślny dla zmiennej środowiskowej potoku Build.SourcesDirectory
. Aby na przykład zignorować $(Build.SourcesDirectory)/donotscan
katalog, ustaw codeqlpathstoignore: donotscan
wartość zamiast codeqlpathstoignore: $(Build.SourcesDirectory)/donotscan
.
codeqlpathstoinclude
- Ustawianie listy dodatkowych ścieżek do uwzględnienia w analizie CodeQL
string
.
Można podać wiele ścieżek rozdzielonych przecinkami. Ścieżki muszą być względne względem lokalizacji, w sourcesfolder
której jest uruchomiony kodQL, który jest domyślnie domyślny dla zmiennej środowiskowej potoku Build.SourcesDirectory
. Na przykład aby uwzględnić $(Build.SourcesDirectory)/app
katalog, ustaw codeqlpathstoinclude: app
wartość zamiast codeqlpathstoinclude: $(Build.SourcesDirectory)/app
.
sourcesfolder
- Ustawia folder zawierający źródła do przeanalizowania
string
.
Jeśli ta wartość nie zostanie podana, zostanie użyty domyślny folder źródeł infrastruktury potoku (dostarczony przez zmienną Build.SourcesDirectory
).
loglevel
- Ustawianie poziomu dziennika dla analizy CodeQL
string
. Dozwolone wartości: 0
(Ostrzeżenie), (Pełne), 1
2
(Debugowanie), _
(Domyślne (Ostrzeżenie)). Wartość domyślna: _
.
Określ poziom rejestrowania.
loglevel
Możesz określić tutaj w zadaniu lub określić go w zmiennej potoku o nazwie advancedsecurity.codeql.loglevel
. Jeśli oba są ustawione, wartość określona w zadaniu ma pierwszeństwo, chyba że zostanie określona wartość _
loglevel
domyślna dla zadania. Jeśli _
zostanie określona, wartość z advancedsecurity.codeql.loglevel
jest używana, jeśli jest dostępna.
configfilepath
- Użyj tej opcji, aby włączyć niestandardową analizę zapytań w kodzieql (ścieżka musi być bezwzględna).
string
.
Jeśli ścieżka nie zostanie podana, analiza codeql będzie kontynuowana z zapytaniami domyślnymi.
codeqltoolsdirectory
- Ustawianie niestandardowego katalogu narzędzi CodeQL (ścieżka musi być bezwzględna)
string
.
Jeśli ścieżka nie zostanie podana, zostanie użyta wartość domyślna $agent_toolsdirectory
.
Opcje sterowania zadania
Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz Opcje sterowania i typowe właściwości zadań.
Zmienne wyjściowe
Brak.
Uwagi
Musisz mieć włączoną GitHub Advanced Security dla usługi Azure DevOps dla skanowanego repozytorium.
Ważne
To zadanie jest obsługiwane tylko w przypadku repozytoriów git Azure Repos.
Potok musi wywoływać zadania w następującej kolejności.
- Inicjowanie koduQL
- AutoBuild (lub niestandardowe zadania kompilacji)
- Wykonywanie analizy koduQL
Zadanie autobuild jest opcjonalne i może zostać zastąpione niestandardowymi zadaniami kompilacji. Aby projekt był analizowany, należy uruchomić zadania autobuild lub niestandardowe zadania kompilacji.
Wymagania
Wymaganie | Opis |
---|---|
Typy potoków | YAML, kompilacja klasyczna, wersja klasyczna |
Działa na | Agent, DeploymentGroup |
Wymagania | Brak |
Możliwości | To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu. |
Ograniczenia poleceń | Dowolne |
Zmienne w formie tabeli settable | Dowolne |
Wersja agenta | Wszystkie obsługiwane wersje agentów. |
Kategoria zadania | Kompilacja |