qubes-core-admin icon indicating copy to clipboard operation
qubes-core-admin copied to clipboard

tests: simple end-to-end remote qrexec test

Open marmarek opened this issue 8 months ago • 4 comments

Test vm1 -> relay -> vm2-remote call path. Do it on a single host by having relay service that transform names (source to source-remote and target-remote to target). For this to work, there need to be matching pairs of VMs with and without -remote suffix, and appropriate policy for both outgoing and incoming connections.

QubesOS/qubes-issues#9015

marmarek avatar Apr 02 '25 23:04 marmarek

@fepitre I tried this. It doesn't work yet. First I hit the bug I commented in the qrexec PR. But then the source on remote side is not set - it appears as the connection is coming from the relay, not vm1-remote.

marmarek avatar Apr 02 '25 23:04 marmarek

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 70.26%. Comparing base (8a93ad3) to head (e90249b). Report is 30 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #669      +/-   ##
==========================================
+ Coverage   70.24%   70.26%   +0.02%     
==========================================
  Files          59       59              
  Lines       12739    12788      +49     
==========================================
+ Hits         8948     8986      +38     
- Misses       3791     3802      +11     
Flag Coverage Δ
unittests 70.26% <ø> (+0.02%) :arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:rocket: New features to boost your workflow:
  • :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

codecov[bot] avatar Apr 03 '25 00:04 codecov[bot]

@fepitre I tried this. It doesn't work yet. First I hit the bug I commented in the qrexec PR. But then the source on remote side is not set - it appears as the connection is coming from the relay, not vm1-remote.

Yes, I did not added the translation to source being the vm calling qrexec originally.

fepitre avatar Apr 03 '25 08:04 fepitre

OpenQA test summary

Complete test suite and dependencies: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2025042414-4.3&flavor=pull-requests

Test run included the following:

  • https://github.com/QubesOS/qubes-manager/pull/398 (https://github.com/QubesOS/qubes-manager/pull/398/commits/679eff400bd0de4887f0bb61de34250a1f842709)
  • https://github.com/QubesOS/qubes-core-admin/pull/676 (https://github.com/QubesOS/qubes-core-admin/pull/676/commits/c73115a72519bc5431ecf4b1dbdd83bea1717c7a)
  • https://github.com/QubesOS/qubes-core-admin-client/pull/332 (https://github.com/QubesOS/qubes-core-admin-client/pull/332/commits/e22c531c6eb2e0b5404b58295e499ca758627009)
  • https://github.com/QubesOS/qubes-core-admin/pull/656 (https://github.com/QubesOS/qubes-core-admin/pull/656/commits/ada7c31f62c816c778d7f3b8d9179bc132ed74f2)
  • https://github.com/QubesOS/qubes-manager/pull/421 (https://github.com/QubesOS/qubes-manager/pull/421/commits/655b01193e92d6ca0253522f2c5e9054803c6e43)
  • https://github.com/QubesOS/qubes-core-admin-client/pull/351 (https://github.com/QubesOS/qubes-core-admin-client/pull/351/commits/0bb14de328cc88ceb9a1c41f783307071b28ca6c)
  • https://github.com/QubesOS/qubes-manager/pull/420 (https://github.com/QubesOS/qubes-manager/pull/420/commits/9947e8295c98aea8a089d43649ba90547b90311e)
  • https://github.com/QubesOS/qubes-manager/pull/418 (https://github.com/QubesOS/qubes-manager/pull/418/commits/5149329036a6054234dce241426881107bfda7ee)
  • https://github.com/QubesOS/qubes-manager/pull/419 (https://github.com/QubesOS/qubes-manager/pull/419/commits/9cd7bec0d2cf3db93696a8296b4e534da0b01a4f)
  • https://github.com/QubesOS/qubes-core-admin/pull/669 (https://github.com/QubesOS/qubes-core-admin/pull/669/commits/e90249b7ce51e0bbce1c9c39fc80230b4cbb856b)
  • https://github.com/QubesOS/qubes-core-admin/pull/673 (https://github.com/QubesOS/qubes-core-admin/pull/673/commits/2d553d45a10de506c9df3bae263a238b8bdbcb81)

