More ubuntu tests #728
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: CI | |
| on: | |
| push: | |
| branches: ["main"] | |
| pull_request: | |
| branches: ["main"] | |
| # Allows you to run this workflow manually from the Actions tab | |
| workflow_dispatch: | |
| jobs: | |
| browser-macos: | |
| name: Test Browser on macOS | |
| runs-on: macos-latest | |
| env: | |
| GITHUB_ACTIONS_OUTPUT: "" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| browser: [safari] | |
| suite: [default, disabled, main] | |
| steps: | |
| - name: Extract Week Number | |
| run: echo "WEEK_NUMBER=$(date +%W)" >> $GITHUB_ENV | |
| - name: Checkout Branch | |
| uses: actions/checkout@v5 | |
| - name: Setup Node | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version-file: package.json | |
| cache: npm | |
| - name: Install Node Packages | |
| run: npm ci | |
| - name: Run Tests | |
| run: | | |
| echo "Running in $BROWSER" | |
| npm run test:${{ matrix.browser }} -- ${{ matrix.suite }} | |
| browser-linux: | |
| name: Test Browser on Linux | |
| runs-on: ubuntu-latest | |
| env: | |
| GITHUB_ACTIONS_OUTPUT: "" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| browser: [chrome, firefox] | |
| suite: [default, disabled, main] | |
| steps: | |
| - name: Extract Week Number | |
| run: echo "WEEK_NUMBER=$(date +%W)" >> $GITHUB_ENV | |
| - name: Checkout Branch | |
| uses: actions/checkout@v5 | |
| - name: Setup Node | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version-file: package.json | |
| cache: npm | |
| - name: Install Node Packages | |
| run: npm ci | |
| - name: Run Tests | |
| run: | | |
| echo "Running in $BROWSER" | |
| npm run test:${{ matrix.browser }} -- ${{ matrix.suite }} | |
| shell: | |
| name: Test Shell | |
| runs-on: ubuntu-latest | |
| env: | |
| GITHUB_ACTIONS_OUTPUT: "" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| shell: [jsc, spidermonkey, v8] | |
| suite: [default, disabled, main] | |
| steps: | |
| - name: Extract Week Number | |
| run: echo "WEEK_NUMBER=$(date +%W)" >> $GITHUB_ENV | |
| - name: Checkout Branch | |
| uses: actions/checkout@v5 | |
| - name: Setup Node | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version-file: package.json | |
| cache: npm | |
| - name: Install Node Packages | |
| run: npm ci | |
| - name: Cache jsvu Binaries | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.jsvu | |
| key: ${{ runner.os }}-jsvu-${{ matrix.shell }}-week-${{ env.WEEK_NUMBER }} | |
| - name: Run Tests | |
| run: | | |
| echo "Running in $BROWSER" | |
| npm run test:${{ matrix.shell }} -- ${{ matrix.suite }} | |
| build: | |
| name: Test Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Branch | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: ${{ github.event_name == 'pull_request' && 2 || 0 }} | |
| - name: Setup Node | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version-file: package.json | |
| cache: npm | |
| - name: Install Node Packages | |
| run: npm ci | |
| - name: Run Build | |
| run: | | |
| if ${{ github.event_name == 'pull_request' }}; then | |
| npm run test:build -- --diff="HEAD^...HEAD" | |
| else | |
| npm run test:build -- --diff="${{ github.event.before }}...${{ github.event.after }}" | |
| fi | |