From a3b7ecb49fc1fdb9288206d2338a9df67d18e221 Mon Sep 17 00:00:00 2001 From: seaHi Date: Mon, 17 Aug 2026 15:35:29 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20=E6=8B=86=E5=88=86=20Drone=20CI=20?= =?UTF-8?q?=E6=B5=81=E6=B0=B4ian=E6=AD=A5=E9=AA=A4=E5=B9=B6=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E7=BC=93=E5=AD=98=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .drone.yml | 80 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 72 insertions(+), 8 deletions(-) diff --git a/.drone.yml b/.drone.yml index 4ea120b..0b28100 100644 --- a/.drone.yml +++ b/.drone.yml @@ -13,21 +13,82 @@ trigger: - custom steps: - - name: build-and-deploy - image: node:22 - environment: - CLOUDFLARE_ACCOUNT_ID: - from_secret: CLOUDFLARE_ACCOUNT_ID - CLOUDFLARE_API_TOKEN: - from_secret: CLOUDFLARE_API_TOKEN + - name: install + image: node:22-slim volumes: - name: pnpm-store path: /root/.local/share/pnpm/store commands: - corepack enable - pnpm install --frozen-lockfile --prefer-offline - - pnpm run ci + + - name: lint + image: node:22-slim + depends_on: + - install + commands: + - corepack enable + - pnpm run lint + + - name: check + image: node:22-slim + depends_on: + - install + volumes: + - name: svelte-cache + path: /drone/src/.svelte-kit + commands: + - corepack enable + - pnpm run check + + - name: test + image: node:22-slim + depends_on: + - install + commands: + - corepack enable + - pnpm run test + + - name: build + image: node:22-slim + depends_on: + - lint + - check + - test + volumes: + - name: svelte-cache + path: /drone/src/.svelte-kit + commands: + - corepack enable + - pnpm run build + + - name: deploy-db + image: node:22-slim + depends_on: + - build + environment: + CLOUDFLARE_ACCOUNT_ID: + from_secret: CLOUDFLARE_ACCOUNT_ID + CLOUDFLARE_API_TOKEN: + from_secret: CLOUDFLARE_API_TOKEN + commands: + - corepack enable - pnpm exec wrangler d1 migrations apply blogflare-db --remote + + - name: deploy-pages + image: node:22-slim + depends_on: + - deploy-db + environment: + CLOUDFLARE_ACCOUNT_ID: + from_secret: CLOUDFLARE_ACCOUNT_ID + CLOUDFLARE_API_TOKEN: + from_secret: CLOUDFLARE_API_TOKEN + volumes: + - name: svelte-cache + path: /drone/src/.svelte-kit + commands: + - corepack enable - pnpm exec wrangler pages deploy .svelte-kit/cloudflare --project-name=blogflare --branch=main - name: notify-success @@ -78,3 +139,6 @@ volumes: - name: pnpm-store host: path: /tmp/drone/pnpm-store + - name: svelte-cache + host: + path: /tmp/drone/blogflare-svelte-cache