gitlab には、gitlab ウィジェットに表示されるはずのコード気候レポートを生成するパイプラインがあります。
レポートが正常に生成されました (追加しましcat code-quality.json
たが、「codeclimate レポートの読み込みに失敗しました」というメッセージが表示されます。
gitlab ページのソース コードを確認すると、問題の原因となっているコードを含むと思われる文字列が表示されます。
window.gl.mrWidgetData = { … ,"codeclimate":{"head_path":"/needhelp/needhelp-web/-/jobs/123456789/artifacts/download?file_type=codequality\u0026proxy=true","base_path":"/needhelp/needhelp-web/-/jobs/987654321/artifacts/download?file_type=codequality\u0026proxy=true"},"…
を付けずに URL バーにパスをコピーして貼り付ける\u0026proxy=true
と、ファイルが正常にダウンロードされます。
ここに.gitlab-ci.yml
ファイルを生成する設定があります。
static analysis:
stage: test
interruptible: true
image:
name: $CI_QA_IMAGE
entrypoint: [""]
script:
- composer install --prefer-dist --no-progress --classmap-authoritative --quiet
- php bin/console --env=test cache:warmup
- |
./vendor/bin/phpstan analyze -c phpstan.neon --no-progress --memory-limit 1G --error-format=gitlab > code-quality.json && phpstan_error=0 || phpstan_error=1
if [[ -n $phpstan_error ]]; then
echo -e '\e[103;1mphpstan detected errors.\e[0m'
ls -lh code-quality.json
cat code-quality.json
./vendor/bin/phpstan analyze -c phpstan.ci.neon --no-progress --memory-limit 1G
else
echo -e '\e[92;1mphpstan detected no error with levelmax configuration.\e[0m'
fi
- bin/console lint:twig --env=test
- bin/console lint:container --env=test
- bin/console lint:xliff translations/ --env=test
artifacts:
when: always
reports:
codequality: ./code-quality.json
このコードのどこが間違っているか知っていますか? または、問題がなければ、これを修正するにはどこを見ればよいですか?