From 60093fa3bbf19fc97b33f8449182c4f4beafa74c Mon Sep 17 00:00:00 2001 From: siujamo Date: Tue, 19 May 2026 22:23:43 -0500 Subject: [PATCH] ci: add gitlab ci pipeline for build and deploy --- .gitlab-ci.yml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..a62c66a --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,37 @@ +workflow: + rules: + - if: $CI_COMMIT_BRANCH == "main" + +stages: + - build + - deploy + +build: + stage: build + image: node:24.15-trixie-slim + before_script: + - corepack enable + - corepack prepare pnpm@latest --activate + - pnpm config set store-dir .pnpm-store + script: + - pnpm install --frozen-lockfile + - pnpm build + artifacts: + paths: + - doc_build/ + +deploy: + stage: deploy + image: alpine:latest + needs: + - build + before_script: + - apk add --no-cache openssh-client rsync + - mkdir -p ~/.ssh + - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519 + - chmod 600 ~/.ssh/id_ed25519 + - ssh-keyscan -H onixbyte.cn >> ~/.ssh/known_hosts + script: + - rsync -avz --delete doc_build/ ${SSH_USER}@onixbyte.cn:${DEPLOY_PATH} + rules: + - if: $CI_COMMIT_BRANCH == "main"