Skip to content

Add basic CI workflow on GitHub Actions #2

Add basic CI workflow on GitHub Actions

Add basic CI workflow on GitHub Actions #2

Workflow file for this run

name: Continuous Integration
on:
pull_request: {}
# push:
# branches:
# - main
push: {} # Just for now testing on a fork; should ultimately only be on pushes to main.
jobs:
lint:
name: Lint Code
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm install
- name: JSHint
run: node_modules/.bin/grunt jshint
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm install
- name: Build
run: node_modules/.bin/grunt concat uglify
node-tests:
runs-on: ubuntu-latest
strategy:
matrix:
node_version: [8, 10, 12, 14, 16, 18, 20]
steps:
- uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node_version }}
cache: npm
- name: Install dependencies
run: npm install
- name: Unit Tests
run: node_modules/.bin/grunt jasmine_node
browser-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm install
- name: Unit Tests
run: node_modules/.bin/grunt test
types:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm install
- name: Typescript Tests
run: npm run test-types