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:
- Executando o processo de build em um contêiner separado para 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 seu administrador do site.
Para obter mais informações sobre como especificar etapas de build, confira Verificação de código do CodeQL para linguagens compiladas.