Update coverage.py parser #287
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
pull_request: | |
branches: | |
- master | |
push: | |
tags: | |
- 'v*' | |
permissions: | |
contents: write | |
jobs: | |
build-windows: | |
runs-on: windows-2022 | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Install Crystal | |
uses: crystal-lang/install-crystal@v1 | |
with: | |
crystal: 1.9 | |
- name: Build SQLite3 static library | |
run: "scripts/sqlite3-static.ps1" | |
- name: Install shards dependencies | |
run: shards install --production | |
- name: Build coverage reporter CLI | |
run: crystal build src\cli.cr -o dist\coveralls --release --static --no-debug --progress | |
- name: Prepare distribution archive | |
run: | | |
cd dist | |
$vsbase = vswhere.exe -products * -property installationPath | |
& "$vsbase\VC\Tools\MSVC\14.37.32822\bin\HostX64\x64\dumpbin.exe" /dependents coveralls.exe | |
tar -acf coveralls-windows.zip coveralls.exe | |
- name: Upload exe | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coveralls-windows.exe | |
path: dist/coveralls.exe | |
if-no-files-found: error | |
- name: Upload zip | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coveralls-windows.zip | |
path: dist/coveralls-windows.zip | |
if-no-files-found: error | |
build-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Install Crystal | |
uses: crystal-lang/install-crystal@v1 | |
with: | |
crystal: 1.9 | |
- name: Build (Linux) | |
run: make release_linux | |
- name: Upload binary | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coveralls-linux | |
path: dist/coveralls | |
if-no-files-found: error | |
- name: Upload tar.gz | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coveralls-linux.tar.gz | |
path: dist/coveralls-linux.tar.gz | |
if-no-files-found: error | |
release: | |
runs-on: ubuntu-latest | |
needs: [build-windows, build-linux] | |
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Fetch tags | |
run: git fetch --force --tags | |
- uses: actions/download-artifact@v3 | |
with: | |
path: artifacts/ | |
- name: Prepare files for release | |
run: | | |
mkdir release/ | |
find artifacts/ -type f -exec cp \{} release/ \; | |
cd release/ | |
mv coveralls coveralls-linux | |
mv coveralls.exe coveralls-windows.exe | |
sha256sum * > coveralls-checksums.txt | |
- name: Create Github release | |
env: | |
TAG: ${{ github.ref }} | |
GH_TOKEN: ${{ github.token }} | |
run: > | |
cd release/; | |
gh release create ${TAG} | |
'coveralls-linux#coveralls-linux' | |
'coveralls-linux.tar.gz#coveralls-linux.tar.gz' | |
'coveralls-windows.exe#coveralls-windows.exe' | |
'coveralls-windows.zip#coveralls-windows.zip' | |
'coveralls-checksums.txt#coveralls-checksums.txt' | |
--generate-notes | |
homebrew: | |
runs-on: ubuntu-latest | |
needs: [release] | |
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') | |
steps: | |
- name: Update Homebrew formula | |
uses: dawidd6/action-homebrew-bump-formula@v3 | |
with: | |
tap: coverallsapp/coveralls | |
formula: coveralls | |
token: ${{ secrets.HOMEBREW_TOKEN }} | |