Skip to content

Release

Release #2

Workflow file for this run

name: Release
on:
workflow_dispatch:
permissions: {}
concurrency:
group: drizzle-zero-release
cancel-in-progress: false
jobs:
build:
name: Build package
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Set up pnpm
uses: pnpm/action-setup@0e279bb959325dab635dd2c09392533439d90093 # v6.0.8
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 24.x
cache: pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Build
run: pnpm run build
- name: Pack
run: |
mkdir -p "$RUNNER_TEMP/npm"
npm pack --pack-destination "$RUNNER_TEMP/npm"
- name: Upload package
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: drizzle-zero-npm
if-no-files-found: error
retention-days: 7
path: ${{ runner.temp }}/npm/*.tgz
publish:
name: Publish package
runs-on: ubuntu-latest
needs: build
environment: drizzle-zero-release-npm
permissions:
id-token: write
steps:
- name: Set up pnpm
uses: pnpm/action-setup@0e279bb959325dab635dd2c09392533439d90093 # v6.0.8
with:
version: 11.5.3
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 24.x
registry-url: https://registry.npmjs.org
- name: Download package
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: drizzle-zero-npm
path: dist/npm
- name: Publish package
run: pnpm publish dist/npm/*.tgz --tag beta --provenance --access public --no-git-checks