name: "build-test" on: # rebuild any PRs and main branch changes pull_request: push: branches: - main jobs: build: # make sure build/ci work properly strategy: matrix: node: [20] os: [ ubuntu-latest, macos-latest ] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: ${{ matrix.node }} - name: Install dependencies and run tests run: | npm ci npm run test:coverage - uses: coverallsapp/github-action@master with: github-token: ${{ secrets.GITHUB_TOKEN }} build-on-windows: strategy: matrix: node: [20] runs-on: windows-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: ${{ matrix.node }} - name: Install dependencies and run tests run: | npm ci npm run test test: # make sure the action works on a clean machine without building strategy: matrix: node: [20] os: [ ubuntu-latest, macos-latest ] runs-on: ${{ matrix.os }} steps: - name: Dump GitHub context env: GITHUB_CONTEXT: ${{ toJson(github) }} run: echo "$GITHUB_CONTEXT" - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: ${{ matrix.node }} - name: Run npm audit action uses: ./ with: github_token: ${{ secrets.GITHUB_TOKEN }} issue_title: npm audit run by test job create_issues: false production_flag: true - name: Run npm audit action in testdata workdir uses: ./ with: github_token: ${{ secrets.GITHUB_TOKEN }} working_directory: __tests__/testdata/workdir/ create_issues: false production_flag: true # test-on-windows: # strategy: # matrix: # node: [20] # runs-on: windows-latest # steps: # - name: Dump GitHub context # env: # GITHUB_CONTEXT: ${{ toJson(github) }} # run: echo "$GITHUB_CONTEXT" # - uses: actions/checkout@v4 # - uses: actions/setup-node@v4 # with: # node-version: ${{ matrix.node }} # # Node.js 20 already includes a recent npm version, so npm upgrade is not needed # - name: Run npm audit action # uses: ./ # with: # github_token: ${{ secrets.GITHUB_TOKEN }} # issue_title: npm audit run by test job # create_issues: false # production_flag: true # - name: Run npm audit action in testdata workdir # uses: ./ # with: # github_token: ${{ secrets.GITHUB_TOKEN }} # working_directory: __tests__/testdata/workdir/ # create_issues: false # production_flag: true