Bump the nuget-dependencies group with 1 update #853
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: Unit Test | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| push: | |
| branches: | |
| - "master" | |
| permissions: | |
| contents: read | |
| jobs: | |
| client-lint: | |
| name: Client Lint | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: CorpusSearch/ClientApp | |
| steps: | |
| - uses: actions/checkout@v7.0.1 | |
| - uses: actions/setup-node@v7 | |
| with: | |
| node-version: 20 | |
| - run: npm ci | |
| - run: npm run lint | |
| - run: npm run format:check | |
| - run: npm run test | |
| submodule-pins: | |
| # A submodule pointer must be a commit reachable from its upstream's | |
| # default branch: a pin to an unpushed local commit, or to a branch that | |
| # is later force-pushed away, checks out fine today and breaks every | |
| # clone (and the production data pull) once upstream garbage-collects. | |
| # Fail on the PR that moves the pin, not months later. | |
| name: Submodule Pins | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7.0.1 | |
| - name: Pins are reachable from each upstream default branch | |
| run: | | |
| [ -f .gitmodules ] || exit 0 | |
| for name in $(git config -f .gitmodules --name-only --get-regexp '\.path$' | sed 's/\.path$//'); do | |
| path=$(git config -f .gitmodules "$name.path") | |
| url=$(git config -f .gitmodules "$name.url") | |
| sha=$(git rev-parse ":$path") | |
| branch=$(git ls-remote --symref "$url" HEAD | awk '/^ref:/ {sub("refs/heads/","",$2); print $2}') | |
| clone=$(mktemp -d)/upstream.git | |
| git clone --quiet --bare --filter=tree:0 "$url" "$clone" | |
| if git -C "$clone" merge-base --is-ancestor "$sha" "refs/heads/$branch"; then | |
| echo "$path: $sha is on '$branch' of $url" | |
| else | |
| echo "::error::$path pins $sha, which is not reachable from '$branch' of $url - push/merge it upstream before pinning" | |
| exit 1 | |
| fi | |
| done | |
| tests: | |
| env: | |
| DOTNET_CLI_TELEMETRY_OPTOUT: 1 | |
| DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 | |
| NUGET_XMLDOC_MODE: skip | |
| name: Unit Testing | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7.0.1 | |
| with: | |
| # external/ submodules hold consumed data (e.g. the lemma table) | |
| submodules: true | |
| - uses: actions/setup-dotnet@v6 | |
| with: | |
| dotnet-version: 10.0.x | |
| - run: dotnet test | |
| - run: dotnet publish | |
| e2e: | |
| env: | |
| DOTNET_CLI_TELEMETRY_OPTOUT: 1 | |
| DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 | |
| NUGET_XMLDOC_MODE: skip | |
| name: End-to-End Test | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: CorpusSearch/ClientApp | |
| steps: | |
| - uses: actions/checkout@v7.0.1 | |
| with: | |
| # external/ submodules hold consumed data (e.g. the lemma table) | |
| submodules: true | |
| - uses: actions/setup-dotnet@v6 | |
| with: | |
| dotnet-version: 10.0.x | |
| - uses: actions/setup-node@v7 | |
| with: | |
| node-version: 20 | |
| - run: npm ci | |
| - run: npx playwright install --with-deps chromium | |
| # the books are downloaded artifacts, never tracked files: without | |
| # cregeen.json the dictionary loads silently empty, and the browse | |
| # spec meets a letter with no chapters. gh rather than the deploy | |
| # scripts' bare curl: an unauthenticated api.github.com call from a | |
| # shared runner meets the rate limit and answers with no assets | |
| - run: | | |
| gh release download --repo david-allison/cregeen-manx-dictionary-data --pattern '*' --output cregeen.json | |
| gh release download --repo david-allison/kelly-m2e-manx-dictionary-data --pattern '*' --output kellym2e.json | |
| working-directory: CorpusSearch/Resources | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| - run: npm run e2e | |
| - uses: actions/upload-artifact@v7 | |
| if: failure() | |
| with: | |
| name: playwright-report | |
| path: CorpusSearch/ClientApp/playwright-report/ | |
| retention-days: 7 | |