All checks were successful
Build & Publish / publish (push) Successful in 48s
The runner is registered as ubuntu-latest, not linux-arm64. The underlying hardware is ARM64 but the label must match. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
40 lines
1.1 KiB
YAML
40 lines
1.1 KiB
YAML
name: Build & Publish
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
tags: ['v*']
|
|
|
|
jobs:
|
|
publish:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: node:22-bookworm-slim
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install dependencies
|
|
run: npm ci
|
|
|
|
- name: Run tests
|
|
run: npx vitest run
|
|
|
|
- name: Build library
|
|
run: npm run build:lib
|
|
|
|
- name: Publish package
|
|
run: |
|
|
if [[ "$GITHUB_REF" == refs/tags/v* ]]; then
|
|
VERSION="${GITHUB_REF_NAME#v}"
|
|
npm version "$VERSION" --no-git-tag-version
|
|
TAG="latest"
|
|
else
|
|
SHORT_SHA=$(echo "$GITHUB_SHA" | head -c 7)
|
|
DATE=$(date +%Y%m%d)
|
|
npm version "0.0.0-snapshot.${DATE}.${SHORT_SHA}" --no-git-tag-version
|
|
TAG="dev"
|
|
fi
|
|
echo '@cameleer:registry=https://gitea.siegeln.net/api/packages/cameleer/npm/' > .npmrc
|
|
echo '//gitea.siegeln.net/api/packages/cameleer/npm/:_authToken=${{ secrets.REGISTRY_TOKEN }}' >> .npmrc
|
|
npm publish --tag "$TAG"
|