Skip to content

Release 0.1.2: Claude install & user-level roots #2

Release 0.1.2: Claude install & user-level roots

Release 0.1.2: Claude install & user-level roots #2

Workflow file for this run

name: Publish npm Package
on:
push:
tags:
- "v*"
workflow_dispatch:
concurrency:
group: publish-${{ github.ref }}
cancel-in-progress: false
jobs:
publish:
runs-on: windows-latest
timeout-minutes: 30
permissions:
contents: write
id-token: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
registry-url: https://registry.npmjs.org
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install JavaScript dependencies
run: npm ci
- name: Install baseline Python dependencies
run: python -m pip install -r requirements.txt
- name: Build TypeScript
run: npm run build
- name: Validate Python worker syntax
run: python -m py_compile workers/static_worker.py workers/speakeasy_compat.py
- name: Run key unit tests
run: >
npm test -- --runInBand
tests/unit/tool-help.test.ts
tests/unit/sample-ingest.test.ts
tests/unit/dynamic-dependencies.test.ts
tests/unit/dotnet-metadata-extract.test.ts
tests/unit/system-health.test.ts
- name: Validate npm package contents
run: npm run pack:dry-run
- name: Create npm package tarball
run: npm pack
- name: Publish to npm
run: npm publish --provenance --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Create GitHub release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
files: "*.tgz"