mirror of
https://github.com/kernelkit/infix.git
synced 2026-07-30 04:33:00 +02:00
Break out unit tests to separate make target as they don't require all the built code and infrastructure that the normal tests does. Run the unit tests early in the Github action stage. They don't require a full build. This will give early feedback to the users. Signed-off-by: Richard Alpe <richard@bit42.se>
76 lines
2.0 KiB
YAML
76 lines
2.0 KiB
YAML
name: Reggie Regression
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- '*'
|
|
pull_request:
|
|
branches:
|
|
- '*'
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
name: Regression Testing
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
submodules: 'true'
|
|
- name: Set Build Variables
|
|
id: vars
|
|
run: |
|
|
target=x86_64
|
|
echo "dir=infix-$target" >> $GITHUB_OUTPUT
|
|
echo "tgz=infix-$target.tar.gz" >> $GITHUB_OUTPUT
|
|
- name: Restore Cache of dl/
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: dl/
|
|
key: dl-x86_64-netconf-${{ hashFiles('.git/modules/buildroot/refs/heads/master', 'package/*/*.hash') }}
|
|
restore-keys: |
|
|
dl-x86_64-netconf-
|
|
dl-x86_64-
|
|
dl-
|
|
- name: Restore Cache of .ccache/
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: .ccache/
|
|
key: ccache-x86_64-netconf-${{ hashFiles('.git/modules/buildroot/refs/head/master', 'package/*/*.hash') }}
|
|
restore-keys: |
|
|
ccache-x86_64-netconf-
|
|
ccache-x86_64-
|
|
ccache-
|
|
- name: Configure NETCONF
|
|
run: |
|
|
make x86_64_defconfig
|
|
|
|
- name: Unit Test
|
|
run: make test-unit
|
|
|
|
- name: Build
|
|
run: |
|
|
make
|
|
- name: Prepare Artifact
|
|
run: |
|
|
cd output
|
|
mv images ${{ steps.vars.outputs.dir }}
|
|
ln -s ${{ steps.vars.outputs.dir }} images
|
|
tar cfz ${{ steps.vars.outputs.tgz }} ${{ steps.vars.outputs.dir }}
|
|
- name: Upload Artifact
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
path: output/${{ steps.vars.outputs.tgz }}
|
|
|
|
- name: Regression Test
|
|
run: make test-qeneth
|
|
|
|
- name: Publish Test Result
|
|
# Ensure this runs even if Regression Test fails
|
|
if: always()
|
|
run: cat test/.log/last/result-gh.md >> $GITHUB_STEP_SUMMARY
|