Skip to main content

Configuración de un área de trabajo de CodeQL

Cuando trabaje con CodeQL, necesita acceso a las bibliotecas y consultas estándar.

Configuración de un área de trabajo de CodeQL

Hay varias maneras diferentes de conceder a la extensión acceso a las bibliotecas y consultas estándar desde el repositorio github/codeql:

  • Use el área de trabajo de inicio de CodeQL, que contiene una serie de directorios denominados con el formato codeql-custom-queries-LANGUAGE. Estos están listos para empezar a desarrollar sus propias consultas personalizadas para cada lenguaje, mediante las bibliotecas estándar. También hay algunas consultas de ejemplo para empezar. Éste es el método recomendado.

  • Actualice un área de trabajo existente para CodeQL. Este método se recomienda para usuarios avanzados.

  • Los usuarios de CodeQL CLI pueden abrir el directorio que contiene su archivo extraído de CodeQL CLI.

Nota: El repositorio de CodeQL se incluye como submódulo en el área de trabajo de inicio. Debe usar git submodule update --remote periódicamente para mantener actualizados los submódulos y asegurarse de que siguen siendo compatibles con las versiones más recientes de la extensión VS Code y la CodeQL CLI.

  1. Clone el repositorio vscode-codeql-starter en el equipo. Asegúrese de incluir los submódulos, ya sea mediante git clone --recursive, o mediante git submodule update --init --remote después de la clonación.

  2. En VS Code, haga clic en Archivo y, a continuación , en Abrir área de trabajo desde archivo... para abrir el archivo vscode-codeql-starter.code-workspace desde la desprotección del repositorio del área de trabajo.

Opción 2: Actualización de un área de trabajo existente para CodeQL (avanzado)

  1. En VS Code, seleccione Archivo, Agregar carpeta al área de trabajo... y busque la desprotección local del repositorio de CodeQL.

  2. Cree un nuevo directorio por idioma de destino para contener consultas y bibliotecas personalizadas, mediante las opciones Nueva carpeta o Agregar carpeta al área de trabajo....

  3. Cree un archivo qlpack.yml en cada directorio de idioma de destino (la rama main de github/codeql ya tiene estos archivos). Esto indica a la CodeQL CLI el idioma de destino de ese directorio y cuáles son sus dependencias. CodeQL buscará las dependencias en todos los directorios de área de trabajo abiertos o en la ruta de búsqueda del usuario.

    Por ejemplo, para que un directorio personalizado CodeQL denominado my-custom-cpp-pack dependa de la biblioteca estándar de CodeQL para C++, cree un archivo qlpack.yml con el siguiente contenido:

    name: my-custom-cpp-pack
    version: 0.0.0
    libraryPathDependencies: codeql/cpp-all
    

    Para obtener más información sobre por qué necesita agregar un archivo qlpack.yml, vea “Personalización del análisis con paquetes de CodeQL”.

Opción 3: Abra el directorio que contiene el archivo de CodeQL CLI extraído

Nota: Para esta opción, debe configurar la CodeQL CLI. Para obtener más información, vea «Configuración de la CLI de CodeQL».

En VS Code, abra el directorio donde extrajo el archivo .zip de CodeQL CLI para crear un directorio de CodeQL (por ejemplo codeql-home).