51 lines
1.3 KiB
YAML
51 lines
1.3 KiB
YAML
name: build
|
|
|
|
on: [ workflow_dispatch ]
|
|
|
|
jobs:
|
|
everything:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Setup Turbo cache
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: .turbo
|
|
key: ${{ runner.os }}-turbo-${{ github.sha }}
|
|
restore-keys: |
|
|
${{ runner.os }}-turbo-
|
|
|
|
- name: Setup pnpm
|
|
uses: pnpm/action-setup@v4
|
|
with:
|
|
version: 10.11.0
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '22'
|
|
cache: 'pnpm'
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install
|
|
|
|
- name: Build packages with Turbo
|
|
run: pnpm run build
|
|
|
|
- name: Package production build
|
|
run: |
|
|
# Create production-ready server package using pnpm deploy
|
|
pnpm deploy --filter=./packages/server --prod lamassu-server --legacy
|
|
|
|
# Copy built admin UI to public directory
|
|
cp -r packages/admin-ui/build lamassu-server/public
|
|
|
|
# Create tarball
|
|
tar -zcf lamassu-server.tar.gz lamassu-server/
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: lamassu-server.tar.gz
|
|
path: lamassu-server.tar.gz
|