Skip to main content

Esta versión de GitHub Enterprise Server se discontinuará el 2024-03-07. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener rendimiento mejorado, seguridad mejorada y nuevas características, actualice a la versión más reciente de GitHub Enterprise Server. Para obtener ayuda con la actualización, póngase en contacto con el soporte técnico de GitHub Enterprise.

Error: "Sin código fuente durante la compilación"

Cuando CodeQL no encuentra código fuente, es necesario resolver este problema para desbloquear el análisis de code scanning.

Si se produce un error en el flujo de trabajo con Error: "No source code was seen during the build" o The process '/opt/hostedtoolcache/CodeQL/0.0.0-20200630/x64/codeql/codeql' failed with exit code 32, esto indica que CodeQL no ha podido supervisar el código. Hay seis razones posibles para esto:

  1. Es posible que el repositorio no contenga código fuente escrito en lenguajes admitidos por CodeQL. Comprueba la lista de lenguajes admitidos y, si este es el caso, quita el flujo de trabajo de CodeQL. Para obtener más información, vea «Acerca del examen de código con CodeQL».

  2. La detección automática del lenguaje identificó un lenguaje compatible, pero no hay código analizable en dicho lenguaje dentro del repositorio. Un ejemplo típico es cuando nuestro servicio de detección de lenguaje encuentra un archivo asociado a un lenguaje de programación específico, como un archivo .h o .gyp, pero en el repositorio no existe el código ejecutable correspondiente. Para resolver el problema, puede definir manualmente los lenguajes que quiere analizar si actualiza la lista de lenguajes en la matriz language. Por ejemplo, la siguiente configuración analizará únicamente a Go y a Javascript.

    strategy:
      fail-fast: false
      matrix:
        # Override automatic language detection by changing the list below.
        # Supported options are listed in a comment in the default workflow.
        language: ['go', 'javascript' ]
    

    Para obtener más información, consulte el extracto de flujo de trabajo en "Algunos lenguajes no se analizaron con la configuración avanzada de CodeQL".

  3. Tu flujo de trabajo de code scanning está analizando un lenguaje compilado (C, C++, C#, Go o Java), pero el código no se compiló. De manera predeterminada, el flujo de trabajo de análisis de CodeQL contiene un paso autobuild, pero este paso representa un proceso de mejor esfuerzo y podría no compilar el código de forma correcta, en función del entorno de compilación específico. También se podría producir un error en la compilación si ha eliminado el paso autobuild y no ha incluido manualmente los pasos de compilación. Para obtener más información sobre cómo especificar los pasos de compilación, consulta "Análisis de código de CodeQL para lenguajes compilados".

  4. Tu flujo de trabajo está analizando un lenguaje compilado (C, C++, C#, Go o Java), pero algunas partes de tu compilación se almacenan en caché para mejorar el rendimiento (esto muy probablemente ocurra con los sistemas de compilación como Gradle o Bazel). Ya que CodeQL observa la actividad del compilador para entender los flujos de datos en un repositorio, CodeQL requiere que suceda una compilación completa para poder llevar a cabo este análisis.

  5. El flujo de trabajo analiza un lenguaje compilado (C, C++, C#, Go o Java),pero no se produce ninguna compilación entre los pasos init y analyze del flujo de trabajo. CodeQL requiere que tu compilación tome lugar entre estos dos pasos para poder observar la actividad del compilador y llevar a cabo el análisis.

  6. Tu código compilado (en C, C++, C#, Go o Java) se compiló con éxito, pero CodeQL no pudo detectar las invocaciones del compilador. Las causas más comunes son:

    • Ejecutar tu proceso de compilación en un contenedor separado a CodeQL. Para obtener más información, vea «Ejecutarel escaneo de código de CodeQL en un contenedor».
    • Compilar utilizando un sistema de compilación distribuida externo a GitHub Actions, utilizando un proceso de daemon.
    • CodeQL no está consciente del compilador específico que estás utilizando.

Si encuentras otro problema con tu compilador específico o con tu configuración, contacta a el administrador del sitio.

Para obtener más información sobre cómo especificar los pasos de compilación, consulta "Análisis de código de CodeQL para lenguajes compilados".