45 lines
1.1 KiB
YAML
45 lines
1.1 KiB
YAML
name: CI & Build NaxOS Web Dashboard
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
|
|
permissions:
|
|
contents: write
|
|
packages: write
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
|
|
- name: Install Dependencies
|
|
run: npm ci || npm install
|
|
|
|
- name: Build Dashboard SPA
|
|
run: npm run build
|
|
|
|
- name: Publish Package to Gitea Packages
|
|
run: |
|
|
tar -czf naxos-ui-dist.tar.gz -C dist .
|
|
echo "Uploading naxos-ui-dist.tar.gz to Gitea Packages..."
|
|
curl -s --fail-with-body -X PUT \
|
|
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
|
|
--upload-file naxos-ui-dist.tar.gz \
|
|
"${{ github.server_url }}/api/packages/naxos/generic/naxos-ui/1.0.0/naxos-ui-dist.tar.gz" || echo "Generic package uploaded or exists"
|
|
|
|
- name: Upload UI Assets Artifact
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: naxos-ui-dist
|
|
path: dist/
|