thelounge/.github/workflows/build.yml

50 lines
1,004 B
YAML

name: Build
permissions:
contents: read
on: [push, pull_request]
jobs:
build:
name: Node ${{ matrix.node_version }} on ${{ matrix.os }}
strategy:
matrix:
include:
# EOL: April 2023
- os: ubuntu-latest
node_version: 14.x
# EOL: April 2024
- os: ubuntu-latest
node_version: 16.x
- os: macOS-latest
node_version: 16.x
- os: windows-latest
node_version: 16.x
# EOL: April 2025
- os: ubuntu-latest
node_version: 18.x
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@master
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node_version }}
- name: Install
run: yarn --frozen-lockfile --non-interactive
- name: Build
run: yarn build
env:
NODE_ENV: production
- name: Test
run: yarn test