Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
770 commits
Select commit Hold shift + click to select a range
f812a4f
Merge release v1.5 into dev (#707)
jboddey Aug 22, 2024
a35731b
Display details of Device profile summary (#711)
sofyakurilova Aug 23, 2024
2df73c9
Adds scroll (#712)
sofyakurilova Aug 23, 2024
b9ee3ba
360106064: (feat) display outdated device profiles (#713)
OlgaMardvilko Aug 23, 2024
f41b880
single_intf to FE
hitnik Aug 22, 2024
f0607cb
feature/test_tags (#700)
jhughesoti Aug 23, 2024
7658648
Aria labels for stepper and Go to next step button are incorrect (#715)
sofyakurilova Aug 26, 2024
a449ec5
Adds padding to fit the errors (#718)
sofyakurilova Aug 26, 2024
e338420
Close form without confirmation if no changes made (#719)
sofyakurilova Aug 26, 2024
697b528
Fix overflow; fix hint on small form width (#720)
sofyakurilova Aug 26, 2024
0691189
Add device types and technologies endpoints (#658)
jboddey Aug 27, 2024
1d68c3c
Fix display of risk profile (#725)
sofyakurilova Aug 29, 2024
32c1e8a
Fix feature not detected result for tls client tests (#716)
jhughesoti Aug 29, 2024
5dd2ab4
Save Device profile with new questions (#724)
sofyakurilova Aug 29, 2024
48d6620
Change API response for device profile (#721)
jboddey Aug 29, 2024
ae58d41
362470780: (fix) change for preventing callout overlapping (#726)
OlgaMardvilko Aug 29, 2024
b16a444
API tests (#684)
MariusBaldovin Aug 29, 2024
9c35e39
362921863: (fix) create device popup view in firefox (#728)
OlgaMardvilko Aug 29, 2024
9193abb
362924178: (fix) change to align information on the welcome modal (#733)
OlgaMardvilko Aug 30, 2024
c2b1971
Fix UI issues (#734)
sofyakurilova Aug 30, 2024
81447a8
363180408: (fix) change callouts show start testrun if no valid devic…
OlgaMardvilko Aug 30, 2024
e6435f3
Add new properties to device configuration (#732)
jboddey Aug 31, 2024
60dcdc8
Prevent Testrun from starting with device if full configuration is no…
jboddey Aug 31, 2024
6b151d7
Remove default values from config for network adapters (#730)
jboddey Aug 31, 2024
d8979fe
Adds device qualification/pilot icon (#727)
sofyakurilova Aug 31, 2024
7ced90d
WIP (#717)
jboddey Aug 31, 2024
406f56c
Adds delete device button (#736)
sofyakurilova Sep 2, 2024
bc9e453
Fix device testing type (#737)
sofyakurilova Sep 2, 2024
14e9f23
Check is value is null, undefined or empty string (#738)
sofyakurilova Sep 2, 2024
4fb2b00
362724933: (feat) add program type to results tab (#739)
OlgaMardvilko Sep 3, 2024
089e170
Fix design issues (#741)
sofyakurilova Sep 3, 2024
481cd06
362646053: (feat) add program icons and change borders in tiles (#745)
OlgaMardvilko Sep 4, 2024
c36ff6f
Adds dialog if profile is successfully saved (#746)
sofyakurilova Sep 4, 2024
ecf2f1e
364545807: (fix) changes to prevent the second callout is hidden (#748)
OlgaMardvilko Sep 5, 2024
2646a2f
Change dialog height on resize (#749)
sofyakurilova Sep 5, 2024
2ed3fa6
When canceling deletion, Create device modal opens (#751)
sofyakurilova Sep 5, 2024
1e1d1e5
364828484: (fix) [GAR 1.1] change program icon aria-label (#752)
OlgaMardvilko Sep 5, 2024
91babe4
Update delete device endpoint (#729)
MariusBaldovin Sep 5, 2024
0a1fb8f
Jinja reports (#714)
hitnik Sep 5, 2024
ac07ce3
364844263: (fix) add styles on hover active device tile (#756)
OlgaMardvilko Sep 6, 2024
c295604
364578734: (fix) change device tile view to meet size (#757)
OlgaMardvilko Sep 6, 2024
d24e32e
Change button type to have the same background color (#758)
sofyakurilova Sep 6, 2024
045dc44
365059335: (fix) [GAR 1.1] change device tile structure to allow read…
OlgaMardvilko Sep 6, 2024
93c0fd6
Change hostname for MQTT service (#759)
sofyakurilova Sep 6, 2024
099902d
Exit with correct return code on api testing (#740)
jboddey Sep 6, 2024
5649a60
Update cryptography dependency (#755)
jboddey Sep 6, 2024
4d45428
Adding concept of test packs (#723)
jboddey Sep 6, 2024
ba98a66
Add dhcp_disconnect_ip_change test (#743)
jhughesoti Sep 9, 2024
894171f
No update from BE of test status results during testrun (#761)
sofyakurilova Sep 9, 2024
eaad969
Fix text for High risk profile save window (#762)
sofyakurilova Sep 9, 2024
e14f028
Focus selected item on save (#754)
sofyakurilova Sep 9, 2024
391f161
Focus first interactive element on redirect to risk assessment (#763)
sofyakurilova Sep 9, 2024
16a7950
Adds dynamic top property to callouts (#765)
sofyakurilova Sep 10, 2024
6fab65b
Added test for 'system/testpacks' endpoint, fixed typing error in api…
MariusBaldovin Sep 12, 2024
5ffd1f9
362959152: (feat) add testing complete modal (#770)
OlgaMardvilko Sep 12, 2024
f626ec4
Listen callout resize event, not window resize event (#769)
sofyakurilova Sep 12, 2024
25fa4dc
Add dhcp disconnect tests to qual test pack (#771)
jhughesoti Sep 13, 2024
b4ec5b4
Move bottom callouts to top when callout is destroyed; fix css select…
sofyakurilova Sep 13, 2024
9db6f39
Filter devices to open device dialog if all devices are outdated (#774)
sofyakurilova Sep 13, 2024
3f095c2
Rename column "Program" to "Assessment type" (#775)
sofyakurilova Sep 13, 2024
054815f
Hide "Create" text in edit mode (#773)
sofyakurilova Sep 16, 2024
0038600
Prevent default event (#777)
sofyakurilova Sep 16, 2024
12782df
Show success dialog only for valid risk profile (#779)
sofyakurilova Sep 16, 2024
6c82ae9
Filter Not Started tests from test count (#778)
sofyakurilova Sep 16, 2024
78679ce
Change version label (#780)
sofyakurilova Sep 17, 2024
3d6c4eb
Display tags for Testrun progress page (#781)
sofyakurilova Sep 17, 2024
c63e70e
365728028: (feat) improve callouts (#782)
OlgaMardvilko Sep 17, 2024
2181c8d
367673910: (fix) prevent download PDF report button focused twice on …
OlgaMardvilko Sep 18, 2024
493ca67
Fix tags (#786)
sofyakurilova Sep 18, 2024
9220494
Console errors on starting the test attempt (#784)
sofyakurilova Sep 18, 2024
eac2e85
366014294: (feat) update callouts logic (#787)
OlgaMardvilko Sep 18, 2024
8248696
Destroy "waiting for device" snackbar when status changed (#788)
sofyakurilova Sep 18, 2024
c252fdb
Mark dirty only multi select control when tab navigation (#789)
sofyakurilova Sep 19, 2024
1d451de
Adds focus flow after closing download zip/testing complete dialog (#…
sofyakurilova Sep 20, 2024
1347033
Remove tooltip from link (#793)
sofyakurilova Sep 20, 2024
f09aac4
Adds aria label; code refactoring (#790)
sofyakurilova Sep 20, 2024
a9e7d87
Add mac address filter for the device interface to single ip test (#791)
jhughesoti Sep 23, 2024
f33f107
Do not show "Save changes" dialog when there is no changes in profile…
sofyakurilova Sep 23, 2024
b89afd8
Risk profile completed modal: the redundant information is communica…
sofyakurilova Sep 23, 2024
c14c8bb
Adds timeout to allow screen reader to detect changes and pronounce t…
sofyakurilova Sep 23, 2024
3f8ea7c
Adds button action on space click
sofyakurilova Sep 23, 2024
7049707
Adds focus trap
sofyakurilova Sep 23, 2024
727f1ea
Fix tests
sofyakurilova Sep 23, 2024
f43519a
369106935: (fix) [a11y] make focused element announced (#807)
OlgaMardvilko Sep 24, 2024
7b8bf72
Focus with delay to allow screen reader detect changes
sofyakurilova Sep 24, 2024
6b31410
Focus risk assessment link when appears
sofyakurilova Sep 24, 2024
d85e792
369314564: (fix) set focus after callout dismissed (#812)
OlgaMardvilko Sep 25, 2024
9df0cd7
369312866: (fix) set focus after welcome modal is closed (#813)
OlgaMardvilko Sep 25, 2024
9e22f0d
Fix profiles page style to fit the screen
sofyakurilova Sep 24, 2024
3fa26ad
Improve style for buttons
sofyakurilova Sep 25, 2024
b689291
Improve style for buttons
sofyakurilova Sep 25, 2024
3753427
358071738: (feat) prevent listening mgtt internet connect event in si…
OlgaMardvilko Sep 25, 2024
b10a023
remove singl_intf parameter from start_ui
hitnik Sep 20, 2024
81b759e
single_intf config parameter
hitnik Sep 20, 2024
9f39f1d
added test_get_devices_format (#809)
MariusBaldovin Sep 25, 2024
1acb918
Fix condition to show dialog on name change
sofyakurilova Sep 25, 2024
bf12aa7
Fix tests
sofyakurilova Sep 25, 2024
4b4cd37
365978129: (feat) add PDF report templates (#801)
OlgaMardvilko Sep 26, 2024
957ba71
369538601: (fix) set focus to first interactive elem after stop test …
OlgaMardvilko Sep 26, 2024
aa570c2
Remove steps to resolve from information tests (#817)
jboddey Sep 26, 2024
5ee5374
369327155: (fix) set focus to selected risk profile if no changes on …
OlgaMardvilko Sep 27, 2024
de3cec8
Prevent default event
sofyakurilova Sep 26, 2024
5a49438
Adds simple dialog announcement
sofyakurilova Sep 27, 2024
291e603
Fix tests
sofyakurilova Sep 27, 2024
eccfb23
Return focus on previous active element
sofyakurilova Sep 27, 2024
e028128
remove vsa tag (#823)
jhughesoti Sep 27, 2024
1846b16
Fix baseline tests (#821)
MariusBaldovin Sep 30, 2024
c65f0a1
Active delete button on space and enter
sofyakurilova Sep 30, 2024
f226d78
369779748: (fix) add field name to validation rule for announce by Sc…
OlgaMardvilko Sep 30, 2024
7490c60
Add delay and fix dialog open configuration
sofyakurilova Sep 30, 2024
ccb8cea
Fix tests
sofyakurilova Sep 30, 2024
326b810
367979183: (fix) announce the result and description on completed tes…
OlgaMardvilko Sep 30, 2024
8087d14
Add optional recommendations for informational tests on pilot devices…
jboddey Sep 30, 2024
4a02251
select row on enter and space
sofyakurilova Sep 30, 2024
a2b7631
369542969: (fix) announce completed test modal (#832)
OlgaMardvilko Sep 30, 2024
464c6e8
fixed _ load_version (#828)
MariusBaldovin Sep 30, 2024
9fa3290
Feature/tls 1.0 (#783)
jhughesoti Oct 1, 2024
70d9f16
fix device disconnected whilst monitoring (#830)
hitnik Oct 1, 2024
d968d27
369538601: (fix) focus first interactive elem on start or stop testru…
OlgaMardvilko Oct 1, 2024
ac769d5
Adds deactivate guard for devices page
sofyakurilova Oct 1, 2024
3dd014b
Fix audit
sofyakurilova Oct 1, 2024
25df584
369788198: (fix) validation message alignment on create device (#842)
OlgaMardvilko Oct 2, 2024
11d61b1
370729271: (fix) remove asterisks on the questions in the device flow…
OlgaMardvilko Oct 2, 2024
b1c4f7b
framework/unit_tests (#841)
jhughesoti Oct 2, 2024
01b6601
370711565: (fix) changes for informational test result (#844)
OlgaMardvilko Oct 2, 2024
ebf87b7
Add role and aria-live for screen reader
sofyakurilova Oct 2, 2024
5fbacca
370923173: (fix) remove close button from the certificates panel (#847)
OlgaMardvilko Oct 2, 2024
a69409a
Change text in risk dialog
sofyakurilova Oct 2, 2024
780d3c4
Revised device qualification PDF report and Pilot PDF report. The rep…
hitnik Oct 2, 2024
416e288
Switch test modules base image to pytho:3.10-slim image (#833)
jhughesoti Oct 2, 2024
6b487b8
Change description for NTP test failure (#835)
jboddey Oct 2, 2024
76d8256
370012527: (feat) update PDF reports styles (#850)
OlgaMardvilko Oct 3, 2024
2f63319
Update docs (#839)
jboddey Oct 3, 2024
39e176d
Perform some refactoring (#846)
jboddey Oct 3, 2024
139f03f
Fix report_test.py tests (#848)
MariusBaldovin Oct 4, 2024
3471b1b
369538601: (fix) set focus to first interactive elem after stop test …
OlgaMardvilko Oct 7, 2024
4943253
371506031: (fix) make the welcome modal be on top completed test moda…
OlgaMardvilko Oct 7, 2024
6371363
366151318: (fix) add communicate steps on create device (#851)
OlgaMardvilko Oct 7, 2024
c8ab340
370941517: (fix) return focus to initial btn after cancel download zi…
OlgaMardvilko Oct 7, 2024
61a1ef8
371177676: (fix) set focus to the initial device if cancel on edit de…
OlgaMardvilko Oct 7, 2024
e2972b6
371525395: (fix) exclude error status from count of completed test re…
OlgaMardvilko Oct 8, 2024
29e65d9
371948760: (fix) set focus to first interactive elem after start test…
OlgaMardvilko Oct 8, 2024
b7b3944
feature/dns_module_resolved_ips (#862)
jhughesoti Oct 8, 2024
cc3ef21
stop monitoring when test run is cancelled (#855)
hitnik Oct 8, 2024
d52b29b
session/remove_invalid_questions (#834)
MariusBaldovin Oct 8, 2024
2b01d51
API tests (#766)
MariusBaldovin Oct 8, 2024
d0c31fd
371525174: (fix) update ui on PDF report (#866)
OlgaMardvilko Oct 8, 2024
e46a9c0
Fix navigation structure in PDF report (#867)
jboddey Oct 9, 2024
65c74ed
copy a device profile questionnaire to risk profile
hitnik Oct 7, 2024
57fada4
device risk to risk_profile risk
hitnik Oct 8, 2024
9800a1c
page counter
hitnik Oct 9, 2024
94a3a9d
bold table headers
hitnik Oct 9, 2024
a9e35b9
test report duration format
hitnik Oct 9, 2024
01222a5
372610099: (fix) update the text for Risk assessment complete modal (…
OlgaMardvilko Oct 10, 2024
35358b2
fix sensitive info risk
hitnik Oct 10, 2024
7a4b88f
Remove global app component store
sofyakurilova Oct 15, 2024
0ea6aaa
372804973: (fix) make risk profile names not case sensitive (#882)
OlgaMardvilko Oct 15, 2024
9daa9d3
370942396: (fix) change create device errors and program styles for i…
OlgaMardvilko Oct 15, 2024
49df261
Adds action value instead of null, undefined, string; move common fun…
sofyakurilova Oct 16, 2024
a682b9a
369806347: (fix) improve unit tests (#887)
OlgaMardvilko Oct 16, 2024
547a41e
Send event to GA when test run is completed for Pilot program
sofyakurilova Oct 16, 2024
6181a72
373617780: (fix) change to allow MAC address error text move on to ne…
OlgaMardvilko Oct 16, 2024
1c9bb38
Answers per page calculation refactor (#884)
hitnik Oct 17, 2024
50fef24
Send event to GA when Pilot zip is downloaded
sofyakurilova Oct 16, 2024
a3a238a
Fix tests
sofyakurilova Oct 17, 2024
71c7581
373855404: (fix) allow to change case of letters for existing profile…
OlgaMardvilko Oct 17, 2024
58d52ef
Device endpoints (#872)
MariusBaldovin Oct 17, 2024
d3206dd
Profiles endpoint (#870)
MariusBaldovin Oct 17, 2024
0c14365
Reports endpoint (#868)
MariusBaldovin Oct 17, 2024
515aa7d
Certificates endpoint (#861)
MariusBaldovin Oct 17, 2024
a81d9b1
Remove v from firmware version in UI (#897)
jboddey Oct 18, 2024
fa0de21
372768360: (feat) [Settings] only device port is enabled in no intern…
OlgaMardvilko Oct 18, 2024
fc46050
Change error message
sofyakurilova Oct 18, 2024
5a0ac68
Fix tests
sofyakurilova Oct 18, 2024
46c39ea
Update statuses.md (#894)
jboddey Oct 18, 2024
e3e6e1a
Add release 2.0 fixes to dev (#879)
jboddey Oct 18, 2024
85244da
Fix spelling mistake in report (#902)
jboddey Oct 18, 2024
0715cef
Hide complete dialog if test run is missing in reports
sofyakurilova Oct 21, 2024
5ee001b
374055268: (fix) prevent overwrite copied profile (#909)
OlgaMardvilko Oct 21, 2024
7247ac4
Update dependencies (#903)
jboddey Oct 21, 2024
9a99c45
Merge hotfix into dev (#911)
jboddey Oct 22, 2024
0d9f64a
The link provided in the risk profile answers is not clickable (#908)
sofyakurilova Oct 22, 2024
c5a2a04
Catch invalid device config nicely (#912)
jboddey Oct 22, 2024
1589978
Check if dhcp-1.pcap exists (#913)
jboddey Oct 22, 2024
f86804d
Skip first default values to display error correctly
sofyakurilova Oct 23, 2024
ccddc4d
updated package.yml to start testrun and check if successfully starte…
MariusBaldovin Oct 23, 2024
837be6a
Add better error handling to port stat tests (#914)
jboddey Oct 23, 2024
fccc586
374258745: (fix) [PDF report] wrap long words into the next line to p…
OlgaMardvilko Oct 24, 2024
5b021df
Adds separate method for value
sofyakurilova Oct 24, 2024
ce95c24
375367968: (fix) [Setting panel] remove callout about two ports warni…
OlgaMardvilko Oct 25, 2024
30d0ac9
374084009: Fix error on restoring DHCP server configuration if device…
jboddey Oct 28, 2024
aadb7a0
updated readme.md (#926)
MariusBaldovin Oct 29, 2024
851981c
Upload cert - error handling (#924)
MariusBaldovin Oct 29, 2024
3c0e8d4
Feature/cli no UI (#916)
jhughesoti Oct 29, 2024
ab785be
Connection/README.md (#937)
MariusBaldovin Oct 31, 2024
e8a8593
Disable MQTT log (#930)
jboddey Oct 31, 2024
1fe91e4
corrected mistake on vnc (#940)
MariusBaldovin Oct 31, 2024
2dac94e
remove dublicate tests from the TLS test module (#942)
hitnik Oct 31, 2024
dbece93
tls/README.md (#941)
MariusBaldovin Oct 31, 2024
c048531
updated protocol/README.md (#939)
MariusBaldovin Oct 31, 2024
bcf35c7
update readme.mf for dns module (#938)
MariusBaldovin Oct 31, 2024
64c8fc9
updated postman file (#865)
MariusBaldovin Oct 31, 2024
c56adac
Scapy update to 2.6.0 (#943)
MariusBaldovin Oct 31, 2024
20974d9
added procps package in base container (#945)
MariusBaldovin Nov 4, 2024
23a3201
remove the mqtt debug line (#944)
MariusBaldovin Nov 4, 2024
eb7f292
Unit tests (#946)
MariusBaldovin Nov 4, 2024
f66cd75
Fix security.services.vnc test (#921)
MariusBaldovin Nov 4, 2024
84c354b
Change test in Delete Report Dialog
sofyakurilova Nov 4, 2024
4ac264e
Fix style
sofyakurilova Nov 4, 2024
bc8a1fe
added error handling if 200~dhcp-1.pcap is empty (#949)
MariusBaldovin Nov 4, 2024
bc986de
Add communication network type test (#950)
jhughesoti Nov 4, 2024
f60af44
Adds tooltip for title
sofyakurilova Nov 6, 2024
ee105a3
Fix is based on console error
sofyakurilova Nov 6, 2024
7af5b42
Feature/sys test timeout (#951)
jhughesoti Nov 6, 2024
8b98a5f
374289627: (fix) change the report url from static to dynamic (#954)
OlgaMardvilko Nov 7, 2024
bb9c98a
Pin python requirements (#764)
jhughesoti Nov 7, 2024
18c9752
typo error (#961)
MariusBaldovin Nov 12, 2024
f163711
Conn/module_config typo errors (#959)
MariusBaldovin Nov 12, 2024
33db0a9
conn/ipv6_slaac (#962)
MariusBaldovin Nov 12, 2024
c22457e
Fix tls error result (#963)
jhughesoti Nov 13, 2024
a42de22
Add BACnet test and extend port scan (#957)
jboddey Nov 13, 2024
de942c2
Error handling for connection module (#960)
MariusBaldovin Nov 13, 2024
755c717
Adds coverage check
sofyakurilova Nov 18, 2024
dba5024
Adds coverage check
sofyakurilova Nov 18, 2024
5bb6bb0
Adds coverage check
sofyakurilova Nov 18, 2024
015270a
Fix floating test issue
sofyakurilova Nov 19, 2024
a5ff62a
Fix permissions of resources folder during install (#974)
jboddey Nov 20, 2024
a9a1420
Only run tests if they are included in the device's test pack (#956)
jboddey Nov 21, 2024
de47f2d
changed the logic to display the description when test is non complia…
MariusBaldovin Nov 21, 2024
1c209d5
fix chrony install error (#979)
hitnik Nov 21, 2024
8ac041d
Error handling when lease is None (#981)
MariusBaldovin Nov 22, 2024
9af06af
Bacnet traceback error (#989)
MariusBaldovin Nov 25, 2024
561ddc1
Feature/tls module report (#871)
jhughesoti Nov 29, 2024
1a45400
Initialize listener every time (#990)
jhughesoti Nov 29, 2024
ab3673f
Resolve merge conflicts
jboddey Nov 29, 2024
c993d82
Remove merge issues
jboddey Nov 29, 2024
6c64735
added version 2.1
MariusBaldovin Dec 4, 2024
ca241c8
fixed eslint
MariusBaldovin Dec 4, 2024
2e34fd3
Report is not created (#999)
MariusBaldovin Dec 6, 2024
0f20b5c
Feature/net validator (#509)
jhughesoti Dec 6, 2024
a3fcb42
Update get started doc (#1003)
jboddey Dec 6, 2024
faf17c3
Update python-multipart
jboddey Dec 7, 2024
ed32ae3
Update cryptography
jboddey Dec 9, 2024
67bf6bb
added 1 second delay, 5 attempts to stop the listener (#1011)
MariusBaldovin Dec 11, 2024
a4bff02
Capitalize ip to IP (#1010)
jboddey Dec 11, 2024
dc66b45
Change test description when cancelled
jboddey Dec 13, 2024
2fc000f
Switch src ip to src mac for TLS client testing (#1009)
jboddey Dec 13, 2024
6250656
Add roadmap
jboddey Dec 18, 2024
8915b36
Downgraded Scapy to 2.5.0 (#1026)
MariusBaldovin Dec 19, 2024
bd63e9d
Check if ntp.pcap exists before loading (#1025)
jboddey Dec 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions .github/workflows/package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,20 @@ jobs:
- name: Install package
shell: bash {0}
run: sudo apt install ./testrun*.deb
- name: Start testrun
shell: bash {0}
run: sudo testrun > >(tee testrun_output.log) 2>&1 &
- name: Verify testrun started
shell: bash {0}
run: |
sleep 5
if grep -q "API waiting for requests" testrun_output.log; then
echo "Testrun started successfully."
else
echo "Testrun did not start correctly."
cat testrun_output.log
exit 1
fi

install_package_22:
permissions: {}
Expand All @@ -69,6 +83,20 @@ jobs:
- name: Install package
shell: bash {0}
run: sudo apt install ./testrun*.deb
- name: Start testrun
shell: bash {0}
run: sudo testrun > >(tee testrun_output.log) 2>&1 &
- name: Verify testrun started
shell: bash {0}
run: |
sleep 5
if grep -q "API waiting for requests" testrun_output.log; then
echo "Testrun started successfully."
else
echo "Testrun did not start correctly."
cat testrun_output.log
exit 1
fi

install_package_24:
permissions: {}
Expand All @@ -89,3 +117,17 @@ jobs:
- name: Install package
shell: bash {0}
run: sudo apt install ./testrun*.deb
- name: Start testrun
shell: bash {0}
run: sudo testrun > >(tee testrun_output.log) 2>&1 &
- name: Verify testrun started
shell: bash {0}
run: |
sleep 5
if grep -q "API waiting for requests" testrun_output.log; then
echo "Testrun started successfully."
else
echo "Testrun did not start correctly."
cat testrun_output.log
exit 1
fi
11 changes: 4 additions & 7 deletions .github/workflows/testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,16 +97,13 @@ jobs:
- name: Run tests for reports
shell: bash {0}
run: bash testing/unit/run_report_test.sh testing/unit/report/report_test.py
- name: Archive HTML reports for modules
if: ${{ always() }}
run: sudo tar --exclude-vcs -czf html_reports.tgz testing/unit/report/output/
- name: Upload HTML reports
- name: Upload reports
uses: actions/upload-artifact@694cdabd8bdb0f10b2cea11669e1bf5453eed0a6 # v4.2.0
if: ${{ always() }}
with:
if-no-files-found: error
name: html-reports_${{ github.run_id }}
path: html_reports.tgz
name: reports_${{ github.run_id }}
path: testing/unit/report/output

pylint:
permissions: {}
Expand Down Expand Up @@ -138,7 +135,7 @@ jobs:
- name: Run tests
run: |
export CHROME_BIN=/usr/bin/chromium-browser
CI=true npm run test-headless
CI=true npm run test-ci
env:
CI: true
working-directory: ./modules/ui
Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ testing/unit/report/output/
testing/unit/risk_profile/output/
testing/unit/services/output/

# Ignore generated files from requirements generation
*requirements_freeze.txt
*unique_freeze.txt
*requirements_gen.txt

*.deb
make/DEBIAN/postinst

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Testrun provides the network and assistive tools for engineers when manual testi
## Hardware

- PC running Ubuntu LTS 20.04, 22.04, or 24.04 (laptop or desktop)
- 2x USB Ethernet adapter (one may be built-in Ethernet)
- 2x ethernet ports (USB ethernet adapters work too)
- Internet connection

## Software
Expand Down Expand Up @@ -72,7 +72,7 @@ We strongly encourage contributions from the community. Review the requirements

You can resolve most issues by reinstalling Testrun using these commands:
- `sudo docker system prune -a`
- `sudo apt install ./testrun-*.deb`
- `sudo apt install ./testrun*.deb`

If this doesn't resolve the problem, [raise an issue](https://github.com/google/testrun/issues).

Expand Down
4 changes: 2 additions & 2 deletions cmd/build_ui
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ docker kill tr-ui-build 2> /dev/null || true

echo "Building the user interface"

# Start build container and build the ui dist
docker run --rm -v $PWD/modules/ui:/modules/ui testrun/build-ui /bin/sh -c "npm install && npm run build"
# Start build container and build the ui dist
docker run --rm -v "$(pwd)"/modules/ui:/modules/ui testrun/build-ui /bin/sh -c "npm install && npm run build"

# Kill the container (Should not be running anymore)
docker kill tr-ui-build 2> /dev/null || true
2 changes: 1 addition & 1 deletion cmd/install
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ mkdir -p local/{devices,root_certs,risk_profiles}
# This does not work on GitHub actions
if logname ; then
USER_NAME=$(logname)
sudo chown -R "$USER_NAME" local || true
sudo chown -R "$USER_NAME" local resources || true
fi

echo Finished installing Testrun
6 changes: 6 additions & 0 deletions cmd/package
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@ if [[ "$EUID" == 0 ]]; then
exit 1
fi

# Check that user is in docker group
if ! (id -nGz "$USER" | grep -qzxF "docker"); then
echo User is not in docker group. Follow https://docs.docker.com/engine/install/linux-postinstall/ to finish setting up docker.
exit 1
fi

MAKE_SRC_DIR=make
MAKE_CONTROL_DIR=make/DEBIAN/control

Expand Down
115 changes: 115 additions & 0 deletions cmd/update_requirements
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
# #!/bin/bash -e

# # Copyright 2023 Google LLC
# #
# # Licensed under the Apache License, Version 2.0 (the "License");
# # you may not use this file except in compliance with the License.
# # You may obtain a copy of the License at
# #
# # https://www.apache.org/licenses/LICENSE-2.0
# #
# # Unless required by applicable law or agreed to in writing, software
# # distributed under the License is distributed on an "AS IS" BASIS,
# # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# # See the License for the specific language governing permissions and
# # limitations under the License.

# update_requirements(){
# modules_dir="$1"
# for dir in $modules_dir/* ; do
# echo "dir: $dir"
# module=$(basename "$dir")
# MODULE_DIR="$PWD/$modules_dir/$module/python"
# IMAGE=testrun/$module
# # Check if updating the test modules
# if [[ $modules_dir == *test* ]]; then
# # Append '-test' to the variable
# IMAGE="${IMAGE}-test"
# fi
# echo "Module dir: $MODULE_DIR"
# echo "Image: $IMAGE"
# echo Updating requirements for module $modules_dir/$module...

# if [ -e "$MODULE_DIR/requirements.txt" ]; then
# if docker run --rm -v "$PWD/$modules_dir/$module/python/:/testrun/python/" --entrypoint /bin/bash $IMAGE -c "pip3 freeze > /testrun/python/requirements_freeze.txt" ; then
# echo Successfully built requirements file for module $modules_dir/$module

# # Normalize line endings and remove extra spaces
# dos2unix "$MODULE_DIR/requirements.txt" "$MODULE_DIR/requirements_freeze.txt"
# sed -i 's/^[ \t]*//;s/[ \t]*$//' "$MODULE_DIR/requirements.txt" "$MODULE_DIR/requirements_freeze.txt"

# # Temporary file to store unique packages
# > "$MODULE_DIR/unique_freeze.txt"

# # Find unique packages in requirements_freeze.txt that are not in requirements.txt
# while IFS= read -r freeze_line; do
# # Extract the package name from freeze_line
# freeze_package=$(echo "$freeze_line" | cut -d'=' -f1 | xargs)

# echo "Frozen package: $freeze_package"
# # Search for the package name in requirements.txt, ignoring case and whitespace
# if ! grep -iq "^${freeze_package}$" "$MODULE_DIR/requirements.txt"; then
# echo "$freeze_line" >> "$MODULE_DIR/unique_freeze.txt"
# fi
# done < "$MODULE_DIR/requirements_freeze.txt"

# # Temporary file to store generated requirements
# > "$MODULE_DIR/requirements_gen.txt"

# # Add the downstream packages at the top of requirements_gen.txt
# # so we pull in package dependencies before the defined dependency
# # to prevent auto-upgrades in the package pipeline
# echo "# Dependencies to user defined packages" > "$MODULE_DIR/requirements_gen.txt"
# echo -e "# Package dependencies should always be defined before the user defined" >> "$MODULE_DIR/requirements_gen.txt"
# echo -e "# packages to prevent auto-upgrades of stable dependencies" >> "$MODULE_DIR/requirements_gen.txt"
# cat "$MODULE_DIR/unique_freeze.txt" >> "$MODULE_DIR/requirements_gen.txt"

# # Create the requirements_gen.txt file
# echo -e "\n# User defined packages" >> "$MODULE_DIR/requirements_gen.txt"

# # Loop through each package in requirements.txt
# while IFS= read -r package; do
# # Trim leading and trailing whitespace from package
# package=$(echo "$package" | xargs)
# echo "Package: $package"

# # Extract the base package name (without version or any comparison operator)
# base_package=$(echo "$package" | sed -E 's/[<>=!].*//')
# echo "Base package: $base_package"

# # Check if the base package is a comment and non-empty
# if [[ -n "$base_package" && "$base_package" != \#* ]]; then
# # Perform the grep only if it is not a comment
# versioned_package=$(grep -i "^${base_package}==" "$MODULE_DIR/requirements_freeze.txt")
# else
# # Set versioned_package to empty if it's a comment
# versioned_package=""
# fi

# # Debug output: Print the result of matching
# echo "Versioned Package: '$versioned_package'"

# if [ -n "$versioned_package" ]; then
# # If the package with the version is found, add it to requirements_gen.txt
# echo "$versioned_package" >> "$MODULE_DIR/requirements_gen.txt"
# else
# # If not found, just add the package as is from requirements.txt
# echo "$package" >> "$MODULE_DIR/requirements_gen.txt"
# fi
# done < "$MODULE_DIR/requirements.txt"
# echo "Module done"

# else
# echo An error occurred while building requirements file for network module $module
# exit 1
# fi
# else
# echo No requirements.txt file defined for this module
# fi
# done
# }
# echo Updating python requirements in network modules
# update_requirements modules/network

# echo Updating python requirements in test modules
# update_requirements modules/test
Loading
Loading