mirror of
https://github.com/matrix-org/matrix-hookshot.git
synced 2025-03-10 21:19:13 +00:00

* Support node 20, drop node 16 * Update workflow versions * Update backendmeta * Use version file * Update packages * Yarn updates * Changelog * Fix glibc compatibility * Target es2021 Without this, CI tests fail * Drop unused metrics parameter * Revert "Drop unused metrics parameter" This reverts commit 4d874549bcec3dea0d6941215ac5c4f4707966ac. * Make a note about broken support --------- Co-authored-by: Andrew Ferrazzutti <andrewf@element.io>
78 lines
1.9 KiB
YAML
78 lines
1.9 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
paths-ignore:
|
|
- changelog.d/**'
|
|
pull_request:
|
|
branches: [ main ]
|
|
paths-ignore:
|
|
- changelog.d/**'
|
|
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
lint-node:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Use Node.js
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version-file: .node-version
|
|
- run: yarn --ignore-scripts
|
|
- run: yarn lint:js
|
|
|
|
lint-rust:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: stable
|
|
profile: minimal
|
|
components: rustfmt
|
|
- run: cargo fmt --all -- --check
|
|
|
|
config:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Use Node.js
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version-file: .node-version
|
|
- run: yarn # Need to build scripts to get rust bindings
|
|
- run: yarn --silent ts-node src/Config/Defaults.ts --config | diff config.sample.yml -
|
|
|
|
metrics-docs:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Use Node.js
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version-file: .node-version
|
|
- run: yarn # Need to build scripts to get rust bindings
|
|
- run: yarn --silent ts-node ./scripts/build-metrics-docs.ts | diff docs/metrics.md -
|
|
|
|
test:
|
|
# Test on LTS-1
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
node_version: [18, 20]
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Use Node.js ${{ matrix.node_version }}
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: ${{ matrix.node_version }}
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
toolchain: stable
|
|
profile: minimal
|
|
- run: yarn
|
|
- run: yarn test:cover
|