Skip to content

nightly-local-check

nightly-local-check #9

name: nightly-local-check
on:
schedule:
# 05:17 UTC daily. Off the round-hour to avoid fleet collisions on shared runners.
- cron: '17 5 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
nightly-local-check:
name: nightly-local-check (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-2025
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: 10.0.x
- name: Restore
run: dotnet restore AgentContextKit.sln
- name: Build
run: dotnet build AgentContextKit.sln -c Release --no-restore
- name: Test
run: dotnet test AgentContextKit.sln -c Release --no-build
- name: AgentContextKit scan (json)
run: >
dotnet run --project src/AgentContextKit.Cli/AgentContextKit.Cli.csproj
-c Release --no-build -- scan --ci --json
> nightly-scan.json
- name: AgentContextKit doctor (json)
run: >
dotnet run --project src/AgentContextKit.Cli/AgentContextKit.Cli.csproj
-c Release --no-build -- doctor --json
> nightly-doctor.json
- name: verify-release
shell: pwsh
run: powershell -ExecutionPolicy Bypass -File scripts/verify-release.ps1
- name: check-tracked-vs-untracked-md
shell: pwsh
run: powershell -ExecutionPolicy Bypass -File scripts/check-tracked-vs-untracked-md.ps1 -FailOnIssues
- name: Upload nightly scan artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: nightly-scan-${{ matrix.os }}
path: nightly-scan.json
if-no-files-found: warn
retention-days: 14
- name: Upload nightly doctor artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: nightly-doctor-${{ matrix.os }}
path: nightly-doctor.json
if-no-files-found: warn
retention-days: 14