@@ -24,16 +24,37 @@ jobs:
24
24
- uses : quentinguidee/pep8-action@v1
25
25
with :
26
26
arguments : ' --max-line-length=120 --ignore E265,E266,E402,E501,E704,E712,E713,E714,E711,E722,E741,W504,W605 --exclude *.yml.py,docs/*,python/bindings/* --filename=*.py,iridium-extractor'
27
- ubuntu-24-04 :
28
- name : Ubuntu 24.04
29
- runs-on : ubuntu-24.04
27
+ ubuntu :
28
+ name : Ubuntu
29
+ strategy :
30
+ matrix :
31
+ os :
32
+ - version : ubuntu-20.04
33
+ ppa : gnuradio/gnuradio-releases
34
+ packages : libsndfile-dev libspdlog-dev pybind11-dev
35
+ osmosdr-from-source : True
36
+ - version : ubuntu-20.04
37
+ ppa : gnuradio/gnuradio-releases-3.9
38
+ packages : libsndfile-dev libspdlog-dev pybind11-dev gr-osmosdr
39
+ - version : ubuntu-22.04
40
+ packages : libsndfile1-dev gr-osmosdr
41
+ - version : ubuntu-24.04
42
+ packages : gr-osmosdr
43
+ runs-on : ${{matrix.os.version}}
30
44
steps :
31
45
- uses : actions/checkout@v4
32
-
46
+ - name : Add PPA
47
+ if : ${{matrix.os.ppa}}
48
+ run : |
49
+ sudo add-apt-repository ppa:${{matrix.os.ppa}}
33
50
- name : Install GNU Radio
34
51
run : |
35
52
sudo apt update
36
53
sudo apt install gnuradio-dev cmake
54
+ - name : Install extra packages
55
+ if : ${{matrix.os.packages}}
56
+ run : |
57
+ sudo apt install ${{matrix.os.packages}}
37
58
- name : Build
38
59
run : |
39
60
cmake -B build
@@ -51,44 +72,22 @@ jobs:
51
72
run : |
52
73
iridium-extractor examples/hackrf-soapy.conf 2>&1 | tee stderr-out
53
74
cat stderr-out | grep "RuntimeError: no hackrf device matches"
54
- - name : Open SDR with gr-osmosdr
55
- run : |
56
- sudo apt install gr-osmosdr
57
- iridium-extractor examples/hackrf-10msps.conf 2>&1 | tee stderr-out
58
- cat stderr-out | grep "RuntimeError: Failed to use '0' as HackRF device index: not enough devices"
59
-
60
- ubuntu-22-04 :
61
- name : Ubuntu 22.04
62
- runs-on : ubuntu-22.04
63
- steps :
64
- - uses : actions/checkout@v4
65
-
66
- - name : Install GNU Radio
67
- run : |
68
- sudo apt update
69
- sudo apt install gnuradio-dev cmake libsndfile1-dev
70
- - name : Build
75
+ - name : Install gr-osmosdr from source
76
+ if : ${{matrix.os.osmosdr-from-source}}
71
77
run : |
78
+ git clone https://github.com/osmocom/gr-osmosdr
79
+ cd gr-osmosdr
72
80
cmake -B build
73
81
cmake --build build
74
- - name : Install
75
- run : |
76
82
cd build
77
83
sudo make install
78
84
sudo ldconfig
79
- - name : Unit Tests
80
- run : |
81
- cd build
82
- make test
83
- - name : Open SDR with gr-soapy
84
- run : |
85
- iridium-extractor examples/hackrf-soapy.conf 2>&1 | tee stderr-out
86
- cat stderr-out | grep "RuntimeError: no hackrf device matches"
85
+
87
86
- name : Open SDR with gr-osmosdr
88
87
run : |
89
- sudo apt install gr-osmosdr
90
88
iridium-extractor examples/hackrf-10msps.conf 2>&1 | tee stderr-out
91
- cat stderr-out | grep "RuntimeError: Failed to use '0' as HackRF device index: not enough devices"
89
+ cat stderr-out | grep "RuntimeError: Failed to use '0' as HackRF device index: not enough devices\|RuntimeError: no hackrf device matches"
90
+
92
91
gr-ppa :
93
92
name : Ubuntu 20.04 + GNURadio PPA
94
93
runs-on : ubuntu-20.04
0 commit comments