Skip to content

chore(deps): bump @wfcd/items from 1.1274.59 to 1.1275.0 #62

chore(deps): bump @wfcd/items from 1.1274.59 to 1.1275.0

chore(deps): bump @wfcd/items from 1.1274.59 to 1.1275.0 #62

Workflow file for this run

name: CI
on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:
env:
NODE_VERSION: '20.x'
jobs:
lint-and-typecheck:
name: Lint & Typecheck
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm install
- name: Run lint
run: npm run lint
- name: Run typecheck
run: npm run typecheck
test:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm install
- name: Run tests
run: npm run test
build:
name: Build (Development)
runs-on: ubuntu-latest
needs: [lint-and-typecheck, test]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm install
- name: Build development
run: npm run build
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: dist-dev
path: dist/
retention-days: 7
e2e:
name: E2E Tests
runs-on: windows-latest
needs: [build]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm install
- name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: dist-dev
path: dist/
- name: Run E2E tests
run: npm run test:e2e
build-production:
name: Build (Production)
runs-on: ubuntu-latest
needs: [lint-and-typecheck, test]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm install
- name: Build production
run: npx webpack --config webpack.prod.config.js
- name: Upload production artifacts
uses: actions/upload-artifact@v4
with:
name: dist-prod
path: dist/
retention-days: 30
package-windows:
name: Package Windows (NSIS)
runs-on: windows-latest
needs: [lint-and-typecheck, test]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install dependencies
run: npm install
- name: Build development
run: npm run build
- name: Package NSIS installer
run: npm run build:ow-electron
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload installer
uses: actions/upload-artifact@v4
with:
name: forge-installer
path: release/
retention-days: 30
release:
name: Create Release
runs-on: ubuntu-latest
needs: [package-windows]
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
steps:
- name: Download installer
uses: actions/download-artifact@v4
with:
name: forge-installer
path: release/
- name: Create Release
uses: softprops/action-gh-release@v1
with:
files: release/*
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}