|
@ -0,0 +1,51 @@ |
|
|
|
|
|
name: CodeClimate |
|
|
|
|
|
on: |
|
|
|
|
|
workflow_run: |
|
|
|
|
|
workflows: ["Build"] |
|
|
|
|
|
types: |
|
|
|
|
|
- completed |
|
|
|
|
|
|
|
|
|
|
|
jobs: |
|
|
|
|
|
code-climate: |
|
|
|
|
|
runs-on: ubuntu-latest |
|
|
|
|
|
steps: |
|
|
|
|
|
- name: checkout repository |
|
|
|
|
|
uses: actions/checkout@v2 |
|
|
|
|
|
- name: Set up Code Climate test reporter |
|
|
|
|
|
env: |
|
|
|
|
|
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} |
|
|
|
|
|
run: | |
|
|
|
|
|
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter |
|
|
|
|
|
chmod +x ./cc-test-reporter |
|
|
|
|
|
./cc-test-reporter before-build |
|
|
|
|
|
- name: Download coverage |
|
|
|
|
|
uses: actions/github-script@v4.0.2 |
|
|
|
|
|
with: |
|
|
|
|
|
script: | |
|
|
|
|
|
var artifacts = await github.actions.listWorkflowRunArtifacts({ |
|
|
|
|
|
owner: context.repo.owner, |
|
|
|
|
|
repo: context.repo.repo, |
|
|
|
|
|
run_id: ${{github.event.workflow_run.id }}, |
|
|
|
|
|
}); |
|
|
|
|
|
var matchArtifact = artifacts.data.artifacts.filter((artifact) => { |
|
|
|
|
|
return artifact.name == "coverage" |
|
|
|
|
|
})[0]; |
|
|
|
|
|
var download = await github.actions.downloadArtifact({ |
|
|
|
|
|
owner: context.repo.owner, |
|
|
|
|
|
repo: context.repo.repo, |
|
|
|
|
|
artifact_id: matchArtifact.id, |
|
|
|
|
|
archive_format: 'zip', |
|
|
|
|
|
}); |
|
|
|
|
|
var fs = require('fs'); |
|
|
|
|
|
fs.writeFileSync('${{github.workspace}}/coverage.zip', Buffer.from(download.data)); |
|
|
|
|
|
- name: Unzip coverage |
|
|
|
|
|
run: | |
|
|
|
|
|
mkdir coverage |
|
|
|
|
|
cd coverage |
|
|
|
|
|
unzip ../coverage.zip |
|
|
|
|
|
- name: Code Climate test reporter |
|
|
|
|
|
env: |
|
|
|
|
|
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} |
|
|
|
|
|
GIT_BRANCH: ${{github.event.workflow_run.head_branch }} |
|
|
|
|
|
GIT_COMMIT_SHA: ${{github.event.workflow_run.head_commit.id }} |
|
|
|
|
|
run: ./cc-test-reporter after-build --exit-code $? |