mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-11-04 03:00:32 +08:00
Improve CI pipelines
- drop custom container, we don't want to maintain a hand-crafter container anymore - use .nvmrc node version as single source of truth, also in gh actions - bump playwright version, required to work on node >=24
This commit is contained in:
+17
-10
@@ -10,22 +10,29 @@ jobs:
|
||||
e2e:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: quay.io/radicle_garden/radicle-desktop-e2e:latest
|
||||
image: mcr.microsoft.com/playwright:v1.60.0-noble
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- uses: Swatinem/rust-cache@v2
|
||||
|
||||
- name: Cache node_modules
|
||||
id: cache-npm
|
||||
uses: actions/cache@v5
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
path: node_modules
|
||||
key: node-modules-${{ hashFiles('package-lock.json') }}
|
||||
node-version-file: ".nvmrc"
|
||||
|
||||
- run: |
|
||||
apt-get update && apt-get install -y --no-install-recommends \
|
||||
build-essential \
|
||||
pkg-config \
|
||||
xz-utils \
|
||||
libssl-dev \
|
||||
libxdo-dev \
|
||||
libayatana-appindicator3-dev \
|
||||
librsvg2-dev \
|
||||
libwebkit2gtk-4.1-dev \
|
||||
libjavascriptcoregtk-4.1-dev
|
||||
- run: npm ci
|
||||
if: steps.cache-npm.outputs.cache-hit != 'true'
|
||||
|
||||
- uses: dtolnay/rust-toolchain@stable
|
||||
- uses: Swatinem/rust-cache@v2
|
||||
|
||||
- name: Cache heartwood binaries
|
||||
uses: actions/cache@v5
|
||||
|
||||
+13
-12
@@ -9,32 +9,33 @@ env:
|
||||
jobs:
|
||||
lint-typescript:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: node:22.11.0
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Cache node_modules
|
||||
id: cache-npm
|
||||
uses: actions/cache@v5
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
path: node_modules
|
||||
key: node-modules-${{ hashFiles('package-lock.json') }}
|
||||
node-version-file: ".nvmrc"
|
||||
|
||||
- run: npm ci
|
||||
if: steps.cache-npm.outputs.cache-hit != 'true'
|
||||
|
||||
- run: npm run check-js
|
||||
|
||||
lint-rust:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: quay.io/radicle_garden/radicle-desktop-base:latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- run: |
|
||||
sudo apt-get update && sudo apt-get install -y --no-install-recommends \
|
||||
libxdo-dev \
|
||||
libayatana-appindicator3-dev \
|
||||
librsvg2-dev \
|
||||
libwebkit2gtk-4.1-dev \
|
||||
libjavascriptcoregtk-4.1-dev
|
||||
|
||||
- uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
components: rustfmt, clippy
|
||||
- uses: Swatinem/rust-cache@v2
|
||||
|
||||
- run: scripts/check-rs
|
||||
|
||||
@@ -9,20 +9,11 @@ env:
|
||||
jobs:
|
||||
unit-tests:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: node:22.11.0
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Cache node_modules
|
||||
id: cache-npm
|
||||
uses: actions/cache@v5
|
||||
- uses: actions/setup-node@v6
|
||||
with:
|
||||
path: node_modules
|
||||
key: node-modules-${{ hashFiles('package-lock.json') }}
|
||||
|
||||
node-version-file: ".nvmrc"
|
||||
- run: npm ci
|
||||
if: steps.cache-npm.outputs.cache-hit != 'true'
|
||||
|
||||
- run: npm run test:unit
|
||||
|
||||
Reference in New Issue
Block a user