OK so I have three versions of the udevadmparser code:
1- old parser as of checkbox rev 2234, this is the baseline behavior but it's prior to Sylvain's updates so the device information is somewhat quirky.
2- New parser as of checkbox rev 2235, this includes Sylvain's updates, it had the problem with the network devices we've been analyzing, but seems to produce the correct device paths for local jobs to work.
3- Fixed parser, to be proposed, we want this to produce the improved device output from 2235, but with the correct device paths. As explained, removing the commit that "cleans up" the network paths fixed network device identifiers and buses, but at the expense of messing up the paths and breaking checkbox jobs.
First I used the three versions of the parser to generate the local jobs as used by checkbox. The good news is that all three versions do generate the same jobs. So for job processing purposes, all three versions are equivalent, which is good. Here's an example of what it generates:
plugin: manual
name: networking/info_eth2
requires: device.path == "/devices/pci0000:00/0000:00:19.0"
command: network_info eth2
_description:
PURPOSE:
This test will check the different NIC
STEPS:
1. Please verify the following information for NIC eth2
INFO:
$output
VERIFICATION:
Is this correct?
plugin: shell
name: disk/stats_sda
requires:
device.path == "/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0"
block_device.sda_state != 'removable'
user: root
command: disk_stats_test sda
description: This test checks disk stats, generates some activity and rechecks stats to verify they've changed. It also verifies that disks appear in the various files they're supposed to.
More to come in a following comment, to avoid overly long comments.
OK so I have three versions of the udevadmparser code:
1- old parser as of checkbox rev 2234, this is the baseline behavior but it's prior to Sylvain's updates so the device information is somewhat quirky.
2- New parser as of checkbox rev 2235, this includes Sylvain's updates, it had the problem with the network devices we've been analyzing, but seems to produce the correct device paths for local jobs to work.
3- Fixed parser, to be proposed, we want this to produce the improved device output from 2235, but with the correct device paths. As explained, removing the commit that "cleans up" the network paths fixed network device identifiers and buses, but at the expense of messing up the paths and breaking checkbox jobs.
First I used the three versions of the parser to generate the local jobs as used by checkbox. The good news is that all three versions do generate the same jobs. So for job processing purposes, all three versions are equivalent, which is good. Here's an example of what it generates:
plugin: manual info_eth2 pci0000: 00/0000: 00:19.0"
name: networking/
requires: device.path == "/devices/
command: network_info eth2
_description:
PURPOSE:
This test will check the different NIC
STEPS:
1. Please verify the following information for NIC eth2
INFO:
$output
VERIFICATION:
Is this correct?
plugin: shell pci0000: 00/0000: 00:1f.2/ ata1/host0/ target0: 0:0/0:0: 0:0" device. sda_state != 'removable'
name: disk/stats_sda
requires:
device.path == "/devices/
block_
user: root
command: disk_stats_test sda
description: This test checks disk stats, generates some activity and rechecks stats to verify they've changed. It also verifies that disks appear in the various files they're supposed to.
More to come in a following comment, to avoid overly long comments.