Skip to content

Commit

Permalink
Merge pull request #9 from snypelife/cicd
Browse files Browse the repository at this point in the history
CICD adjustments
  • Loading branch information
snypelife authored Jul 23, 2024
2 parents f521f69 + 889b9f3 commit f343a98
Show file tree
Hide file tree
Showing 5 changed files with 86 additions and 32 deletions.
32 changes: 0 additions & 32 deletions .github/workflows/node.js.yml

This file was deleted.

64 changes: 64 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# This workflow will do a clean install of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions

name: Pull Request

on:
workflow_dispatch:
push:
branches: [ main ]
pull_request:
branches: [ main ]

jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.x, 22.x]
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/

env:
MOCHA_REPORTER: mocha-ctrf-json-reporter

steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- run: npm ci
- run: npm run build --if-present
- run: |
FORCE_COLOR=true npm test -- \
--reporter ./mocha-ctrf-spec-reporter.js \
--reporter-option outputFile=ctrf-report-node-${{ matrix.node-version }}.json
- uses: actions/upload-artifact@v4
with:
name: ctrf-report-node-${{ matrix.node-version }}
path: ctrf/*.json

test-results:
needs: [test]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: ctrf-report-node-20.x
- name: Run CTRF annotations
run: npx --yes github-actions-ctrf summary ctrf-report-node-20.x.json
if: always()

lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use node.js 20.x
uses: actions/setup-node@v4
with:
node-version: 20.x
cache: 'npm'
- run: npm ci
- run: npm run lint
14 changes: 14 additions & 0 deletions mocha-ctrf-spec-reporter.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
const mocha = require('mocha')
const Ctrf = require('mocha-ctrf-json-reporter')
const Spec = mocha.reporters.Spec
const Base = mocha.reporters.Base

function CtrfSpecReporter (runner, options) {
Base.call(this, runner, options)
this._CtrfReporter = new Ctrf(runner, options)
this._specReporter = new Spec(runner, options)
return this
}
CtrfSpecReporter.prototype = Base.prototype

module.exports = CtrfSpecReporter
7 changes: 7 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
"concat-stream": "^2.0.0",
"husky": "^9.1.1",
"mocha": "^10.7.0",
"mocha-ctrf-json-reporter": "^0.0.4",
"nyc": "^17.0.0",
"opener": "^1.5.2",
"sinon": "^18.0.0",
Expand Down

0 comments on commit f343a98

Please sign in to comment.