package Ixchel::functions::sys_info;
use 5.006;
use strict;
use warnings;
use File::Slurp;
use Exporter 'import';
our @EXPORT = qw(sys_info);
use Rex -feature => [qw/1.4/];
use Rex::Hardware;
use Ixchel::functions::product;
use Ixchel::functions::serial;
# prevents Rex from printing out rex is exiting after the script ends
$::QUIET = 2;
=head1 NAME
Ixchel::functions::sys_info - Fetches system info via Rex::Hardware.
=head1 VERSION
Version 0.0.1
=cut
our $VERSION = '0.0.1';
=head1 SYNOPSIS
use Ixchel::functions::sys_info;
use Data::Dumper;
my $returned=sys_info;
print Dumper($returned);
$returned->{Host}{product} is filled in via Ixchel::functions::product and
$returned->{Host}{serial} is filled in via Ixchel::functions::serial for the purpose
making sure those are handled properly in a cross platform manner given a bug in Rex.
=head1 Functions
=head2 sys_info
Calls L<Rex::Hardware>->get and returns the data as a hash ref.
=cut
sub sys_info {
my %all=Rex::Hardware->get(qw/ All /);
$all{Host}{product}=product;
$all{Host}{serial}=serial_num;
return \%all;
}
1;