28 lines
823 B
Bash
28 lines
823 B
Bash
|
#!/usr/bin/env bash
|
||
|
# Upload code coverage reports to codecov.io.
|
||
|
# Multiple coverage files from multiple languages are accepted and aggregated after upload.
|
||
|
# Python coverage, as well as PowerShell and Python stubs can all be uploaded.
|
||
|
|
||
|
set -o pipefail -eu
|
||
|
|
||
|
output_path="$1"
|
||
|
|
||
|
curl --silent --show-error https://codecov.io/bash > codecov.sh
|
||
|
|
||
|
for file in "${output_path}"/reports/coverage*.xml; do
|
||
|
name="${file}"
|
||
|
name="${name##*/}" # remove path
|
||
|
name="${name##coverage=}" # remove 'coverage=' prefix if present
|
||
|
name="${name%.xml}" # remove '.xml' suffix
|
||
|
|
||
|
bash codecov.sh \
|
||
|
-f "${file}" \
|
||
|
-n "${name}" \
|
||
|
-X coveragepy \
|
||
|
-X gcov \
|
||
|
-X fix \
|
||
|
-X search \
|
||
|
-X xcode \
|
||
|
|| echo "Failed to upload code coverage report to codecov.io: ${file}"
|
||
|
done
|