New failures, excluding unstable

Compared to: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.3&build=2025031804-4.3&flavor=update

  • system_tests_suspend

  • system_tests_extra

    • TC_00_QVCTest_whonix-gateway-17: test_010_screenshare (failure) ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 0 == 0
  • system_tests_kde_gui_interactive

    • gui_keyboard_layout: wait_serial (wait serial expected) # wait_serial expected: "echo -e '[Layout]\nLayoutList=us,de' | sud...

    • gui_keyboard_layout: Failed (test died) # Test died: command 'test "$(cd ~user;ls e1*)" = "$(qvm-run -p wor...

  • system_tests_qwt_win10_seamless@hw13

    • windows_clipboard_and_filecopy: unnamed test (unknown)
    • windows_clipboard_and_filecopy: Failed (test died) # Test died: no candidate needle with tag(s) 'windows-Edge-address-...
  • system_tests_qwt_win11@hw13

    • windows_install: wait_serial (wait serial expected) # wait_serial expected: qr/dcWzE-\d+-/...

    • windows_install: Failed (test died + timed out) # Test died: command 'script -e -c 'bash -x /usr/bin/qvm-create-win...

  • system_tests_audio@hw1

Failed tests

10 failures
  • system_tests_suspend

    • suspend: unnamed test (unknown)
    • suspend: Failed (test died) # Test died: no candidate needle with tag(s) 'SUSPEND-FAILED' match...
  • system_tests_extra

    • TC_00_QVCTest_whonix-gateway-17: test_010_screenshare (failure) ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^... AssertionError: 0 == 0
  • system_tests_kde_gui_interactive

    • gui_keyboard_layout: wait_serial (wait serial expected) # wait_serial expected: "echo -e '[Layout]\nLayoutList=us,de' | sud...

    • gui_keyboard_layout: Failed (test died) # Test died: command 'test "$(cd ~user;ls e1*)" = "$(qvm-run -p wor...

  • system_tests_qwt_win10_seamless@hw13

    • windows_clipboard_and_filecopy: unnamed test (unknown)
    • windows_clipboard_and_filecopy: Failed (test died) # Test died: no candidate needle with tag(s) 'windows-Edge-address-...
  • system_tests_qwt_win11@hw13

    • windows_install: wait_serial (wait serial expected) # wait_serial expected: qr/dcWzE-\d+-/...

    • windows_install: Failed (test died + timed out) # Test died: command 'script -e -c 'bash -x /usr/bin/qvm-create-win...

  • system_tests_audio@hw1

Fixed failures

Compared to: https://openqa.qubes-os.org/tests/132953#dependencies

13 fixed
  • system_tests_whonix

    • whonixcheck: fail (unknown) Whonixcheck for sys-whonix failed...

    • whonixcheck: unnamed test (unknown)

  • system_tests_suspend

  • system_tests_basic_vm_qrexec_gui

  • system_tests_qrexec

  • system_tests_kde_gui_interactive

    • clipboard_and_web: unnamed test (unknown)

    • clipboard_and_web: Failed (test died) # Test died: no candidate needle with tag(s) 'qubes-website' matche...

    • clipboard_and_web: wait_serial (wait serial expected) # wait_serial expected: "lspci; echo 2E8vz-\$?-"...

  • system_tests_audio

  • system_tests_whonix@hw7

    • whonixcheck: fail (unknown) Whonixcheck for sys-whonix failed...

    • whonixcheck: unnamed test (unknown)

  • system_tests_guivm_vnc_gui_interactive

    • gui_filecopy: unnamed test (unknown)
    • gui_filecopy: Failed (test died) # Test died: no candidate needle with tag(s) 'files-work' matched...

Unstable tests

Performance Tests

Performance degradation:

