summaryrefslogtreecommitdiff
path: root/units/ethernet
diff options
authorSylvain Pineau <sylvain.pineau@canonical.com>2017-09-18 20:56:16 +0200
committerSylvain Pineau <sylvain.pineau@canonical.com>2017-09-18 20:56:16 +0200
commit06ebc0457992bddfca74c3decc554d70ffdd310d (patch)
treeddc2038690c7e0bbd7146b3375681b919e91ab95 /units/ethernet
parenta2cbc59e55ed21f755f45a5db2df5695a2220315 (diff)
Move all jobs definition files into pxu units
Diffstat (limited to 'units/ethernet')
-rw-r--r--units/ethernet/jobs.pxu131
-rw-r--r--units/ethernet/packaging.pxu3
2 files changed, 134 insertions, 0 deletions
diff --git a/units/ethernet/jobs.pxu b/units/ethernet/jobs.pxu
new file mode 100644
index 0000000..90e0edf
--- /dev/null
+++ b/units/ethernet/jobs.pxu
@@ -0,0 +1,131 @@
+plugin: shell
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/detect
+flags: also-after-suspend
+command: network_device_info
+estimated_duration: 2.0
+_summary:
+ Report info about available network devices
+_description:
+ Test to detect and return information about available network controllers on
+ the system under test.
+
+plugin: shell
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/info_automated
+requires:
+ executable.name == 'ip'
+ device.category == 'NETWORK'
+command: udev_resource -f NETWORK | awk "/interface: / { print \$2 }" | xargs -n 1 network_info
+estimated_duration: 30.0
+_summary:
+ Gather info on current state of network devices
+_description:
+ Gathers some info on the current state of your network devices. If no devices
+ are found, the test will exit with an error.
+
+plugin: user-interact-verify
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/wired_connection
+command: network_check
+estimated_duration: 1.2
+_description:
+ PURPOSE:
+ This test will check your wired connection
+ STEPS:
+ 1. Click on the Network icon in the top panel
+ 2. Select a network below the "Wired network" section
+ 3. Click "Test" to verify that it's possible to establish a HTTP connection
+ VERIFICATION:
+ Did a notification show and was the connection correctly established?
+
+unit: template
+template-resource: device
+template-filter: device.category == 'NETWORK'
+plugin: shell
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/multi_nic_device{__index__}_{interface}
+_summary: Multi-NIC Iperf stress testing for NIC {interface}
+estimated_duration: 7400.0
+requires:
+ package.name == 'iperf' or executable.name == 'iperf'
+ package.name == 'ethtool' or executable.name == 'ethtool'
+ package.name == 'nmap' or executable.name == 'nmap'
+user: root
+environ: TEST_TARGET_IPERF
+command: network test -i {interface} -t iperf --scan-timeout 3600 --fail-threshold 80 --runtime 900 --num_runs 4
+_description:
+ This test uses iperf to ensure network devices pass data at an acceptable
+ minimum percentage of advertized speed.
+
+unit: template
+template-resource: device
+template-filter: device.category == 'NETWORK' and device.interface != 'UNKNOWN'
+plugin: shell
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/multi_iperf3_nic_device{__index__}_{interface}
+_summary: Multi-NIC Iperf3 stress testing for NIC {interface}
+estimated_duration: 7400.0
+requires:
+ package.name == 'iperf3' or executable.name == 'iperf3'
+ package.name == 'ethtool' or executable.name == 'ethtool'
+ package.name == 'nmap' or executable.name == 'nmap'
+user: root
+environ: TEST_TARGET_IPERF
+command: network test -i {interface} -t iperf --iperf3 --scan-timeout 3600 --fail-threshold 80 --cpu-load-fail-threshold 90 --runtime 900 --num_runs 4
+_description:
+ This test uses iperf3 to ensure network devices pass data at an acceptable
+ minimum percentage of advertized speed.
+
+unit: template
+template-resource: device
+template-filter: device.category == 'NETWORK' and device.interface != 'UNKNOWN'
+plugin: shell
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/ethertool_check_device{__index__}_{interface}
+_summary: ethtool check for NIC {interface}
+estimated_duration: 330.0
+requires:
+ package.name == 'ethtool' or executable.name == 'ethtool'
+user: root
+command: ethtool {interface}
+_description:
+ This test executes ethtool requests against ethernet device {__index__} ({interface}).
+
+unit: template
+template-resource: device
+template-filter: device.category == 'NETWORK' and device.interface != 'UNKNOWN'
+plugin: user-interact-verify
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/maximum_bandwidth_device{__index__}_{interface}
+_summary: Maximum bandwidth test of device {__index__} ({interface})
+estimated_duration: 330.0
+requires:
+ package.name == 'zenity'
+ package.name == 'iperf'
+user: root
+environ: TEST_TARGET_IPERF
+command: network test -i {interface} -t iperf 2>&1 | cat - <(echo; echo "Verify the result and click OK to decide on the outcome") | zenity --text-info --title 'ethernet max bw {interface}'
+_purpose:
+ User verification of whether the observed transfer throughput is acceptable
+ for the type and maximum speed of each ethernet interface.
+_steps:
+ 1. Click "Test".
+ 2. Read the network test summary and confirm that the throughput is acceptable.
+ 3. If needed, click "Test" again to repeat the transfer test.
+_verification:
+ Was the reported throughput acceptable for the type and maximum speed of this interface?
+
+unit: template
+template-resource: device
+template-filter: device.category == 'NETWORK' and device.interface != 'UNKNOWN'
+plugin: shell
+category_id: com.canonical.plainbox::ethernet
+id: ethernet/stress_performance_device{__index__}_{interface}
+_summary: Stress and performance test of ethernet device {__index__} ({interface})
+estimated_duration: 330.0
+requires:
+ package.name == 'ethtool'
+command: network test -i {interface} -t stress
+_description:
+ Automated test that tests performance of ethernet device {__index__} ({interface}).
diff --git a/units/ethernet/packaging.pxu b/units/ethernet/packaging.pxu
new file mode 100644
index 0000000..7d4a812
--- /dev/null
+++ b/units/ethernet/packaging.pxu
@@ -0,0 +1,3 @@
+unit: packaging meta-data
+os-id: debian
+Depends: kmod