Se o fluxo de trabalho falhar com Error: "No source code was seen during the build" ou The process '/opt/hostedtoolcache/CodeQL/0.0.0-20200630/x64/codeql/codeql' failed with exit code 32, isso indicará que CodeQL não foi possível monitorar seu código. Há seis possíveis motivos para isso:
-
Nenhum idioma com suporte: O repositório pode não conter código-fonte escrito em idiomas com CodeQLsuporte. Verifique a lista de idiomas com suporte e, se esse for o caso, remova o CodeQL fluxo de trabalho. Para saber mais, confira Verificação de código com CodeQL.
-
Nenhum código analisável nas linguagens detectadas: a detecção automática da linguagem identificou uma linguagem compatível, mas não há código analisável dessa linguagem no repositório. Um exemplo típico é quando o serviço de detecção de linguagem encontra um arquivo associado a determinada linguagem de programação, como um arquivo
.hou.gyp, mas nenhum código executável correspondente está presente no repositório. Para resolver o problema, defina manualmente as linguagens que deseja analisar atualizando a lista de linguagens na matrizlanguage. Por exemplo, a configuração a seguir analisará somente Go, e 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-typescript']Para obter mais informações, confira a extração de fluxo de trabalho em Algumas linguagens não foram analisadas com a configuração avançada do CodeQL.
-
Falha na compilação de uma linguagem compilada: Seu code scanning fluxo de trabalho tenta compilar uma linguagem compilada (C, C++, C#, Go ou Java), mas o código não foi compilado. Quando um fluxo de trabalho especifica
build-mode: autobuildpara um idioma ou contém umaautobuildetapa, CodeQL faz o melhor esforço para detectar um método de build adequado e criar seu código. O processo deautobuildpode não conseguir compilar o seu código, dependendo do seu ambiente de desenvolvimento. A compilação também pode falhar se você removeu a etapaautobuilde não incluiu as etapas de build manualmente. Para obter mais informações sobre como especificar etapas de build, confira Verificação de código do CodeQL para linguagens compiladas. -
Componentes armazenados em cache não detectados: Seu fluxo de trabalho cria uma linguagem compilada (C, C++, C#, Go ou Java) para criar um CodeQL banco de dados para análise, mas partes do seu build são armazenadas em cache para melhorar o desempenho (provavelmente ocorrerão com sistemas de build como Gradle ou Bazel). Como CodeQL observa a atividade do compilador para entender os fluxos de dados em um repositório, CodeQL requer que uma compilação completa ocorra para executar a análise.
-
Compilação fora das etapas
initeanalyze: seu fluxo de trabalho cria uma linguagem compilada (C, C++, C#, Go ou Java), mas a compilação não ocorre entre as etapasiniteanalyzeno fluxo de trabalho. CodeQL requer que o build ocorra entre essas duas etapas para observar a atividade do compilador e executar a análise. -
Compilação não detectada por CodeQL: O código compilado (em C, C++, C#, Go ou Java) foi compilado com êxito, mas CodeQL não pôde detectar as invocações do compilador. As causas mais comuns são:
- Execute seu processo de compilação em um contêiner separado de CodeQL. Para saber mais, confira Executar a varredura de código CodeQL em um contêiner.
- Compilação usando um sistema de compilação distribuído externo ao GitHub Actions, utilizando um processo de daemon.
- CodeQL não está ciente do compilador específico que você está usando.
Se você encontrar outro problema com seu compilador ou configuração específico, entre em contato nos por meio do portal .
Para obter mais informações sobre como especificar etapas de build, confira Verificação de código do CodeQL para linguagens compiladas.