[Fusioninventory-commit] [fusinv/fusioninventory-agent] d430eb: Change in regexp for mpt-status output
Guillaume Rousse
guillomovitch at gmail.com
Thu May 3 07:22:19 UTC 2012
Branch: refs/heads/2.2.x
Home: https://github.com/fusinv/fusioninventory-agent
Commit: d430eb224035bb7d486425a5e772149a601fdedb
https://github.com/fusinv/fusioninventory-agent/commit/d430eb224035bb7d486425a5e772149a601fdedb
Author: Alexander Evseev <PunchyBummer at mailinator.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
Log Message:
-----------
Change in regexp for mpt-status output
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
index 2b6a0ca..c8af20d 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
@@ -33,7 +33,7 @@ sub doInventory {
);
next unless $handle;
while (my $line = <$handle>) {
- next unless /phys_id:(\d+).*product_id:\s*(\S*)\s+revision:(\S+).*size\(GB\):(\d+)/;
+ next unless $line =~ /phys_id:(\d+).*product_id:\s*(\S*)\s+revision:(\S+).*size\(GB\):(\d+)/;
my $id = $1;
my $storage = {
================================================================
Commit: f1d45d1c9416cde88cd2a6204c4a82cd737c1cf2
https://github.com/fusinv/fusioninventory-agent/commit/f1d45d1c9416cde88cd2a6204c4a82cd737c1cf2
Author: Alexander Evseev <PunchyBummer at mailinator.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
Log Message:
-----------
Alternative naming for adaptec controller
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
index 4662f62..23bb8a3 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
@@ -28,7 +28,9 @@ sub doInventory {
foreach my $device (@devices) {
next unless $device->{MANUFACTURER};
- next unless $device->{MANUFACTURER} eq 'Adaptec';
+ next unless
+ $device->{MANUFACTURER} eq 'Adaptec' ||
+ $device->{MANUFACTURER} eq 'ServeRA';
foreach my $disk (_getDisksFromProc(
controller => 'scsi' . $device->{SCSI_COID},
================================================================
Commit: a5214e3cbc2cdf19d57a79a3fd957a7b0efb1051
https://github.com/fusinv/fusioninventory-agent/commit/a5214e3cbc2cdf19d57a79a3fd957a7b0efb1051
Author: Alexander Evseev <PunchyBummer at mailinator.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
Log Message:
-----------
Alternative model for adaptec controller
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
index 23bb8a3..9ddf21a 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
@@ -80,7 +80,7 @@ sub _getDisksFromProc {
$disk->{FIRMWARE} = $2;
# that's the controller itself, not a disk
- next if $disk->{MODEL} =~ 'raid';
+ next if $disk->{MODEL} =~ /(raid|RAID)/;
$disk->{MANUFACTURER} = getCanonicalManufacturer(
$disk->{MODEL}
================================================================
Commit: 5856d94f43a6f5f9e1661c19c029c958f3b5809b
https://github.com/fusinv/fusioninventory-agent/commit/5856d94f43a6f5f9e1661c19c029c958f3b5809b
Author: Alexander Evseev <PunchyBummer at mailinator.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Generic/Processes.pm
Log Message:
-----------
Ability to disable processes inventory
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Generic/Processes.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Generic/Processes.pm
index e22c36c..ca95aaa 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Generic/Processes.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Generic/Processes.pm
@@ -11,6 +11,7 @@ use FusionInventory::Agent::Tools::Unix;
sub isEnabled {
return
$OSNAME ne 'MSWin32' &&
+ !$params{no_category}->{process} &&
canRun('ps');
}
================================================================
Commit: e9619578553af32e337c0798069e4ba178bc0e6a
https://github.com/fusinv/fusioninventory-agent/commit/e9619578553af32e337c0798069e4ba178bc0e6a
Author: Alexander Evseev <PunchyBummer at mailinator.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
Log Message:
-----------
qemu and kvm may have virtio disks (vd?) and SCSI emulation (sd?)
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
index 92a8d21..a4a68a4 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
@@ -27,7 +27,8 @@ sub doInventory {
logger => $logger, command => 'ps -ef'
)) {
# match only if an qemu instance
- next unless $process->{CMD} =~ /(qemu|kvm|(qemu-kvm)).*\-([fh]d[a-d]|cdrom).*/;
+ next unless
+ $process->{CMD} =~ /(qemu|kvm|(qemu-kvm)).*\-([fhsv]d[a-d]|cdrom).*/;
my $name;
my $mem = 0;
================================================================
Commit: 427efab9735765131b47d170c834ee33c66dfc43
https://github.com/fusinv/fusioninventory-agent/commit/427efab9735765131b47d170c834ee33c66dfc43
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Tools/Linux.pm
Log Message:
-----------
get device name from file content, not file name
SUSE has names for block devices in /dev/.udev/db/ like b<major>:<minor>
(ex. b8:0)
Reported-by: Alexander Evseev <PunchyBummer at mailinator.com>
diff --git a/lib/FusionInventory/Agent/Tools/Linux.pm b/lib/FusionInventory/Agent/Tools/Linux.pm
index 94a38c8..983a329 100644
--- a/lib/FusionInventory/Agent/Tools/Linux.pm
+++ b/lib/FusionInventory/Agent/Tools/Linux.pm
@@ -29,8 +29,11 @@ sub getDevicesFromUdev {
my @devices;
foreach my $file (glob ("/dev/.udev/db/*")) {
- next unless $file =~ /([sh]d[a-z])$/;
- my $device = $1;
+ my $device = getFirstMatch(
+ file => $file,
+ pattern => qr/^N:(\S+)/
+ );
+ next unless $device =~ /([hsv]d[a-z]|sr\d+)$/;
push (@devices, _parseUdevEntry(
logger => $params{logger}, file => $file, device => $device
));
================================================================
Commit: d147d57522cc5928966f8b73f83f364794e3037e
https://github.com/fusinv/fusioninventory-agent/commit/d147d57522cc5928966f8b73f83f364794e3037e
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
Log Message:
-----------
more readable regexp
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
index a4a68a4..ac8ef98 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
@@ -28,7 +28,7 @@ sub doInventory {
)) {
# match only if an qemu instance
next unless
- $process->{CMD} =~ /(qemu|kvm|(qemu-kvm)).*\-([fhsv]d[a-d]|cdrom).*/;
+ $process->{CMD} =~ /(qemu|kvm|qemu-kvm) .* -([fhsv]d[a-d]|cdrom)/x;
my $name;
my $mem = 0;
================================================================
Commit: 6f7adb43bfcd73e6ce15f42c465451f02d0b99f9
https://github.com/fusinv/fusioninventory-agent/commit/6f7adb43bfcd73e6ce15f42c465451f02d0b99f9
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
Log Message:
-----------
- is not a metacharacter outside character class
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
index ac8ef98..0212d78 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
@@ -35,7 +35,7 @@ sub doInventory {
my $uuid;
my $vmtype = $1;
- my @options = split (/\-/, $process->{CMD});
+ my @options = split (/-/, $process->{CMD});
foreach my $option (@options) {
if ($option =~ m/^([fh]d[a-d]|cdrom) (\S+)/) {
$name = $2 if !$name;
================================================================
Commit: 131b4f2438007240999bfe9c8d69d12759502b06
https://github.com/fusinv/fusioninventory-agent/commit/131b4f2438007240999bfe9c8d69d12759502b06
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
Log Message:
-----------
add other disk emulation types
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
index 0212d78..fd2ed89 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
@@ -37,7 +37,7 @@ sub doInventory {
my @options = split (/-/, $process->{CMD});
foreach my $option (@options) {
- if ($option =~ m/^([fh]d[a-d]|cdrom) (\S+)/) {
+ if ($option =~ m/^([fhsv]d[a-d]|cdrom) (\S+)/) {
$name = $2 if !$name;
} elsif ($option =~ m/^name (\S+)/) {
$name = $1;
================================================================
Commit: 50a278d5e8a7b7409e2f86e743e0ee8a1cbe20f0
https://github.com/fusinv/fusioninventory-agent/commit/50a278d5e8a7b7409e2f86e743e0ee8a1cbe20f0
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-04-26 (Thu, 26 Apr 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
Log Message:
-----------
don't capture uselessly
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
index fd2ed89..979c2ed 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Qemu.pm
@@ -37,8 +37,8 @@ sub doInventory {
my @options = split (/-/, $process->{CMD});
foreach my $option (@options) {
- if ($option =~ m/^([fhsv]d[a-d]|cdrom) (\S+)/) {
- $name = $2 if !$name;
+ if ($option =~ m/^(?:[fhsv]d[a-d]|cdrom) (\S+)/) {
+ $name = $1 if !$name;
} elsif ($option =~ m/^name (\S+)/) {
$name = $1;
} elsif ($option =~ m/^m (\S+)/) {
================================================================
Commit: 2fb62fbbb3ef73f3593b8bc7b8d797b890dc7014
https://github.com/fusinv/fusioninventory-agent/commit/2fb62fbbb3ef73f3593b8bc7b8d797b890dc7014
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Tools/Generic.pm
M lib/FusionInventory/Agent/Tools/Screen.pm
M t/tools/generic.t
Log Message:
-----------
Merge remote-tracking branch 'forge/2.2.x' into 2.2.x
diff --git a/lib/FusionInventory/Agent/Tools/Generic.pm b/lib/FusionInventory/Agent/Tools/Generic.pm
index 25ac7ba..825b70a 100644
--- a/lib/FusionInventory/Agent/Tools/Generic.pm
+++ b/lib/FusionInventory/Agent/Tools/Generic.pm
@@ -99,13 +99,20 @@ sub getCpusFromDmidecode {
$cpu->{SPEED} = $1 * 1000;
}
}
- if (!$cpu->{SPEED}) {
- if ($info->{'Max Speed'}) {
- if ($info->{'Max Speed'} =~ /^\s*(\d+)\s*Mhz/i) {
- $cpu->{SPEED} = $1;
- } elsif ($info->{'Max Speed'} =~ /^\s*(\d+)\s*Ghz/i) {
- $cpu->{SPEED} = $1 * 1000;
- }
+ if (!$cpu->{SPEED} && $info->{'Max Speed'}) {
+ # We only look for 3 digit Mhz frequency to avoid abvious bad
+ # value like 30000 (#633)
+ if ($info->{'Max Speed'} =~ /^\s*(\d{3,4})\s*Mhz/i) {
+ $cpu->{SPEED} = $1;
+ } elsif ($info->{'Max Speed'} =~ /^\s*(\d+)\s*Ghz/i) {
+ $cpu->{SPEED} = $1 * 1000;
+ }
+ }
+ if (!$cpu->{SPEED} && $info->{'Current Speed'}) {
+ if ($info->{'Current Speed'} =~ /^\s*(\d{3,4})\s*Mhz/i) {
+ $cpu->{SPEED} = $1;
+ } elsif ($info->{'Current Speed'} =~ /^\s*(\d+)\s*Ghz/i) {
+ $cpu->{SPEED} = $1 * 1000;
}
}
diff --git a/lib/FusionInventory/Agent/Tools/Screen.pm b/lib/FusionInventory/Agent/Tools/Screen.pm
index 5cb71db..cd479fb 100644
--- a/lib/FusionInventory/Agent/Tools/Screen.pm
+++ b/lib/FusionInventory/Agent/Tools/Screen.pm
@@ -487,7 +487,9 @@ sub getManufacturerFromCode {
"IFS" => "InFocus",
"BOE" => "BOE Display Technology",
"IQT" => "Hyundai",
- "HSD" => "Hannspree Inc"
+ "HSD" => "Hannspree Inc",
+ "PRT" => "Princeton",
+ "PDC" => "Polaroid"
};
diff --git a/t/tools/generic.t b/t/tools/generic.t
index 42f4c6d..16f053e 100755
--- a/t/tools/generic.t
+++ b/t/tools/generic.t
@@ -5894,7 +5894,7 @@ my %cpu_tests = (
{
ID => '42 0F 10 00 FF FB 8B 07',
NAME => undef,
- SPEED => '30000',
+ SPEED => '2300',
THREAD => undef,
SERIAL => undef,
MANUFACTURER => 'AuthenticAMD',
================================================================
Commit: c6eb0313fa092e9fec3d5bdb5a08666ef4aa8fa9
https://github.com/fusinv/fusioninventory-agent/commit/c6eb0313fa092e9fec3d5bdb5a08666ef4aa8fa9
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
Log Message:
-----------
isolate parsing into a function
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
index c8af20d..b57b28d 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
@@ -26,37 +26,48 @@ sub doInventory {
my @devices = getDevicesFromUdev(logger => $logger);
- foreach my $hd (@devices) {
- my $handle = getFileHandle(
- logger => $logger,
- command => "mpt-status -n -i $hd->{SCSI_UNID}"
- );
- next unless $handle;
- while (my $line = <$handle>) {
- next unless $line =~ /phys_id:(\d+).*product_id:\s*(\S*)\s+revision:(\S+).*size\(GB\):(\d+)/;
- my $id = $1;
-
- my $storage = {
- NAME => $hd->{NAME},
- DESCRIPTION => 'SATA',
- TYPE => 'disk',
- MODEL => $2,
- FIRMWARE => $3,
- SIZE => $4 * 1024
- };
-
- $storage->{SERIALNUMBER} = getSerialnumber(
- device => "/dev/sg$id"
+ foreach my $device (@devices) {
+ foreach my $disk (_getDiskFromMptStatus(
+ name => $device->{NAME},
+ logger => $logger,
+ command => "mpt-status -n -i $device->{SCSI_UNID}"
+ )) {
+ $disk->{SERIALNUMBER} = getSerialnumber(
+ device => "/dev/sg$disk->{id}"
);
- $storage->{MANUFACTURER} = getCanonicalManufacturer(
- $storage->{MODEL}
- );
-
- $inventory->addEntry(section => 'STORAGES', entry => $storage);
+ delete $disk->{id};
+ $inventory->addEntry(section => 'STORAGES', entry => $disk);
}
- close $handle;
}
}
+sub _getDiskFromMptStatus {
+ my (%params) = @_;
+
+ my $handle = getFileHandle(%params);
+ next unless $handle;
+
+ my @disks;
+ while (my $line = <$handle>) {
+ next unless $line =~ /phys_id:(\d+).*product_id:\s*(\S*)\s+revision:(\S+).*size\(GB\):(\d+)/;
+
+ my $disk = {
+ NAME => $params{name},
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ id => $1,
+ MODEL => $2,
+ MANUFACTURER => getCanonicalManufacturer($2),
+ FIRMWARE => $3,
+ SIZE => $4 * 1024
+ };
+
+ push @disks, $disk;
+ }
+ close $handle;
+
+ return @disks;
+}
+
1;
================================================================
Commit: 606558078b7de5dcff50add5582775531295cd7e
https://github.com/fusinv/fusioninventory-agent/commit/606558078b7de5dcff50add5582775531295cd7e
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
Log Message:
-----------
more understandable regexp
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
index b57b28d..ce0b463 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
@@ -50,7 +50,14 @@ sub _getDiskFromMptStatus {
my @disks;
while (my $line = <$handle>) {
- next unless $line =~ /phys_id:(\d+).*product_id:\s*(\S*)\s+revision:(\S+).*size\(GB\):(\d+)/;
+ next unless $line =~ /
+ phys_id:(\d+) \s
+ scsi_id:\d+ \s
+ vendor:\S+ \s+
+ product_id:(\S+) \s+
+ revision:(\S+) \s+
+ size\(GB\):(\d+)
+ /x;
my $disk = {
NAME => $params{name},
================================================================
Commit: 9ed21970f05e17312158b370f534cc6598b82545
https://github.com/fusinv/fusioninventory-agent/commit/9ed21970f05e17312158b370f534cc6598b82545
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
Log Message:
-----------
fix product_id parsing
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
index ce0b463..4404d02 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
@@ -54,7 +54,7 @@ sub _getDiskFromMptStatus {
phys_id:(\d+) \s
scsi_id:\d+ \s
vendor:\S+ \s+
- product_id:(\S+) \s+
+ product_id:(\S.+\S) \s+
revision:(\S+) \s+
size\(GB\):(\d+)
/x;
================================================================
Commit: 1eabd29364a18a5c0ef324ac95f6d35be38f93ad
https://github.com/fusinv/fusioninventory-agent/commit/1eabd29364a18a5c0ef324ac95f6d35be38f93ad
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
A resources/linux/mpt-status/sample1
A resources/linux/mpt-status/sample2
A t/inventory/linux/storages/lsilogic.t
Log Message:
-----------
initial import
diff --git a/resources/linux/mpt-status/sample1 b/resources/linux/mpt-status/sample1
new file mode 100644
index 0000000..bd2e0b2
--- /dev/null
+++ b/resources/linux/mpt-status/sample1
@@ -0,0 +1,5 @@
+ioc:0 vol_id:0 type:IM raidlevel:RAID-1 num_disks:2 size(GB):148 state: OPTIMAL flags: ENABLED
+ioc:0 phys_id:1 scsi_id:2 vendor:ATA product_id:ST3160815AS revision:D size(GB):149 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+ioc:0 phys_id:0 scsi_id:1 vendor:ATA product_id:ST3160815AS revision:D size(GB):149 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+scsi_id:1 100%
+scsi_id:0 100%
diff --git a/resources/linux/mpt-status/sample2 b/resources/linux/mpt-status/sample2
new file mode 100644
index 0000000..4e12a3d
--- /dev/null
+++ b/resources/linux/mpt-status/sample2
@@ -0,0 +1,13 @@
+ioc:0 vol_id:1 type:IME raidlevel:RAID-1E num_disks:6 size(GB):407 state: OPTIMAL flags: ENABLED
+ioc:0 phys_id:5 scsi_id:7 vendor:IBM-ESXS product_id:CBRCA146C3ETS0 N revision:C610 size(GB):136 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+ioc:0 phys_id:4 scsi_id:2 vendor:IBM-ESXS product_id:CBRCA146C3ETS0 N revision:C610 size(GB):136 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+ioc:0 phys_id:3 scsi_id:3 vendor:IBM-ESXS product_id:ST9146803SS revision:B53C size(GB):136 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+ioc:0 phys_id:2 scsi_id:4 vendor:IBM-ESXS product_id:CBRCA146C3ETS0 N revision:C610 size(GB):136 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+ioc:0 phys_id:1 scsi_id:5 vendor:IBM-ESXS product_id:CBRCA146C3ETS0 N revision:C610 size(GB):136 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+ioc:0 phys_id:0 scsi_id:6 vendor:IBM-ESXS product_id:CBRCA146C3ETS0 N revision:C610 size(GB):136 state: ONLINE flags: NONE sync_state: 100 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff
+scsi_id:5 100%
+scsi_id:4 100%
+scsi_id:3 100%
+scsi_id:2 100%
+scsi_id:1 100%
+scsi_id:0 100%
diff --git a/t/inventory/linux/storages/lsilogic.t b/t/inventory/linux/storages/lsilogic.t
new file mode 100755
index 0000000..2cf3531
--- /dev/null
+++ b/t/inventory/linux/storages/lsilogic.t
@@ -0,0 +1,110 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+use FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Lsilogic;
+use Test::More;
+
+plan tests => 2;
+
+my %tests = (
+ sample1 => {
+ name => 'foo',
+ disks => [
+ {
+ SIZE => '152576',
+ NAME => 'foo',
+ FIRMWARE => 'D',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3160815AS',
+ DESCRIPTION => 'SATA',
+ id => '1',
+ TYPE => 'disk'
+ },
+ {
+ SIZE => '152576',
+ NAME => 'foo',
+ FIRMWARE => 'D',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3160815AS',
+ DESCRIPTION => 'SATA',
+ id => '0',
+ TYPE => 'disk'
+ }
+ ]
+ },
+ sample2 => {
+ name => 'foo',
+ disks => [
+ {
+ SIZE => '139264',
+ NAME => 'foo',
+ FIRMWARE => 'C610',
+ MANUFACTURER => 'CBRCA146C3ETS0 N',
+ MODEL => 'CBRCA146C3ETS0 N',
+ DESCRIPTION => 'SATA',
+ id => '5',
+ TYPE => 'disk'
+ },
+ {
+ SIZE => '139264',
+ NAME => 'foo',
+ FIRMWARE => 'C610',
+ MANUFACTURER => 'CBRCA146C3ETS0 N',
+ MODEL => 'CBRCA146C3ETS0 N',
+ DESCRIPTION => 'SATA',
+ id => '4',
+ TYPE => 'disk'
+ },
+ {
+ SIZE => '139264',
+ NAME => 'foo',
+ FIRMWARE => 'B53C',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST9146803SS',
+ DESCRIPTION => 'SATA',
+ id => '3',
+ TYPE => 'disk'
+ },
+ {
+ SIZE => '139264',
+ NAME => 'foo',
+ FIRMWARE => 'C610',
+ MANUFACTURER => 'CBRCA146C3ETS0 N',
+ MODEL => 'CBRCA146C3ETS0 N',
+ DESCRIPTION => 'SATA',
+ id => '2',
+ TYPE => 'disk'
+ },
+ {
+ SIZE => '139264',
+ NAME => 'foo',
+ FIRMWARE => 'C610',
+ MANUFACTURER => 'CBRCA146C3ETS0 N',
+ MODEL => 'CBRCA146C3ETS0 N',
+ DESCRIPTION => 'SATA',
+ id => '1',
+ TYPE => 'disk'
+ },
+ {
+ SIZE => '139264',
+ NAME => 'foo',
+ FIRMWARE => 'C610',
+ MANUFACTURER => 'CBRCA146C3ETS0 N',
+ MODEL => 'CBRCA146C3ETS0 N',
+ DESCRIPTION => 'SATA',
+ id => '0',
+ TYPE => 'disk'
+ }
+ ]
+ }
+);
+
+foreach my $test (keys %tests) {
+ my $file = "resources/linux/mpt-status/$test";
+ my @disks = FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Lsilogic::_getDiskFromMptStatus(
+ file => $file,
+ name => $tests{$test}->{name},
+ );
+ is_deeply(\@disks, $tests{$test}->{disks}, $test);
+}
================================================================
Commit: 82bf95dd7d0002c0a0e5764e890744cd12025a50
https://github.com/fusinv/fusioninventory-agent/commit/82bf95dd7d0002c0a0e5764e890744cd12025a50
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
A resources/linux/proc/scsi/linux3
A resources/linux/proc/scsi/linux4
Log Message:
-----------
initial import
diff --git a/resources/linux/proc/scsi/linux3 b/resources/linux/proc/scsi/linux3
new file mode 100644
index 0000000..04587af
--- /dev/null
+++ b/resources/linux/proc/scsi/linux3
@@ -0,0 +1,25 @@
+Attached devices:
+Host: scsi0 Channel: 00 Id: 00 Lun: 00
+ Vendor: MATSHITA Model: UJDA782 DVD/CDRW Rev: VA13
+ Type: CD-ROM ANSI SCSI revision: 05
+Host: scsi4 Channel: 00 Id: 00 Lun: 00
+ Vendor: IBM-ESXS Model: CBRCA146C3ETS0 N Rev: C610
+ Type: Direct-Access ANSI SCSI revision: 06
+Host: scsi4 Channel: 00 Id: 01 Lun: 00
+ Vendor: IBM-ESXS Model: CBRCA146C3ETS0 N Rev: C610
+ Type: Direct-Access ANSI SCSI revision: 06
+Host: scsi4 Channel: 00 Id: 02 Lun: 00
+ Vendor: IBM-ESXS Model: ST9146803SS Rev: B53C
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi4 Channel: 00 Id: 03 Lun: 00
+ Vendor: IBM-ESXS Model: CBRCA146C3ETS0 N Rev: C610
+ Type: Direct-Access ANSI SCSI revision: 06
+Host: scsi4 Channel: 00 Id: 04 Lun: 00
+ Vendor: IBM-ESXS Model: CBRCA146C3ETS0 N Rev: C610
+ Type: Direct-Access ANSI SCSI revision: 06
+Host: scsi4 Channel: 00 Id: 05 Lun: 00
+ Vendor: IBM-ESXS Model: CBRCA146C3ETS0 N Rev: C610
+ Type: Direct-Access ANSI SCSI revision: 06
+Host: scsi4 Channel: 01 Id: 01 Lun: 00
+ Vendor: LSILOGIC Model: Logical Volume Rev: 3000
+ Type: Direct-Access ANSI SCSI revision: 02
diff --git a/resources/linux/proc/scsi/linux4 b/resources/linux/proc/scsi/linux4
new file mode 100644
index 0000000..f63873e
--- /dev/null
+++ b/resources/linux/proc/scsi/linux4
@@ -0,0 +1,28 @@
+Attached devices:
+Host: scsi0 Channel: 00 Id: 00 Lun: 00
+ Vendor: ServeRA Model: Drive 1 Rev: V1.0
+ Type: Direct-Access ANSI SCSI revision: 02
+Host: scsi0 Channel: 00 Id: 01 Lun: 00
+ Vendor: ServeRA Model: Drive 2 Rev: V1.0
+ Type: Direct-Access ANSI SCSI revision: 02
+Host: scsi0 Channel: 01 Id: 00 Lun: 00
+ Vendor: IBM-ESXS Model: ST3300655SS Rev: BA23
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi0 Channel: 01 Id: 01 Lun: 00
+ Vendor: IBM-ESXS Model: ST3300655SS Rev: BA23
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi0 Channel: 01 Id: 02 Lun: 00
+ Vendor: IBM-ESXS Model: ST3300655SS Rev: BA23
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi0 Channel: 01 Id: 03 Lun: 00
+ Vendor: IBM-ESXS Model: ST3300655SS Rev: BA23
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi0 Channel: 01 Id: 04 Lun: 00
+ Vendor: IBM-ESXS Model: ST3300655SS Rev: BA23
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi0 Channel: 01 Id: 05 Lun: 00
+ Vendor: IBM-ESXS Model: ST3300655SS Rev: BA23
+ Type: Direct-Access ANSI SCSI revision: 05
+Host: scsi0 Channel: 03 Id: 00 Lun: 00
+ Vendor: IBM-ESXS Model: VSC7160 Rev: 1.06
+ Type: Enclosure ANSI SCSI revision: 03
================================================================
Commit: 9e328f37e482ed211ac5ccfbb79fd2283d9c4317
https://github.com/fusinv/fusioninventory-agent/commit/9e328f37e482ed211ac5ccfbb79fd2283d9c4317
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M t/inventory/linux/storages/adaptec.t
Log Message:
-----------
new samples
diff --git a/t/inventory/linux/storages/adaptec.t b/t/inventory/linux/storages/adaptec.t
index 0ce27a0..dca9809 100644
--- a/t/inventory/linux/storages/adaptec.t
+++ b/t/inventory/linux/storages/adaptec.t
@@ -2,10 +2,9 @@
use strict;
use warnings;
-use FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Adaptec;
-use Test::More;
-plan tests => 2;
+use Test::More;
+use FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Adaptec;
my %tests = (
linux1 => {
@@ -46,9 +45,113 @@ my %tests = (
DEVICE => '/dev/sg2'
}
]
+ },
+ linux3 => {
+ controller => 'scsi0',
+ name => 'foo',
+ disks => [
+ {
+ NAME => 'foo',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ MODEL => 'UJDA782',
+ MANUFACTURER => 'UJDA782',
+ FIRMWARE => 'VA13',
+ DEVICE => '/dev/sg0'
+ },
+ ]
+ },
+ linux4 => {
+ controller => 'scsi0',
+ name => 'foo',
+ disks => [
+ {
+ NAME => 'foo',
+ FIRMWARE => 'V1.0',
+ MANUFACTURER => 'Drive',
+ MODEL => 'Drive',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg0'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'V1.0',
+ MANUFACTURER => 'Drive',
+ MODEL => 'Drive',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg1'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'BA23',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3300655SS',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg2'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'BA23',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3300655SS',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg3'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'BA23',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3300655SS',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg4'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'BA23',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3300655SS',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg5'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'BA23',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3300655SS',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg6'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => 'BA23',
+ MANUFACTURER => 'Seagate',
+ MODEL => 'ST3300655SS',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg7'
+ },
+ {
+ NAME => 'foo',
+ FIRMWARE => '1.06',
+ MANUFACTURER => 'VSC7160',
+ MODEL => 'VSC7160',
+ DESCRIPTION => 'SATA',
+ TYPE => 'disk',
+ DEVICE => '/dev/sg8'
+ }
+ ]
}
);
+plan tests => scalar keys %tests;
+
foreach my $test (keys %tests) {
my $file = "resources/linux/proc/scsi/$test";
my @disks = FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Adaptec::_getDisksFromProc(
================================================================
Commit: a6e6a80040a27c307e3f4e0aba91ecb82a23f4d7
https://github.com/fusinv/fusioninventory-agent/commit/a6e6a80040a27c307e3f4e0aba91ecb82a23f4d7
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M t/inventory/linux/storages/lsilogic.t
Log Message:
-----------
compute tests count
diff --git a/t/inventory/linux/storages/lsilogic.t b/t/inventory/linux/storages/lsilogic.t
index 2cf3531..70a9dea 100755
--- a/t/inventory/linux/storages/lsilogic.t
+++ b/t/inventory/linux/storages/lsilogic.t
@@ -5,8 +5,6 @@ use warnings;
use FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Lsilogic;
use Test::More;
-plan tests => 2;
-
my %tests = (
sample1 => {
name => 'foo',
@@ -100,6 +98,8 @@ my %tests = (
}
);
+plan tests => scalar keys %tests;
+
foreach my $test (keys %tests) {
my $file = "resources/linux/mpt-status/$test";
my @disks = FusionInventory::Agent::Task::Inventory::Input::Linux::Storages::Lsilogic::_getDiskFromMptStatus(
================================================================
Commit: 779eea8dbbacbc9682058d338745dfdfb6f727d8
https://github.com/fusinv/fusioninventory-agent/commit/779eea8dbbacbc9682058d338745dfdfb6f727d8
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-02 (Wed, 02 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
Log Message:
-----------
useless comments
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
index 9ddf21a..ee6a135 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
@@ -8,12 +8,6 @@ use English qw(-no_match_vars);
use FusionInventory::Agent::Tools;
use FusionInventory::Agent::Tools::Linux;
-# Tested on 2.6.* kernels
-#
-# Cards tested :
-#
-# Adaptec AAC-RAID
-
sub isEnabled {
return -r '/proc/scsi/scsi';
}
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
index 4404d02..3159d3f 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
@@ -6,14 +6,6 @@ use warnings;
use FusionInventory::Agent::Tools;
use FusionInventory::Agent::Tools::Linux;
-# Tested on 2.6.* kernels
-#
-# Cards tested :
-#
-# LSI Logic / Symbios Logic SAS1064E PCI-Express Fusion-MPT SAS
-#
-# mpt-status version : 1.2.0
-
sub isEnabled {
return canRun('mpt-status');
}
================================================================
Commit: 2a20f8caee3af4c37859a2d47765bef00320cc42
https://github.com/fusinv/fusioninventory-agent/commit/2a20f8caee3af4c37859a2d47765bef00320cc42
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-03 (Thu, 03 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
M t/inventory/linux/storages/adaptec.t
M t/inventory/linux/storages/lsilogic.t
Log Message:
-----------
fix serial number computation
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
index ee6a135..ab8198a 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
@@ -31,7 +31,8 @@ sub doInventory {
name => $device->{NAME},
logger => $logger
)) {
- $disk->{SERIALNUMBER} = getSerialnumber($disk->{device});
+ $disk->{SERIALNUMBER} = getSerialnumber(device => $disk->{device});
+ delete $disk->{device};
$inventory->addEntry(section => 'STORAGES', entry => $disk);
}
}
@@ -79,7 +80,7 @@ sub _getDisksFromProc {
$disk->{MANUFACTURER} = getCanonicalManufacturer(
$disk->{MODEL}
);
- $disk->{DEVICE} = "/dev/sg$count";
+ $disk->{device} = "/dev/sg$count";
push @disks, $disk;
}
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
index 3159d3f..73b4c49 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Lsilogic.pm
@@ -24,10 +24,8 @@ sub doInventory {
logger => $logger,
command => "mpt-status -n -i $device->{SCSI_UNID}"
)) {
- $disk->{SERIALNUMBER} = getSerialnumber(
- device => "/dev/sg$disk->{id}"
- );
- delete $disk->{id};
+ $disk->{SERIALNUMBER} = getSerialnumber(device => $disk->{device});
+ delete $disk->{device};
$inventory->addEntry(section => 'STORAGES', entry => $disk);
}
}
@@ -55,7 +53,7 @@ sub _getDiskFromMptStatus {
NAME => $params{name},
DESCRIPTION => 'SATA',
TYPE => 'disk',
- id => $1,
+ device => "/dev/sg$1",
MODEL => $2,
MANUFACTURER => getCanonicalManufacturer($2),
FIRMWARE => $3,
diff --git a/t/inventory/linux/storages/adaptec.t b/t/inventory/linux/storages/adaptec.t
index dca9809..40be5bd 100644
--- a/t/inventory/linux/storages/adaptec.t
+++ b/t/inventory/linux/storages/adaptec.t
@@ -18,7 +18,7 @@ my %tests = (
MODEL => 'SAMSUNG',
MANUFACTURER => 'Samsung',
FIRMWARE => 'VBM2',
- DEVICE => '/dev/sg0'
+ device => '/dev/sg0'
}
]
},
@@ -33,7 +33,7 @@ my %tests = (
MODEL => 'HUS151436VL3800',
MANUFACTURER => 'Hitachi',
FIRMWARE => 'S3C0',
- DEVICE => '/dev/sg1'
+ device => '/dev/sg1'
},
{
NAME => 'foo',
@@ -42,7 +42,7 @@ my %tests = (
MODEL => 'HUS151436VL3800',
MANUFACTURER => 'Hitachi',
FIRMWARE => 'S3C0',
- DEVICE => '/dev/sg2'
+ device => '/dev/sg2'
}
]
},
@@ -57,7 +57,7 @@ my %tests = (
MODEL => 'UJDA782',
MANUFACTURER => 'UJDA782',
FIRMWARE => 'VA13',
- DEVICE => '/dev/sg0'
+ device => '/dev/sg0'
},
]
},
@@ -72,7 +72,7 @@ my %tests = (
MODEL => 'Drive',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg0'
+ device => '/dev/sg0'
},
{
NAME => 'foo',
@@ -81,7 +81,7 @@ my %tests = (
MODEL => 'Drive',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg1'
+ device => '/dev/sg1'
},
{
NAME => 'foo',
@@ -90,7 +90,7 @@ my %tests = (
MODEL => 'ST3300655SS',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg2'
+ device => '/dev/sg2'
},
{
NAME => 'foo',
@@ -99,7 +99,7 @@ my %tests = (
MODEL => 'ST3300655SS',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg3'
+ device => '/dev/sg3'
},
{
NAME => 'foo',
@@ -108,7 +108,7 @@ my %tests = (
MODEL => 'ST3300655SS',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg4'
+ device => '/dev/sg4'
},
{
NAME => 'foo',
@@ -117,7 +117,7 @@ my %tests = (
MODEL => 'ST3300655SS',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg5'
+ device => '/dev/sg5'
},
{
NAME => 'foo',
@@ -126,7 +126,7 @@ my %tests = (
MODEL => 'ST3300655SS',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg6'
+ device => '/dev/sg6'
},
{
NAME => 'foo',
@@ -135,7 +135,7 @@ my %tests = (
MODEL => 'ST3300655SS',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg7'
+ device => '/dev/sg7'
},
{
NAME => 'foo',
@@ -144,7 +144,7 @@ my %tests = (
MODEL => 'VSC7160',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- DEVICE => '/dev/sg8'
+ device => '/dev/sg8'
}
]
}
diff --git a/t/inventory/linux/storages/lsilogic.t b/t/inventory/linux/storages/lsilogic.t
index 70a9dea..fefa13a 100755
--- a/t/inventory/linux/storages/lsilogic.t
+++ b/t/inventory/linux/storages/lsilogic.t
@@ -16,7 +16,7 @@ my %tests = (
MANUFACTURER => 'Seagate',
MODEL => 'ST3160815AS',
DESCRIPTION => 'SATA',
- id => '1',
+ device => '/dev/sg1',
TYPE => 'disk'
},
{
@@ -26,7 +26,7 @@ my %tests = (
MANUFACTURER => 'Seagate',
MODEL => 'ST3160815AS',
DESCRIPTION => 'SATA',
- id => '0',
+ device => '/dev/sg0',
TYPE => 'disk'
}
]
@@ -41,7 +41,7 @@ my %tests = (
MANUFACTURER => 'CBRCA146C3ETS0 N',
MODEL => 'CBRCA146C3ETS0 N',
DESCRIPTION => 'SATA',
- id => '5',
+ device => '/dev/sg5',
TYPE => 'disk'
},
{
@@ -51,7 +51,7 @@ my %tests = (
MANUFACTURER => 'CBRCA146C3ETS0 N',
MODEL => 'CBRCA146C3ETS0 N',
DESCRIPTION => 'SATA',
- id => '4',
+ device => '/dev/sg4',
TYPE => 'disk'
},
{
@@ -61,7 +61,7 @@ my %tests = (
MANUFACTURER => 'Seagate',
MODEL => 'ST9146803SS',
DESCRIPTION => 'SATA',
- id => '3',
+ device => '/dev/sg3',
TYPE => 'disk'
},
{
@@ -71,7 +71,7 @@ my %tests = (
MANUFACTURER => 'CBRCA146C3ETS0 N',
MODEL => 'CBRCA146C3ETS0 N',
DESCRIPTION => 'SATA',
- id => '2',
+ device => '/dev/sg2',
TYPE => 'disk'
},
{
@@ -81,7 +81,7 @@ my %tests = (
MANUFACTURER => 'CBRCA146C3ETS0 N',
MODEL => 'CBRCA146C3ETS0 N',
DESCRIPTION => 'SATA',
- id => '1',
+ device => '/dev/sg1',
TYPE => 'disk'
},
{
@@ -91,7 +91,7 @@ my %tests = (
MANUFACTURER => 'CBRCA146C3ETS0 N',
MODEL => 'CBRCA146C3ETS0 N',
DESCRIPTION => 'SATA',
- id => '0',
+ device => '/dev/sg0',
TYPE => 'disk'
}
]
================================================================
Commit: 161a58e789308927a54ec6d80617fee2da52c6f3
https://github.com/fusinv/fusioninventory-agent/commit/161a58e789308927a54ec6d80617fee2da52c6f3
Author: Guillaume Rousse <guillomovitch at gmail.com>
Date: 2012-05-03 (Thu, 03 May 2012)
Changed paths:
M lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
M t/inventory/linux/storages/adaptec.t
Log Message:
-----------
fix model parsing
diff --git a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
index ab8198a..b036683 100644
--- a/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
+++ b/lib/FusionInventory/Agent/Task/Inventory/Input/Linux/Storages/Adaptec.pm
@@ -69,7 +69,7 @@ sub _getDisksFromProc {
}
}
- if ($line =~ /Model:\s(\S+).*Rev:\s(\S+)/) {
+ if ($line =~ /Model: \s (\S.+\S) \s+ Rev: \s (\S+)/x) {
next unless $disk;
$disk->{MODEL} = $1;
$disk->{FIRMWARE} = $2;
diff --git a/t/inventory/linux/storages/adaptec.t b/t/inventory/linux/storages/adaptec.t
index 40be5bd..790c99e 100644
--- a/t/inventory/linux/storages/adaptec.t
+++ b/t/inventory/linux/storages/adaptec.t
@@ -15,7 +15,7 @@ my %tests = (
NAME => 'foo',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- MODEL => 'SAMSUNG',
+ MODEL => 'SAMSUNG SSD PM80',
MANUFACTURER => 'Samsung',
FIRMWARE => 'VBM2',
device => '/dev/sg0'
@@ -54,8 +54,8 @@ my %tests = (
NAME => 'foo',
DESCRIPTION => 'SATA',
TYPE => 'disk',
- MODEL => 'UJDA782',
- MANUFACTURER => 'UJDA782',
+ MODEL => 'UJDA782 DVD/CDRW',
+ MANUFACTURER => 'UJDA782 DVD/CDRW',
FIRMWARE => 'VA13',
device => '/dev/sg0'
},
@@ -68,8 +68,8 @@ my %tests = (
{
NAME => 'foo',
FIRMWARE => 'V1.0',
- MANUFACTURER => 'Drive',
- MODEL => 'Drive',
+ MANUFACTURER => 'Drive 1',
+ MODEL => 'Drive 1',
DESCRIPTION => 'SATA',
TYPE => 'disk',
device => '/dev/sg0'
@@ -77,8 +77,8 @@ my %tests = (
{
NAME => 'foo',
FIRMWARE => 'V1.0',
- MANUFACTURER => 'Drive',
- MODEL => 'Drive',
+ MANUFACTURER => 'Drive 2',
+ MODEL => 'Drive 2',
DESCRIPTION => 'SATA',
TYPE => 'disk',
device => '/dev/sg1'
================================================================
Compare: https://github.com/fusinv/fusioninventory-agent/compare/3323c14...161a58e
More information about the Fusioninventory-commit
mailing list