Add runtime LoRA weight updates #166332
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: pre-commit | |
| on: | |
| pull_request: | |
| types: [opened, synchronize, reopened, labeled] | |
| push: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| permissions: | |
| contents: read | |
| pull-requests: read | |
| jobs: | |
| pre-run-check: | |
| if: github.event_name == 'pull_request' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check PR label and author merge count | |
| uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 | |
| with: | |
| script: | | |
| const { data: pr } = await github.rest.pulls.get({ | |
| ...context.repo, | |
| pull_number: context.payload.pull_request.number, | |
| }); | |
| const readyLabels = ['ready', 'ready-run-all-tests']; | |
| const hasReadyLabel = pr.labels.some(l => readyLabels.includes(l.name)); | |
| const hasVerifiedLabel = pr.labels.some(l => l.name === 'verified'); | |
| const { data: mergedPRs } = await github.rest.search.issuesAndPullRequests({ | |
| q: `repo:${context.repo.owner}/${context.repo.repo} is:pr is:merged author:${pr.user.login}`, | |
| per_page: 4, | |
| }); | |
| const mergedCount = mergedPRs.total_count; | |
| if (hasReadyLabel || hasVerifiedLabel || mergedCount >= 4) { | |
| core.info(`Check passed: verified label=${hasVerifiedLabel}, ready label=${hasReadyLabel}, 4+ merged PRs=${mergedCount >= 4}`); | |
| } else { | |
| core.setFailed(`PR must have the 'verified', 'ready', or 'ready-run-all-tests' label (the ready labels also trigger tests) or the author must have at least 4 merged PRs (found ${mergedCount}).`); | |
| } | |
| pre-commit: | |
| needs: pre-run-check | |
| if: always() && (needs.pre-run-check.result == 'success' || needs.pre-run-check.result == 'skipped') | |
| runs-on: [self-hosted, linux, x64, vllm-runners] | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0 | |
| with: | |
| python-version: "3.12" | |
| # Provide shellcheck on PATH so tools/pre_commit/shellcheck.sh skips its | |
| # wget + tar -xJ self-download, which the self-hosted runner image lacks | |
| # (no wget/xz). Pinned to shellcheck 0.10.0 to match the script's "stable". | |
| - run: python -m pip install shellcheck-py==0.10.0.1 | |
| - run: echo "::add-matcher::.github/workflows/matchers/actionlint.json" | |
| - run: echo "::add-matcher::.github/workflows/matchers/markdownlint.json" | |
| - run: echo "::add-matcher::.github/workflows/matchers/mypy.json" | |
| - uses: pre-commit/action@2c7b3805fd2a0fd8c1884dcaebf91fc102a13ecd # v3.0.1 | |
| with: | |
| extra_args: --all-files --hook-stage manual |