14 performance degradations
  • debian-12-xfce_exec: 8.25 :small_red_triangle_up: ( previous job: 7.12, degradation: 115.90%)
  • whonix-gateway-17_exec: 8.03 :small_red_triangle_up: ( previous job: 6.82, degradation: 117.73%)
  • whonix-gateway-17_socket: 8.06 :small_red_triangle_up: ( previous job: 7.24, degradation: 111.38%)
  • whonix-gateway-17_socket-root: 9.59 :small_red_triangle_up: ( previous job: 7.65, degradation: 125.37%)
  • dom0_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 7919.00 :small_red_triangle_up: ( previous job: 10795.00, degradation: 73.36%)
  • dom0_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 3929.00 :small_red_triangle_up: ( previous job: 4826.00, degradation: 81.41%)
  • dom0_varlibqubes_seq1m_q8t1_write 3:write_bandwidth_kb: 221639.00 :small_red_triangle_up: ( previous job: 250795.00, degradation: 88.37%)
  • dom0_varlibqubes_rnd4k_q1t1_write 3:write_bandwidth_kb: 3074.00 :small_red_triangle_up: ( previous job: 4903.00, degradation: 62.70%)
  • fedora-41-xfce_root_seq1m_q1t1_write 3:write_bandwidth_kb: 56653.00 :small_red_triangle_up: ( previous job: 87940.00, degradation: 64.42%)
  • fedora-41-xfce_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 2273.00 :small_red_triangle_up: ( previous job: 3599.00, degradation: 63.16%)
  • fedora-41-xfce_private_seq1m_q8t1_write 3:write_bandwidth_kb: 151859.00 :small_red_triangle_up: ( previous job: 170062.00, degradation: 89.30%)
  • fedora-41-xfce_volatile_seq1m_q8t1_write 3:write_bandwidth_kb: 86862.00 :small_red_triangle_up: ( previous job: 179949.00, degradation: 48.27%)
  • fedora-41-xfce_volatile_seq1m_q1t1_read 3:read_bandwidth_kb: 286339.00 :small_red_triangle_up: ( previous job: 324737.00, degradation: 88.18%)
  • fedora-41-xfce_volatile_rnd4k_q32t1_write 3:write_bandwidth_kb: 2135.00 :small_red_triangle_up: ( previous job: 5672.00, degradation: 37.64%)

Remaining performance tests:

