-
Notifications
You must be signed in to change notification settings - Fork 61
116 lines (110 loc) · 3.11 KB
/
build_PR.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
name: Build PR
run-name: ${{ github.actor }} running Build PR
on:
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Dependencies
run: ./deploy/dependencies/install_dependencies_ubuntu_24_04.sh
shell: bash
- name: Build
run: ./tests/test_kernel_build.sh
shell: bash
- name: Install
run: ./tests/test_kernel_install.sh
shell: bash
run-kernel-module-test:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Dependencies
run: ./deploy/dependencies/install_dependencies_ubuntu_24_04.sh
shell: bash
- name: Test Install
run: ./tests/test_kernel_install.sh
shell: bash
- name: Test Reload First
run: ./tests/test_kernel_reload.sh
shell: bash
- name: Test Reload Second
run: ./tests/test_kernel_reload.sh
shell: bash
run-kernel-dkms-install-test:
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Dependencies
run: ./deploy/dependencies/install_dependencies_ubuntu_24_04.sh
shell: bash
- name: Build
run: ./tests/test_kenel_dkms_install.sh || true
shell: bash
run-tests:
name: Run Tests
runs-on: ubuntu-24.04
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Install Development Dependencies
run: ./deploy/dependencies/install_development_dependencies_ubuntu_24_04.sh
shell: bash
- name: Lint with Linux checkpath
if: always()
run: ./tests/test_kernel_checkpath.sh
shell: bash
- name: Lint with pylint
if: always()
run: ./tests/test_python.sh
shell: bash
- name: Test python CLI
if: always()
run: ./tests/test_python_cli.sh
shell: bash
#- name: Test python GUI
#if: always()
#run: ./tests/test_python_gui.sh
#shell: bash
- name: Install python package
if: always()
run: ./deploy/python_install_pip_pkg.sh
shell: bash
check-kernel-module-change:
needs: [build, run-kernel-module-test, run-kernel-dkms-install-test, run-tests]
runs-on: ubuntu-24.04
outputs:
output1: ${{ steps.filter.outputs.workflows }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
workflows:
- 'kernel_module/*'
release-kernel-patch:
needs: [check-kernel-module-change]
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Build kernel patch
if: steps.check-kernel-module-change.workflows == 'true'
run: ./deploy/build_kernelpatch.sh
shell: bash
test-in-docker-container:
needs: [build, run-tests]
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build containers and run tests inside them
run: ./deploy/build_containers.sh
shell: bash