ci(component-tests): add containerized component test workflow #14

Merged
Ninosaurier merged 1 commits from fix/ci-runner-test-component into dev 2026-08-04 12:34:04 +00:00
2 changed files with 43 additions and 19 deletions
Showing only changes of commit caf0f3de2d - Show all commits
+18
View File
@@ -0,0 +1,18 @@
FROM node:22-bullseye
# Install Docker CLI + Compose V2 plugin from Docker's official apt repo
# (Debian's own docker.io package ships an outdated Docker version and
# does not include the compose plugin at all).
RUN apt-get update \
&& apt-get install -y ca-certificates curl gnupg \
&& install -m 0755 -d /etc/apt/keyrings \
&& curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc \
&& chmod a+r /etc/apt/keyrings/docker.asc \
&& echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian bullseye stable" \
| tee /etc/apt/sources.list.d/docker.list > /dev/null \
&& apt-get update \
&& apt-get install -y docker-ce-cli docker-compose-plugin \
&& rm -rf /var/lib/apt/lists/*
RUN corepack enable
+25 -19
View File
@@ -10,13 +10,14 @@ on:
jobs:
lint-and-format:
runs-on: ubuntu-docker-dind
container:
image: git.byting-pandas.ninja/ci/node22-docker:latest
credentials:
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
- run: corepack enable
- run: corepack prepare pnpm@11.11.0 --activate
@@ -30,15 +31,16 @@ jobs:
changeset-check:
runs-on: ubuntu-docker-dind
container:
image: git.byting-pandas.ninja/ci/node22-docker:latest
credentials:
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_TOKEN }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: "22"
- run: corepack enable
- run: corepack prepare pnpm@11.11.0 --activate
@@ -50,13 +52,14 @@ jobs:
unit-tests:
runs-on: ubuntu-docker-dind
container:
image: git.byting-pandas.ninja/ci/node22-docker:latest
credentials:
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
- run: corepack enable
- run: corepack prepare pnpm@11.11.0 --activate
@@ -67,18 +70,21 @@ jobs:
component-tests:
runs-on: ubuntu-docker-dind
container:
image: git.byting-pandas.ninja/ci/luna-charts-test:v1.62.1
credentials:
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "22"
- run: corepack enable
- run: corepack prepare pnpm@11.11.0 --activate
- run: pnpm install --frozen-lockfile
# ========================================================
- name: Run component tests (Docker)
run: pnpm test:component
- name: Run component tests (Playwright)
working-directory: packages/luna-charts
run: pnpm test:browser