Partager via


AdvancedSecurity-Codeql-Init@1 - Tâche Advanced Security Initialize CodeQL v1

Initialise la base de données CodeQL en préparation de la génération.

Vous devez avoir activé GitHub Advanced Security pour Azure DevOps pour le dépôt en cours d’analyse.

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).

Entrées

languages - Langages à analyser
string. Valeurs autorisées : csharp, cpp, go, java, pythonjavascript, , ruby. swift

Langage de programmation à analyser. Plusieurs langues peuvent être séparées par une virgule.

Vous pouvez définir la langue ici dans la tâche, ou vous pouvez spécifier la langue dans une variable de pipeline nommée advancedsecurity.codeql.language. Si les deux sont définies, la valeur spécifiée dans la tâche est prioritaire.


querysuite - CodeQL Query Suite à utiliser pour l’analyse.
string. Valeurs autorisées : Select a query suite..., code-scanning, security-extended, security-experimental. security-and-quality Valeur par défaut : Select a query suite....

La suite de requêtes, c’est-à-dire l’ensemble de règles, utilisée pour l’analyse. Vous pouvez spécifier la valeur ici dans la tâche, ou vous pouvez la spécifier dans une variable de pipeline nommée advancedsecurity.codeql.querysuite. Si les deux sont définies, la valeur spécifiée dans la tâche est prioritaire. La valeur par défaut indique Select a query suite... que la suite de requêtes doit être spécifiée dans la advancedsecurity.codeql.querysuite variable.


ram - Options permettant de contrôler l’utilisation de la RAM en Mo
string.

Définit la quantité totale de RAM que l’évaluateur de requête doit être autorisé à utiliser.

Vous pouvez spécifier ram ici dans la tâche, ou vous pouvez le spécifier dans une variable de pipeline nommée advancedsecurity.codeql.ram. Si les deux sont définies, la valeur spécifiée dans la tâche est prioritaire.


threads - Utilisez ces nombreux threads pour évaluer les requêtes
string.

Vous pouvez passer 0 pour utiliser un thread par cœur sur la machine ou -N pour laisser N cœurs inutilisés (sauf si au moins un thread est toujours utilisé).

Vous pouvez spécifier threads ici dans la tâche, ou vous pouvez le spécifier dans une variable de pipeline nommée advancedsecurity.codeql.threads. Si les deux sont définies, la valeur spécifiée dans la tâche est prioritaire.


codeqlpathstoignore - Définir une liste de chemins d’accès à exclure dans l’analyse CodeQL
string.

Vous pouvez fournir plusieurs chemins séparés par des virgules. Les chemins d’accès doivent être relatifs à l’emplacement sourcesfolder où CodeQL est en cours d’exécution, qui est défini par défaut sur la variable d’environnement de Build.SourcesDirectory pipeline. Par exemple, pour ignorer le $(Build.SourcesDirectory)/donotscan répertoire, définissez codeqlpathstoignore: donotscan plutôt que codeqlpathstoignore: $(Build.SourcesDirectory)/donotscan.


codeqlpathstoinclude - Définir une liste de chemins d’accès supplémentaires à inclure dans l’analyse CodeQL
string.

Vous pouvez fournir plusieurs chemins séparés par des virgules. Les chemins d’accès doivent être relatifs à l’emplacement sourcesfolder où CodeQL est en cours d’exécution, qui est défini par défaut sur la variable d’environnement de Build.SourcesDirectory pipeline. Par exemple, pour inclure le $(Build.SourcesDirectory)/app répertoire, définissez codeqlpathstoinclude: app plutôt que codeqlpathstoinclude: $(Build.SourcesDirectory)/app.


sourcesfolder - Définit le dossier qui contient les sources à analyser
string.

Si vous ne fournissez pas cette valeur, le dossier sources par défaut de l’infrastructure de pipeline est utilisé (fourni par la Build.SourcesDirectory variable).


loglevel - Définir le niveau de journal pour l’analyse CodeQL
string. Valeurs autorisées : 0 (Avertissement), 1 (Détaillé), 2 (Débogage), _ (Par défaut (Avertissement)). Valeur par défaut : _.

Spécifiez le niveau de journalisation.

Vous pouvez spécifier loglevel ici dans la tâche, ou vous pouvez le spécifier dans une variable de pipeline nommée advancedsecurity.codeql.loglevel. Si les deux sont définis, la valeur spécifiée dans la tâche est prioritaire, sauf si la valeur _ par défaut pour loglevel dans la tâche est spécifiée. Si _ est spécifié, la valeur de advancedsecurity.codeql.loglevel est utilisée si disponible.


configfilepath - Utilisez cette option pour activer l’analyse de requête personnalisée dans codeql (le chemin doit être absolu).
string.

Si le chemin d’accès n’est pas fourni, l’analyse codeql se poursuit avec les requêtes par défaut.


codeqltoolsdirectory - Définir un répertoire d’outils CodeQL personnalisé (le chemin doit être absolu)
string.

Si le chemin d’accès n’est pas fourni, la valeur par défaut de $agent_toolsdirectory est utilisée.


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

Vous devez avoir activé GitHub Advanced Security pour Azure DevOps pour le dépôt en cours d’analyse.

Important

Cette tâche est prise en charge uniquement avec Azure Repos dépôts Git.

Le pipeline doit appeler les tâches dans l’ordre suivant.

  1. Initialiser CodeQL
  2. AutoBuild (ou vos tâches de build personnalisées)
  3. Effectuer une analyse CodeQL

La tâche AutoBuild est facultative et peut être remplacée par vos tâches de build personnalisées. AutoBuild ou vos tâches de build personnalisées doivent être exécutées pour que votre projet soit analysé.

Configuration requise

Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent Toutes les versions d’agent prises en charge.
Catégorie de la tâche Build

Voir aussi