Skip to content

Merge pull request #31 from pawcoding/next #26

Merge pull request #31 from pawcoding/next

Merge pull request #31 from pawcoding/next #26

Workflow file for this run

name: 🚀 Publish new version
# Run this on every push to master and next
on:
push:
branches:
- master
- next
permissions:
contents: read
jobs:
publish:
# Use the latest version of Ubuntu
runs-on: ubuntu-latest
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
steps:
# Checkout repository
- name: 📥 Checkout code
uses: actions/checkout@v4
with:
persist-credentials: false
# Setup Node
- name: 📦 Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "lts/*"
cache: "npm"
# Install dependencies
- name: 📦 Install dependencies
run: npm ci
# Lint code
- name: 🧹 Lint code
run: npm run lint
# Check format
- name: 🧹 Check format
run: npm run format:check
# Run tests
- name: 🧪 Run unit tests
run: npm run test:unit
# Setup PocketBase
- name: 🗄️ Download and setup PocketBase
run: npm run test:e2e:setup
# Start PocketBase
- name: 🚀 Start PocketBase
run: ./.pocketbase/pocketbase serve &
# Wait for PocketBase to be ready
- name: ⏳ Wait for PocketBase
run: |
until curl -s --fail http://localhost:8090/api/health; do
echo 'Waiting for PocketBase...'
sleep 5
done
# Run tests
- name: 🧪 Run e2e tests
run: npm run test:e2e
# Create release
- name: 🚀 Create release
id: release
uses: cycjimmy/semantic-release-action@v4
env:
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}