diff --git a/.gitea/runners/Dockerfile b/.gitea/runners/Dockerfile new file mode 100644 index 0000000..30354bd --- /dev/null +++ b/.gitea/runners/Dockerfile @@ -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 \ No newline at end of file diff --git a/.gitea/workflows/quality-gate.yml b/.gitea/workflows/quality-gate.yml index 398408d..27e3eec 100644 --- a/.gitea/workflows/quality-gate.yml +++ b/.gitea/workflows/quality-gate.yml @@ -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 \ No newline at end of file