ci: attach exact git bundle for failed-run reproduction #276
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: CI | |
| on: | |
| push: | |
| branches: ['main', 'agent/**'] | |
| pull_request: | |
| permissions: | |
| contents: read | |
| # Keep all supported runtimes aligned with the exact commands users run locally. | |
| jobs: | |
| test: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - os: ubuntu-latest | |
| node-version: 22 | |
| upload-source: false | |
| - os: ubuntu-latest | |
| node-version: 24 | |
| upload-source: true | |
| - os: windows-latest | |
| node-version: 24 | |
| upload-source: false | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: npm | |
| cache-dependency-path: global-template/docgen/package.json | |
| - name: Syntax check | |
| working-directory: global-template/docgen | |
| run: npm run check | |
| - name: Unit and integration tests | |
| working-directory: global-template/docgen | |
| run: npm test | |
| - name: Installer dry run | |
| run: node install.mjs --dry-run --no-link-cli | |
| - name: Bundle exact Git checkout | |
| if: always() && matrix.upload-source | |
| run: git bundle create pr-head.bundle HEAD | |
| - name: Upload exact CI source | |
| if: always() && matrix.upload-source | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: docgen-ci-source | |
| if-no-files-found: error | |
| retention-days: 3 | |
| path: | | |
| global-template/docgen | |
| global-template/docgen/project-template | |
| install.mjs | |
| VERSION | |
| pr-head.bundle |