name: Docs on: push: branches: [master] paths: - 'docs/**' - 'src/**' permissions: contents: write jobs: build-deploy: name: Build & Deploy Docs runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Remove submodule NuGet config run: rm -f src/Terminal.Gui/nuget.config - name: Setup .NET 10 uses: actions/setup-dotnet@v4 with: dotnet-version: '10.0.x' - name: Cache NuGet packages uses: actions/cache@v4 with: path: ~/.nuget/packages key: nuget-${{ runner.os }}-${{ hashFiles('src/**/*.csproj') }} restore-keys: nuget-${{ runner.os }}- - name: Restore .NET tools run: dotnet tool restore - name: Build solution run: dotnet build src/EchoHub.slnx --configuration Release - name: Generate documentation run: dotnet docfx docs/docfx.json - name: Deploy to web branch uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./docs/_site publish_branch: web