Merge branch 'ci/gitlab-pipeline' into 'main'

Run CI on the self-hosted GitLab

See merge request inbuxa/inbuxa-admin!1
This commit was merged in pull request #1.
This commit is contained in:
2026-09-20 20:36:20 -07:00
2 changed files with 40 additions and 0 deletions
+1
View File
@@ -20,6 +20,7 @@ scripts/
!.prettierrc
!.env.development
!.github/
!.gitlab-ci.yml
!.vscode/
.vscode/*
!.vscode/extensions.json
+39
View File
@@ -0,0 +1,39 @@
# CI on the self-hosted GitLab, ported from .github/workflows/ci.yml when the
# GitHub account was suspended on 2026-09-20. The Actions file stays in the
# tree: it is the reference this was written from and works unchanged if the
# appeal succeeds.
#
# The image is pinned by digest, with its tag in the trailing comment -- the
# replacement for the workflow's SHA-pinned actions, since GitLab has no
# action allowlist.
#
# Not ported here:
# * cleanup.yml pruned GHCR with dataaxiom/ghcr-cleanup-action; on GitLab
# that belongs in the project's container registry cleanup policy, not in
# a pipeline.
# * publish.yml and release.yml still need doing; they are larger and are
# being handled separately.
stages: [build]
default:
interruptible: true
build:
stage: build
image: node:22-bookworm-slim@sha256:48e4b67d85f87bd551df43704e24d252f56cc5f8e9718841aace50f19948f0f9 # 22-bookworm-slim
variables:
NPM_CONFIG_CACHE: "$CI_PROJECT_DIR/.npm"
cache:
key:
files: [package-lock.json]
paths: [.npm/]
script:
- npm ci --ignore-scripts
- npm run typecheck
- npm run lint
- npm test
- npm run build
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH