Skip to content

Commit 0b9fc29

Browse files
committed
Polish
1 parent 4db959d commit 0b9fc29

File tree

1 file changed

+45
-38
lines changed

1 file changed

+45
-38
lines changed

.github/workflows/usb-wireless-autotest.yml

Lines changed: 45 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
name: "Scan USB devices"
1+
name: "WiFi performance test"
22
on:
3-
workflow_dispatch: # Manually triggered via GitHub Actions UI
3+
workflow_dispatch:
44
schedule:
55
- cron: '0 8 * * *'
66

@@ -28,7 +28,7 @@ jobs:
2828
echo "${delimiter}" >> "${GITHUB_OUTPUT}"
2929
3030
gradle:
31-
name: "Testing ${{ matrix.json.name }}"
31+
name: "${{ matrix.json.name }} (${{ matrix.json.device_class }})"
3232
runs-on: "ubuntu-24.04"
3333
needs: prepare
3434
if: ${{ needs.prepare.outputs.DEPLOYMENT_MATRIX != '[]' }}
@@ -54,30 +54,44 @@ jobs:
5454
known_hosts: ${{ secrets.KNOWN_HOSTS_ARMBIAN_CI }}
5555
if_key_exists: replace
5656

57-
- name: "Generate YAML for wireless device"
57+
- name: "Prepare device variables"
58+
id: vars
5859
shell: bash
5960
run: |
6061
61-
DEVICE=$(echo "wlx${{ matrix.json.serial }}" | sed "s/://g")
62+
# set the device IP address
63+
# set the device name
64+
echo "IP_ADDR=$(echo '${{ matrix.json.device_ip }}' | cut -d'/' -f1)" >> $GITHUB_ENV
65+
echo "DEVICE=wlx$(echo '${{ matrix.json.serial }}' | sed 's/://g')" >> $GITHUB_ENV
66+
67+
- name: "Generate YAML for wireless device"
68+
shell: bash
69+
run: |
6270
71+
# determine the access point name
72+
# based on the device class
73+
# AX - 6GHz
74+
# AC600 - 5GHz
75+
# AC - 2.4GHz
6376
case "${{ matrix.json.device_class }}" in
64-
"AX")
65-
ACCESS_POINT="GOSTJE60"
66-
;;
67-
"AC600")
68-
ACCESS_POINT="GOSTJE50"
69-
;;
70-
*)
71-
ACCESS_POINT="GOSTJE24"
72-
;;
77+
AX) ACCESS_POINT="GOSTJE60" ;;
78+
AC600) ACCESS_POINT="GOSTJE50" ;;
79+
*) ACCESS_POINT="GOSTJE24" ;;
7380
esac
7481
82+
# generate the YAML file
83+
# for the wireless device
84+
# the file is used to configure
85+
# the wireless device
86+
# to connect to the access point
87+
# and to set the IP address
88+
# and the MAC address
7589
cat > wireless.yaml <<- EOT
7690
network:
7791
version: 2
7892
renderer: networkd
7993
wifis:
80-
${DEVICE}:
94+
${{ env.DEVICE }}:
8195
addresses:
8296
- "10.0.50.50/24"
8397
nameservers:
@@ -94,26 +108,23 @@ jobs:
94108
password: "password"
95109
EOT
96110
97-
- name: "Enable wireless adapter on ${{ matrix.json.device_ip }}"
111+
- name: "Enable wireless adapter on ${{ env.IP_ADDR }}"
98112
shell: bash
99113
run: |
100114
101-
ip_addr=$(echo "${{ matrix.json.device_ip }}" | sed 's#/.*##')
102-
scp wireless.yaml ci@${ip_addr}:/tmp
103-
ssh ci@${ip_addr} "sudo mv /tmp/wireless.yaml /etc/netplan/"
104-
ssh ci@${ip_addr} "sudo chmod 600 /etc/netplan/*"
105-
ssh ci@${ip_addr} "sudo netplan apply"
115+
scp wireless.yaml ci@${{ env.IP_ADDR }}:/tmp
116+
ssh ci@${{ env.IP_ADDR }} "sudo mv /tmp/wireless.yaml /etc/netplan/"
117+
ssh ci@${{ env.IP_ADDR }} "sudo chmod 600 /etc/netplan/*"
118+
ssh ci@${{ env.IP_ADDR }} "sudo netplan apply"
106119
107120
- name: "Make sure its connected"
108121
timeout-minutes: 1
109122
shell: bash
110123
run: |
111124
112-
ip_addr=$(echo "${{ matrix.json.device_ip }}" | sed 's#/.*##')
113-
DEVICE=$(echo "wlx${{ matrix.json.serial }}" | sed "s/://g")
114125
while true; do
115-
#CONNECTION=$(ssh ci@${ip_addr} "nmcli -t -f NAME connection show --active | grep ${DEVICE} || true")
116-
CONNECTION=$(ssh ci@${ip_addr} "networkctl | grep ${DEVICE} | grep routable || true")
126+
# nmcli -t -f NAME connection show --active | grep ${DEVICE}
127+
CONNECTION=$(ssh ci@${{ env.IP_ADDR }} "networkctl | grep ${{ env.DEVICE }} | grep routable || true")
117128
if [[ -n "${CONNECTION}" ]]; then
118129
break
119130
fi
@@ -124,26 +135,22 @@ jobs:
124135
shell: bash
125136
run: |
126137
127-
ip_addr=$(echo "${{ matrix.json.device_ip }}" | sed 's#/.*##')
128-
DEVICE=$(echo "wlx${{ matrix.json.serial }}" | sed "s/://g")
129-
echo "DEVICE=$DEVICE" >> $GITHUB_ENV
130-
rm -rf test; mkdir -p test
131-
numbers=$(ssh ci@${ip_addr} "iperf3 -R -c 10.0.60.10 -B 10.0.50.50 -t 5 -J | jq '.intervals[] .sum .bits_per_second' | LC_ALL=C datamash median 1 | cut -d"-" -f2")
138+
mkdir -p test
139+
numbers=$(ssh ci@${{ env.IP_ADDR }} "iperf3 -R -c 10.0.60.10 -B 10.0.50.50 -t 5 -J | jq '.intervals[] .sum .bits_per_second' | LC_ALL=C datamash median 1 | cut -d"-" -f2")
132140
mbits=$(echo $numbers | LC_ALL=C awk '{$1/=1048576;printf "%.0f Mbps\n",$1}')
133-
echo "|${{ matrix.json.name }}|${{ matrix.json.device_type }}| ${{ matrix.json.serial }} | ${{ matrix.json.device_class }} | ${mbits} |" > test/${DEVICE}.iperf
141+
echo "|${{ matrix.json.name }}|${{ matrix.json.device_type }}| ${{ matrix.json.serial }} | ${{ matrix.json.device_class }} | ${mbits} |" > test/ci@${{ env.DEVICE }}.iperf
134142
135143
# get Armbian version and kernel
136-
echo "$(ssh ci@${ip_addr} "cat /etc/armbian-release | grep VERSION")" > test/${DEVICE}.system
137-
echo "$(ssh ci@${ip_addr} "cat /etc/armbian-release | grep ^ARCH")" > test/${DEVICE}.system
138-
echo "KERNEL=$(ssh ci@${ip_addr} "uname -r")" >> test/${DEVICE}.system
144+
echo "$(ssh ci@${{ env.IP_ADDR }} "cat /etc/armbian-release | grep VERSION")" >> test/ci@${{ env.DEVICE }}.system
145+
echo "$(ssh ci@${{ env.IP_ADDR }} "cat /etc/armbian-release | grep ^ARCH")" >> test/ci@${{ env.DEVICE }}.system
146+
echo "KERNEL=$(ssh ci@${{ env.IP_ADDR }} "uname -r")" >> test/ci@${{ env.DEVICE }}.system
139147
140148
- name: "Remove adapter"
141149
shell: bash
142150
run: |
143151
144-
ip_addr=$(echo "${{ matrix.json.device_ip }}" | sed 's#/.*##')
145-
ssh ci@${ip_addr} "sudo rm /etc/netplan/wireless.yaml"
146-
ssh ci@${ip_addr} "sudo netplan apply"
152+
ssh ci@${{ env.IP_ADDR }} "sudo rm /etc/netplan/wireless.yaml"
153+
ssh ci@${{ env.IP_ADDR }} "sudo netplan apply"
147154
148155
- name: "Upload test summary"
149156
uses: actions/upload-artifact@v4
@@ -184,7 +191,7 @@ jobs:
184191
run: |
185192
186193
source test/*.system
187-
echo "# USB dongles performance test:" >> $GITHUB_STEP_SUMMARY
194+
echo "# WiFi performance test:" >> $GITHUB_STEP_SUMMARY
188195
echo "Armbian: $VERSION - Kernel: $KERNEL - Architecture: $ARCH" >> $GITHUB_STEP_SUMMARY
189196
echo "|Name|Chip|MAC|Class|Average Iperf|" >> $GITHUB_STEP_SUMMARY
190197
echo "|:---|:---|:---|:---|---:|" >> $GITHUB_STEP_SUMMARY

0 commit comments

Comments
 (0)