Dev ops #31
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
# main ci workflow is to ensure the codebase builds. | |
# all unit tests must pass for the workflow to complete successfully. | |
name: main-ci | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
schedule: | |
- cron: "0 7 * * *" | |
workflow_dispatch: | |
permissions: | |
contents: read | |
env: | |
DOTNET_VERSION: '8.0' | |
jobs: | |
build: | |
runs-on: windows-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Setup environment | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: ${{ env.DOTNET_VERSION }} | |
- name: Install dependencies | |
run: dotnet restore | |
- name: Install coverlet globally | |
run: dotnet tool install --global coverlet.console | |
- name: Store global tools in PATH | |
run: | | |
echo "PATH=$(dotnet --tool-path);$PATH" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append | |
echo "::add-path::$(dotnet --tool-path)" | |
- name: Build | |
run: dotnet build | |
- name: Run tests with coverlet | |
run: dotnet test /p:CollectCoverage=true | |
continue-on-error: true | |
- name: Generate coverage report | |
run: dotnet coverlet --target "dotnet" --targetargs "test /p:CollectCoverage=true" | |
continue-on-error: true | |
- name: Upload coverage reports to Codecov | |
uses: codecov/codecov-action@v3 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |