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 all scripts run: | npm ci npm run all - uses: coverallsapp/github-action@master with: github-token: ${{ secrets.GITHUB_TOKEN }} # Adding a comment to clarify the purpose of the Windows build job 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 }} # Node.js 20 already includes a recent npm version, so npm upgrade is not needed - name: Install dependencies and run all scripts run: | npm ci npm run all 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