зеркало из https://github.com/github/codeql.git
72 строки
2.5 KiB
YAML
72 строки
2.5 KiB
YAML
name: "Publish framework coverage as metrics"
|
|
|
|
on:
|
|
schedule:
|
|
- cron: '5 0 * * *'
|
|
push:
|
|
branches:
|
|
- main
|
|
workflow_dispatch:
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- ".github/workflows/csv-coverage-metrics.yml"
|
|
- ".github/actions/fetch-codeql/action.yml"
|
|
|
|
jobs:
|
|
publish-java:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- name: Setup CodeQL
|
|
uses: ./.github/actions/fetch-codeql
|
|
- name: Create empty database
|
|
run: |
|
|
DATABASE="${{ runner.temp }}/java-database"
|
|
PROJECT="${{ runner.temp }}/java-project"
|
|
mkdir -p "$PROJECT/src/tmp/empty"
|
|
echo "class Empty {}" >> "$PROJECT/src/tmp/empty/Empty.java"
|
|
codeql database create "$DATABASE" --language=java --source-root="$PROJECT" --command 'javac src/tmp/empty/Empty.java'
|
|
- name: Capture coverage information
|
|
run: |
|
|
DATABASE="${{ runner.temp }}/java-database"
|
|
codeql database analyze --format=sarif-latest --output=metrics-java.sarif -- "$DATABASE" ./java/ql/src/Metrics/Summaries/FrameworkCoverage.ql
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: metrics-java.sarif
|
|
path: metrics-java.sarif
|
|
retention-days: 20
|
|
- name: Upload SARIF file
|
|
uses: github/codeql-action/upload-sarif@main
|
|
with:
|
|
sarif_file: metrics-java.sarif
|
|
|
|
publish-csharp:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- name: Setup CodeQL
|
|
uses: ./.github/actions/fetch-codeql
|
|
- name: Create empty database
|
|
run: |
|
|
DATABASE="${{ runner.temp }}/csharp-database"
|
|
PROJECT="${{ runner.temp }}/csharp-project"
|
|
dotnet new classlib --language=C# --output="$PROJECT"
|
|
codeql database create "$DATABASE" --language=csharp --source-root="$PROJECT" --command 'dotnet build /t:rebuild csharp-project.csproj'
|
|
- name: Capture coverage information
|
|
run: |
|
|
DATABASE="${{ runner.temp }}/csharp-database"
|
|
codeql database analyze --format=sarif-latest --output=metrics-csharp.sarif -- "$DATABASE" ./csharp/ql/src/Metrics/Summaries/FrameworkCoverage.ql
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: metrics-csharp.sarif
|
|
path: metrics-csharp.sarif
|
|
retention-days: 20
|
|
- name: Upload SARIF file
|
|
uses: github/codeql-action/upload-sarif@main
|
|
with:
|
|
sarif_file: metrics-csharp.sarif
|