diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 000000000..ec8c826df --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,54 @@ +name: Relase + +on: + push: + tags: + - 'v*' + +env: + STORE_PATH: '' + +jobs: + release: + name: Release + runs-on: ubuntu-24.04 + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Node.js 22.x + uses: actions/setup-node@v4 + with: + node-version: 22.x + # registry-url required. Learn more at + # https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages + registry-url: 'https://registry.npmjs.org' + + - uses: pnpm/action-setup@v3 + name: Install pnpm + with: + run_install: false + + - name: Get pnpm store directory + shell: bash + run: | + echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV + + - uses: actions/cache@v4 + name: Setup pnpm cache + with: + path: ${{ env.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Packages build + run: pnpm run packages:build + + - name: Packages publish + run: pnpm run packages:publish + env: + NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} diff --git a/bump.config.ts b/bump.config.ts new file mode 100644 index 000000000..045a8f085 --- /dev/null +++ b/bump.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'bumpp' + +export default defineConfig({ + recursive: true, + commit: 'release: v%s', + sign: true, + push: false, +}) diff --git a/package.json b/package.json index 2099cf70e..963f303b0 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "packages:dev": "pnpm -r --filter=./packages/* --parallel run dev", "packages:stub": "pnpm -r --filter=./packages/* run stub", "packages:build": "pnpm -r --filter=./packages/* run build", + "packages:publish": "pnpm -r --filter=./packages/* run package:publish", "test": "vitest --coverage", "test:run": "vitest run", "up": "taze major -I", diff --git a/packages/cute-ui/package.json b/packages/cute-ui/package.json index 483a324f7..f2619a015 100644 --- a/packages/cute-ui/package.json +++ b/packages/cute-ui/package.json @@ -1,6 +1,7 @@ { "name": "@proj-airi/cute-ui", "version": "1.0.0", + "private": true, "description": "", "author": { "name": "Neko Ayaka", diff --git a/packages/elevenlabs/package.json b/packages/elevenlabs/package.json index 4e21fc203..ce9c9684d 100644 --- a/packages/elevenlabs/package.json +++ b/packages/elevenlabs/package.json @@ -28,7 +28,8 @@ "scripts": { "dev": "pnpm run stub", "stub": "unbuild --stub", - "build": "unbuild" + "build": "unbuild", + "package:publish": "pnpm build && pnpm publish --access public --no-git-checks" }, "devDependencies": { "elevenlabs": "^1.50.2" diff --git a/packages/hfup/package.json b/packages/hfup/package.json index 7cdbc717a..5852ff727 100644 --- a/packages/hfup/package.json +++ b/packages/hfup/package.json @@ -32,7 +32,8 @@ "scripts": { "dev": "pnpm run stub", "stub": "unbuild --stub", - "build": "unbuild" + "build": "unbuild", + "package:publish": "pnpm build && pnpm publish --access public --no-git-checks" }, "dependencies": { "defu": "^6.1.4",