58 tests
  • debian-12-xfce_exec-root: 29.12 :small_red_triangle_up: ( previous job: 28.65, degradation: 101.63%)
  • debian-12-xfce_socket: 8.45 :green_circle: ( previous job: 8.60, improvement: 98.26%)
  • debian-12-xfce_socket-root: 8.91 :small_red_triangle_up: ( previous job: 8.52, degradation: 104.51%)
  • debian-12-xfce_exec-data-simplex: 61.95 :green_circle: ( previous job: 71.62, improvement: 86.50%)
  • debian-12-xfce_exec-data-duplex: 70.87 :small_red_triangle_up: ( previous job: 70.34, degradation: 100.75%)
  • debian-12-xfce_exec-data-duplex-root: 81.37 :green_circle: ( previous job: 82.72, improvement: 98.37%)
  • debian-12-xfce_socket-data-duplex: 163.92 :small_red_triangle_up: ( previous job: 156.96, degradation: 104.44%)
  • fedora-41-xfce_exec: 9.40 :small_red_triangle_up: ( previous job: 9.27, degradation: 101.45%)
  • fedora-41-xfce_exec-root: 61.96 :small_red_triangle_up: ( previous job: 61.51, degradation: 100.74%)
  • fedora-41-xfce_socket: 8.39 :green_circle: ( previous job: 8.63, improvement: 97.21%)
  • fedora-41-xfce_socket-root: 8.25 :green_circle: ( previous job: 8.71, improvement: 94.71%)
  • fedora-41-xfce_exec-data-simplex: 74.08 :green_circle: ( previous job: 75.53, improvement: 98.07%)
  • fedora-41-xfce_exec-data-duplex: 62.20 :green_circle: ( previous job: 71.56, improvement: 86.92%)
  • fedora-41-xfce_exec-data-duplex-root: 100.20 :green_circle: ( previous job: 109.13, improvement: 91.82%)
  • fedora-41-xfce_socket-data-duplex: 153.77 :small_red_triangle_up: ( previous job: 150.61, degradation: 102.10%)
  • whonix-gateway-17_exec-root: 40.36 :green_circle: ( previous job: 40.43, improvement: 99.82%)
  • whonix-gateway-17_exec-data-simplex: 74.81 :green_circle: ( previous job: 78.32, improvement: 95.52%)
  • whonix-gateway-17_exec-data-duplex: 77.92 :small_red_triangle_up: ( previous job: 76.65, degradation: 101.66%)
  • whonix-gateway-17_exec-data-duplex-root: 79.61 :green_circle: ( previous job: 88.52, improvement: 89.94%)
  • whonix-gateway-17_socket-data-duplex: 170.27 :green_circle: ( previous job: 171.76, improvement: 99.13%)
  • whonix-workstation-17_exec: 7.78 :small_red_triangle_up: ( previous job: 7.67, degradation: 101.41%)
  • whonix-workstation-17_exec-root: 54.41 :green_circle: ( previous job: 58.26, improvement: 93.38%)
  • whonix-workstation-17_socket: 7.91 :green_circle: ( previous job: 8.19, improvement: 96.56%)
  • whonix-workstation-17_socket-root: 8.61 :small_red_triangle_up: ( previous job: 8.13, degradation: 105.86%)
  • whonix-workstation-17_exec-data-simplex: 71.65 :green_circle: ( previous job: 74.99, improvement: 95.54%)
  • whonix-workstation-17_exec-data-duplex: 71.31 :green_circle: ( previous job: 72.71, improvement: 98.08%)
  • whonix-workstation-17_exec-data-duplex-root: 98.73 :green_circle: ( previous job: 99.82, improvement: 98.91%)
  • whonix-workstation-17_socket-data-duplex: 159.62 :green_circle: ( previous job: 169.50, improvement: 94.17%)
  • dom0_root_seq1m_q8t1_read 3:read_bandwidth_kb: 445255.00 :small_red_triangle_up: ( previous job: 446963.00, degradation: 99.62%)
  • dom0_root_seq1m_q8t1_write 3:write_bandwidth_kb: 183373.00 :green_circle: ( previous job: 129298.00, improvement: 141.82%)
  • dom0_root_seq1m_q1t1_read 3:read_bandwidth_kb: 411690.00 :green_circle: ( previous job: 294295.00, improvement: 139.89%)
  • dom0_root_seq1m_q1t1_write 3:write_bandwidth_kb: 146898.00 :green_circle: ( previous job: 95454.00, improvement: 153.89%)
  • dom0_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 110011.00 :green_circle: ( previous job: 79803.00, improvement: 137.85%)
  • dom0_root_rnd4k_q32t1_write 3:write_bandwidth_kb: 8026.00 :green_circle: ( previous job: 6149.00, improvement: 130.53%)
  • dom0_varlibqubes_seq1m_q8t1_read 3:read_bandwidth_kb: 457693.00 :green_circle: ( previous job: 382273.00, improvement: 119.73%)
  • dom0_varlibqubes_seq1m_q1t1_read 3:read_bandwidth_kb: 439102.00 :green_circle: ( previous job: 437636.00, improvement: 100.33%)
  • dom0_varlibqubes_seq1m_q1t1_write 3:write_bandwidth_kb: 187426.00 :green_circle: ( previous job: 184752.00, improvement: 101.45%)
  • dom0_varlibqubes_rnd4k_q32t1_read 3:read_bandwidth_kb: 94784.00 :green_circle: ( previous job: 62195.00, improvement: 152.40%)
  • dom0_varlibqubes_rnd4k_q32t1_write 3:write_bandwidth_kb: 7214.00 :green_circle: ( previous job: 6479.00, improvement: 111.34%)
  • dom0_varlibqubes_rnd4k_q1t1_read 3:read_bandwidth_kb: 7600.00 :small_red_triangle_up: ( previous job: 7669.00, degradation: 99.10%)
  • fedora-41-xfce_root_seq1m_q8t1_read 3:read_bandwidth_kb: 409120.00 :green_circle: ( previous job: 368309.00, improvement: 111.08%)
  • fedora-41-xfce_root_seq1m_q8t1_write 3:write_bandwidth_kb: 170632.00 :green_circle: ( previous job: 162081.00, improvement: 105.28%)
  • fedora-41-xfce_root_seq1m_q1t1_read 3:read_bandwidth_kb: 313288.00 :small_red_triangle_up: ( previous job: 318716.00, degradation: 98.30%)
  • fedora-41-xfce_root_rnd4k_q32t1_read 3:read_bandwidth_kb: 85044.00 :green_circle: ( previous job: 82694.00, improvement: 102.84%)
  • fedora-41-xfce_root_rnd4k_q1t1_read 3:read_bandwidth_kb: 8307.00 :small_red_triangle_up: ( previous job: 8485.00, degradation: 97.90%)
  • fedora-41-xfce_root_rnd4k_q1t1_write 3:write_bandwidth_kb: 1265.00 :green_circle: ( previous job: 542.00, improvement: 233.39%)
  • fedora-41-xfce_private_seq1m_q8t1_read 3:read_bandwidth_kb: 381161.00 :green_circle: ( previous job: 373957.00, improvement: 101.93%)
  • fedora-41-xfce_private_seq1m_q1t1_read 3:read_bandwidth_kb: 333092.00 :small_red_triangle_up: ( previous job: 334687.00, degradation: 99.52%)
  • fedora-41-xfce_private_seq1m_q1t1_write 3:write_bandwidth_kb: 86931.00 :green_circle: ( previous job: 61534.00, improvement: 141.27%)
  • fedora-41-xfce_private_rnd4k_q32t1_read 3:read_bandwidth_kb: 86944.00 :green_circle: ( previous job: 80283.00, improvement: 108.30%)
  • fedora-41-xfce_private_rnd4k_q32t1_write 3:write_bandwidth_kb: 2211.00 :small_red_triangle_up: ( previous job: 2215.00, degradation: 99.82%)
  • fedora-41-xfce_private_rnd4k_q1t1_read 3:read_bandwidth_kb: 9066.00 :green_circle: ( previous job: 7540.00, improvement: 120.24%)
  • fedora-41-xfce_private_rnd4k_q1t1_write 3:write_bandwidth_kb: 1359.00 :green_circle: ( previous job: 1130.00, improvement: 120.27%)
  • fedora-41-xfce_volatile_seq1m_q8t1_read 3:read_bandwidth_kb: 352225.00 :small_red_triangle_up: ( previous job: 369868.00, degradation: 95.23%)
  • fedora-41-xfce_volatile_seq1m_q1t1_write 3:write_bandwidth_kb: 124319.00 :green_circle: ( previous job: 17567.00, improvement: 707.68%)
  • fedora-41-xfce_volatile_rnd4k_q32t1_read 3:read_bandwidth_kb: 83336.00 :green_circle: ( previous job: 79021.00, improvement: 105.46%)
  • fedora-41-xfce_volatile_rnd4k_q1t1_read 3:read_bandwidth_kb: 8830.00 :green_circle: ( previous job: 7867.00, improvement: 112.24%)
  • fedora-41-xfce_volatile_rnd4k_q1t1_write 3:write_bandwidth_kb: 1910.00 :small_red_triangle_up: ( previous job: 1953.00, degradation: 97.80%)

qubesos-bot avatar Apr 04 '25 22:04 qubesos-bot