Closed4

GitHub Actionsの CodeQL が "No code found during the build" とエラーを出すようになった

山田(ymd)山田(ymd)

GitHub Actions で利用している CodeQL が失敗するようになってしまった。

  1. 問題なく動いていた最後のジョブ
  2. エラーで停止し始めた最初のジョブ

ポイント

  • どちらも、 github/codeql-action/analyze@v1 を指定
  • 失敗しているのは、 Finalizing cpp となっているステップ(?)
  • よくよく見ると、実際に実行されているコマンドは異なる (バージョン指定とは・・・)
    • /opt/hostedtoolcache/CodeQL/0.0.0-20200826/x64/codeql/codeql
    • /opt/hostedtoolcache/CodeQL/0.0.0-20201127/x64/codeql/codeql
山田(ymd)山田(ymd)

エラーメッセージに記載されているドキュメントを見ると、コンパイルをうまく追えていないことが原因であることが示唆されている

https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/troubleshooting-the-codeql-workflow#no-code-found-during-the-build

このプロジェクト (cpprb) は、Python (CPython) で利用できるパッケージのため、ビルドプロセスは setuptools にまかせている。(そして、 initanalyze 間でちゃんとビルドしている。)

特殊なのかもしれないが、これまでは問題なかったものが、エラーになっているように見えるので、公式側のバグの可能性も含めて、要調査。

山田(ymd)山田(ymd)

公式に issue を立てて問い合わせてみた。バグなのかこちらの間違いなのか反応待ち。

https://github.com/github/codeql-action/issues/353

山田(ymd)山田(ymd)

上記の issue に公式から回答あり、取り急ぎ解決した。

GitHub Action の matrix 戦略を利用して、C++ と Python に分割して別々にスキャンすると動作する。

一緒にしている際に失敗する詳細な原因については不明だが、公式の内部 issue としてくれるらしい。

このスクラップは2021/01/05にクローズされました