.github/workflows/codeclimate.yml
name: CI coverage
on:
push:
branches:
- master
jobs:
codeclimate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Setup cache
uses: actions/cache@v1
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Setup node
uses: actions/setup-node@v1
with:
node-version: 12
- run: npm ci
- run: npx lerna bootstrap
- run: npx lerna run coverage
- name: codeclimate
run: |
curl -fsSL https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
chmod +x ./cc-test-reporter
for f in packages/*; do
if [ -f $f/coverage/lcov.info ]; then
echo "$f"
sed -i "s!SF:!SF:$f/!g" "$f/coverage/lcov.info"
./cc-test-reporter format-coverage -t lcov -o "coverage/coverage.${f//\//-}.json" "$f/coverage/lcov.info"
fi
done;
./cc-test-reporter sum-coverage -o coverage/coverage.total.json coverage/coverage.*.json;
./cc-test-reporter upload-coverage -i coverage/coverage.total.json;
env:
CC_TEST_REPORTER_ID: 18908f02e2f04c41f84ac447800fdca9a1fae3a15ba319228a4484408d827111