[codex] Preserve imported front matter titles #20
Workflow file for this run
This file contains hidden or 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
| name: PR Validation | |
| on: | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: pr-validation-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| APP_TEST_PROJECT: tests/PrompterOne.Web.Tests/PrompterOne.Web.Tests.csproj | |
| CORE_TEST_PROJECT: tests/PrompterOne.Core.Tests/PrompterOne.Core.Tests.csproj | |
| PLAYWRIGHT_CLI: tests/PrompterOne.Web.UITests/bin/Debug/net10.0/.playwright/package/cli.js | |
| SOLUTION_FILE: PrompterOne.slnx | |
| jobs: | |
| build_supporting_suites: | |
| name: Restore + Build Supporting Suites | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| global-json-file: global.json | |
| - name: Restore solution | |
| run: dotnet restore "$SOLUTION_FILE" | |
| - name: Restore WebAssembly workload | |
| run: dotnet workload restore | |
| - name: Build solution | |
| run: dotnet build "$SOLUTION_FILE" -warnaserror | |
| test_supporting_suites: | |
| name: Run Supporting Suites | |
| needs: build_supporting_suites | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| global-json-file: global.json | |
| - name: Expose GitHub Actions Runtime | |
| uses: actions/github-script@v8 | |
| with: | |
| script: | | |
| core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env['ACTIONS_RUNTIME_TOKEN']); | |
| core.exportVariable('ACTIONS_RESULTS_URL', process.env['ACTIONS_RESULTS_URL']); | |
| - name: Test supporting suites | |
| run: | | |
| dotnet test --project "$CORE_TEST_PROJECT" | |
| dotnet test --project "$APP_TEST_PROJECT" | |
| build_browser_suites: | |
| name: Restore + Build Browser Suites | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| global-json-file: global.json | |
| - name: Restore solution | |
| run: dotnet restore "$SOLUTION_FILE" | |
| - name: Restore WebAssembly workload | |
| run: dotnet workload restore | |
| - name: Build solution | |
| run: dotnet build "$SOLUTION_FILE" -warnaserror | |
| test_browser_suites: | |
| name: Run Browser Suite (${{ matrix.suite.name }}) | |
| needs: build_browser_suites | |
| runs-on: macos-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| suite: | |
| - name: Shell | |
| artifact: shell | |
| project: tests/PrompterOne.Web.UITests.Shell/PrompterOne.Web.UITests.Shell.csproj | |
| - name: Studio | |
| artifact: studio | |
| project: tests/PrompterOne.Web.UITests.Studio/PrompterOne.Web.UITests.Studio.csproj | |
| - name: Editor | |
| artifact: editor | |
| project: tests/PrompterOne.Web.UITests.Editor/PrompterOne.Web.UITests.Editor.csproj | |
| - name: Reader | |
| artifact: reader | |
| project: tests/PrompterOne.Web.UITests.Reader/PrompterOne.Web.UITests.Reader.csproj | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| global-json-file: global.json | |
| - name: Expose GitHub Actions Runtime | |
| uses: actions/github-script@v8 | |
| with: | |
| script: | | |
| core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env['ACTIONS_RUNTIME_TOKEN']); | |
| core.exportVariable('ACTIONS_RESULTS_URL', process.env['ACTIONS_RESULTS_URL']); | |
| - name: Restore solution | |
| run: dotnet restore "$SOLUTION_FILE" | |
| - name: Restore WebAssembly workload | |
| run: dotnet workload restore | |
| - name: Build solution | |
| run: dotnet build "$SOLUTION_FILE" -warnaserror | |
| - name: Install Playwright browser | |
| run: node "$PLAYWRIGHT_CLI" install chromium | |
| - name: Test browser suite | |
| run: dotnet test --project "${{ matrix.suite.project }}" --verbosity normal | |
| - name: Upload Playwright artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: playwright-artifacts-pr-validation-${{ matrix.suite.artifact }} | |
| path: output/playwright/ | |
| if-no-files-found: ignore |