Skip to content

workflow: split generated updates from tests #241

workflow: split generated updates from tests

workflow: split generated updates from tests #241

Workflow file for this run

name: FHEM Unit Tests
permissions:
contents: read
on:
pull_request:
paths:
- 'FHEM/**'
- 'lib/**'
- 'CHANGED'
- 'controls_WebAuth.txt'
- 'README.md'
- '.devcontainer/svn-manifest.txt'
- 't/**'
- 'cpanfile'
- 'scripts/**'
- '.github/workflows/fhem_test.yml'
push:
paths:
- 'FHEM/**'
- 'lib/**'
- 'CHANGED'
- 'controls_WebAuth.txt'
- 'README.md'
- '.devcontainer/svn-manifest.txt'
- 't/**'
- 'cpanfile'
- 'scripts/**'
- '.github/workflows/fhem_test.yml'
schedule:
- cron: '33 16 * * 1'
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
concurrency:
group: ${{ github.workflow }}-test-${{ matrix.perl }}-${{ github.event.pull_request.head.ref || github.ref_name }}
cancel-in-progress: true
strategy:
matrix:
perl: ['5.28', '5.32', '5.38']
name: Perl ${{ matrix.perl }}
steps:
- uses: actions/checkout@v6
- uses: shogo82148/actions-setup-perl@v1.38.1
with:
perl-version: ${{ matrix.perl }}
install-modules-with: cpanm
install-modules-args: --notest
- name: Install CPAN dependencies
run: cpanm --installdeps . --notest
- name: Install FHEM via debian nightly
uses: fhem/setup-fhem@v1.0.1
- name: Change ownership of /opt/fhem
run: sudo chown -R --reference=cpanfile /opt/fhem
- name: Run helper module tests
run: prove -I lib -r -vv t/FHEM/Core/Authentication
- name: Run FHEM testsuite
env:
FHEM_DIR: /opt/fhem
run: |
cp -r FHEM/* ${FHEM_DIR}/FHEM/
mkdir -p ${FHEM_DIR}/lib
cp -r lib/* ${FHEM_DIR}/lib/
cd ${FHEM_DIR}
prove --exec 'perl fhem.pl -t' -I FHEM -r -vv \
${GITHUB_WORKSPACE}/t/FHEM/01_FHEMWEB \
${GITHUB_WORKSPACE}/t/FHEM/98_WebAuth