Skip to content

test(runtime): cover expired directory lease cleanup #2939

test(runtime): cover expired directory lease cleanup

test(runtime): cover expired directory lease cleanup #2939

Workflow file for this run

name: Documentation
on:
workflow_dispatch:
schedule:
- cron: "0 9 * * *"
push:
branches:
- main
pull_request:
branches:
- main
merge_group:
types:
- checks_requested
permissions:
contents: read
concurrency:
group: docs-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
DOTNET_NOLOGO: true
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
jobs:
site:
name: Build site
runs-on: ubuntu-latest
timeout-minutes: 30
env:
ORLEANS_DOCS_BUILD_CONCURRENCY: 4
ORLEANS_DOCS_SOURCE_COMMIT: ${{ github.sha }}
steps:
- name: Checkout
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
with:
fetch-depth: 0
- name: Setup .NET
uses: actions/setup-dotnet@c2fa09f4bde5ebb9d1777cf28262a3eb3db3ced7 # v5
with:
global-json-file: global.json
- name: Test API data generator
run: dotnet test --project docs/tools/PackageJsonGenerator.Tests/PackageJsonGenerator.Tests.csproj --minimum-expected-tests 1
- name: Setup Node.js
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5
with:
node-version: 24.x
cache: npm
cache-dependency-path: docs/site/package-lock.json
- name: Install site dependencies
working-directory: docs/site
run: npm ci --no-audit --no-fund
- name: Generate API data
shell: pwsh
run: ./docs/scripts/Generate-ApiData.ps1 -Parallelism 4
- name: Validate and build site
working-directory: docs/site
run: npm run validate
- name: Upload pull request preview
if: github.event_name == 'pull_request'
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
with:
name: orleans-docs-preview
path: docs/site/dist
retention-days: 3
compression-level: 6
- name: Upload GitHub Pages artifact
if: github.ref == 'refs/heads/main' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule')
uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4
with:
path: docs/site/dist
projects:
name: Build documentation projects and samples
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- name: Checkout
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- name: Setup .NET
uses: actions/setup-dotnet@c2fa09f4bde5ebb9d1777cf28262a3eb3db3ced7 # v5
with:
global-json-file: global.json
- name: Validate aggregate project policy
working-directory: docs/site
run: node scripts/audit-projects.mjs
- name: Validate snippet and sample policies
shell: pwsh
run: |
./docs/site/src/content/docs/validate-snippets.ps1 -PolicyOnly
./samples/Validate-Samples.ps1 -NoBuild
- name: Build and test documentation projects
run: dotnet test --solution docs/Docs.slnx --configuration Release --framework net10.0 -p:BuildExternalAssets=false -bl:docs-projects.binlog --minimum-expected-tests 1 --max-parallel-test-modules 1
- name: Build samples against local Orleans packages
shell: pwsh
run: ./samples/Build-Samples.ps1 -Configuration Release -NoIncremental -SkipExternalAssets
- name: Upload build diagnostics
if: always()
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
with:
name: documentation-project-binlog
path: docs-projects.binlog
if-no-files-found: ignore
retention-days: 3
deploy:
name: Deploy GitHub Pages
if: github.ref == 'refs/heads/main' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule')
needs:
- site
- projects
runs-on: ubuntu-latest
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Configure GitHub Pages
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5
- name: Deploy
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4