PVE-mods/.github/workflows/test.yml
2026-06-07 13:37:41 +02:00

50 lines
1.3 KiB
YAML

# .github/workflows/test.yml
name: Test Build
on:
push:
branches-ignore:
- main
workflow_dispatch:
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
jobs:
test-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install build deps
run: sudo apt-get install -y devscripts debhelper build-essential
- name: Build package
run: |
dpkg-buildpackage -us -uc -b
ls -la ../*.deb || (echo "No .deb file produced" && exit 1)
- name: Verify package
run: |
dpkg-deb --info ../*.deb
dpkg-deb --contents ../*.deb
- name: Test install
run: |
mkdir -p /usr/share/perl5/PVE/API2
mkdir -p /usr/share/pve-manager/js
# Check mock files exist before copying
if [[ ! -f tests/mock/Nodes.pm ]]; then
echo "Missing tests/mock/Nodes.pm - creating minimal mock"
echo "# mock Nodes.pm" > /usr/share/perl5/PVE/API2/Nodes.pm
else
cp tests/mock/Nodes.pm /usr/share/perl5/PVE/API2/Nodes.pm
fi
sudo dpkg -i ../*.deb
grep -q 'PVEMod_SensorInfo' /usr/share/perl5/PVE/API2/Nodes.pm \
|| (echo "ERROR: Sensor patch not applied" && exit 1)
echo "All checks passed"