View | Details | Raw Unified | Return to bug 167017 | Differences between
and this patch

Collapse All | Expand All

(-)p5-FusionInventory-Agent/Makefile (-21 / +57 lines)
Lines 2-8 Link Here
2
# Date created:		2011-08-18
2
# Date created:		2011-08-18
3
# Whom:			Gvozdikov Veniamin <g.veniamin@googlemail.com>
3
# Whom:			Gvozdikov Veniamin <g.veniamin@googlemail.com>
4
#
4
#
5
# $FreeBSD: ports/net-mgmt/p5-FusionInventory-Agent/Makefile,v 1.7 2012/08/15 06:46:08 rm Exp $
5
# $FreeBSD: ports/net-mgmt/p5-FusionInventory-Agent/Makefile,v 1.6 2012/06/01 05:23:16 dinoex Exp $
6
#
6
#
7
7
8
PORTNAME=	FusionInventory-Agent
8
PORTNAME=	FusionInventory-Agent
Lines 15-48 Link Here
15
MAINTAINER=	g.veniamin@googlemail.com
15
MAINTAINER=	g.veniamin@googlemail.com
16
COMMENT=	Agent for OCS Inventory server and FusionInventory for GLPI servers
16
COMMENT=	Agent for OCS Inventory server and FusionInventory for GLPI servers
17
17
18
OPTIONS=	CUPS "Enable CUPS" OFF \
19
		HTTP "Enable HTTP daemon mode" OFF \
20
		ZLIB "Enable Zlib compression" ON \
21
		SSL "Enable SSL" OFF \
22
		DMIDECODE "Enable dmidecode hardware information" ON \
23
		PCIUTILS "Enable pciutils hardware information" ON \
24
		NMAP "Enable NMAP network inventory" OFF
25
18
LICENSE=	GPLv2
26
LICENSE=	GPLv2
19
27
20
BUILD_DEPENDS=	p5-Crypt-SSLeay>=0:${PORTSDIR}/security/p5-Crypt-SSLeay \
28
USE_GMAKE=	yes
21
		p5-File-ShareDir>=0:${PORTSDIR}/devel/p5-File-ShareDir \
29
22
		p5-HTTP-Daemon>=0:${PORTSDIR}/www/p5-HTTP-Daemon \
30
BUILD_DEPENDS=	p5-Text-Template>=0:${PORTSDIR}/textproc/p5-Text-Template \
23
		p5-HTTP-Server-Simple>=0:${PORTSDIR}/www/p5-HTTP-Server-Simple \
31
		p5-ExtUtils-MakeMaker>=6.59:${PORTSDIR}/devel/p5-ExtUtils-MakeMaker \
24
		p5-HTTP-Server-Simple-Authen>=0:${PORTSDIR}/www/p5-HTTP-Server-Simple-Authen \
25
		p5-Net-CUPS>=0.6:${PORTSDIR}/print/p5-Net-CUPS \
26
		p5-Net-IP>=0:${PORTSDIR}/net-mgmt/p5-Net-IP \
27
		p5-Proc-Daemon>=0:${PORTSDIR}/devel/p5-Proc-Daemon \
28
		p5-Proc-PID-File>=0:${PORTSDIR}/devel/p5-Proc-PID-File \
29
		p5-UNIVERSAL-require>=0:${PORTSDIR}/devel/p5-UNIVERSAL-require \
32
		p5-UNIVERSAL-require>=0:${PORTSDIR}/devel/p5-UNIVERSAL-require \
30
		p5-XML-Simple>=0:${PORTSDIR}/textproc/p5-XML-Simple \
33
		p5-Net-IP>=0:${PORTSDIR}/net-mgmt/p5-Net-IP \
34
		p5-Digest-MD5>=0:${PORTSDIR}/security/p5-Digest-MD5 \
31
		p5-XML-TreePP>=0:${PORTSDIR}/textproc/p5-XML-TreePP \
35
		p5-XML-TreePP>=0:${PORTSDIR}/textproc/p5-XML-TreePP \
32
		p5-libwww>=0:${PORTSDIR}/www/p5-libwww
36
		p5-libwww>=0:${PORTSDIR}/www/p5-libwww \
37
		p5-File-Which>=0:${PORTSDIR}/sysutils/p5-File-Which
33
RUN_DEPENDS:=	${BUILD_DEPENDS}
38
RUN_DEPENDS:=	${BUILD_DEPENDS}
34
RUN_DEPENDS+=	dmidecode:${PORTSDIR}/sysutils/dmidecode \
35
		lspci:${PORTSDIR}/sysutils/pciutils \
36
		nmap:${PORTSDIR}/security/nmap
37
39
38
TEST_DEPENDS=	p5-Test-Exception>=0:${PORTSDIR}/devel/p5-Test-Exception
40
TEST_DEPENDS=	p5-Test-Exception>=0:${PORTSDIR}/devel/p5-Test-Exception \
41
		p5-Test-MockModule>=0:${PORTSDIR}/devel/p5-Test-MockModule \
42
		p5-HTTP-Server-Simple>=0:${PORTSDIR}/www/p5-HTTP-Server-Simple \
43
		p5-HTTP-Server-Simple-Authen>=0:${PORTSDIR}/www/p5-HTTP-Server-Simple-Authen \
44
		p5-HTTP-Proxy>=0:${PORTSDIR}/www/p5-HTTP-Proxy \
45
		p5-IPC-Run>=0:${PORTSDIR}/devel/p5-IPC-Run \
46
		p5-YAML>=0:${PORTSDIR}/textproc/p5-YAML \
47
		p5-IO-Capture>=0:${PORTSDIR}/devel/p5-IO-Capture \
39
48
40
PERL_CONFIGURE=	yes
49
PERL_CONFIGURE=	yes
41
MAN3PREFIX=	${PREFIX}
42
50
43
MAN1=		fusioninventory-agent.1 \
51
MAN1=		fusioninventory-agent.1 \
44
		fusioninventory-injector.1
52
		fusioninventory-injector.1
45
46
MAN3=		FusionInventory::Agent.3 \
53
MAN3=		FusionInventory::Agent.3 \
47
		FusionInventory::Agent::Config.3 \
54
		FusionInventory::Agent::Config.3 \
48
		FusionInventory::Agent::HTTP::Client.3 \
55
		FusionInventory::Agent::HTTP::Client.3 \
Lines 84-92 Link Here
84
91
85
.include <bsd.port.pre.mk>
92
.include <bsd.port.pre.mk>
86
93
87
.if ${PERL_LEVEL} < 501000
94
.if defined(WITH_CUPS)
88
BUILD_DEPENDS+=	p5-IO-Compress>=0:${PORTSDIR}/archivers/p5-IO-Compress
95
RUN_DEPENDS+=		p5-Net-CUPS>=0.6:${PORTSDIR}/print/p5-Net-CUPS
89
RUN_DEPENDS+=	p5-IO-Compress>=0:${PORTSDIR}/archivers/p5-IO-Compress
96
.endif
97
98
.if defined(WITH_HTTP)
99
RUN_DEPENDS+=		p5-HTTP-Daemon>=0:${PORTSDIR}/www/p5-HTTP-Daemon
90
.endif
100
.endif
91
101
102
.if defined(WITH_ZLIB)
103
RUN_DEPENDS+=		p5-Compress-Raw-Zlib>=0:${PORTSDIR}/archivers/p5-Compress-Raw-Zlib
104
.endif
105
106
.if defined(WITH_SSL)
107
RUN_DEPENDS+=		p5-Crypt-SSLeay>=0:${PORTSDIR}/security/p5-Crypt-SSLeay \
108
			p5-LWP-Protocol-https>=0:${PORTSDIR}/www/p5-LWP-Protocol-https
109
.endif
110
111
.if defined(WITH_DMIDECODE)
112
RUN_DEPENDS+=	dmidecode:${PORTSDIR}/sysutils/dmidecode
113
.endif
114
115
.if defined(WITH_PCIUTILS)
116
RUN_DEPENDS+=	lspci:${PORTSDIR}/sysutils/pciutils
117
.endif
118
119
.if defined(WITH_NMAP)
120
RUN_DEPENDS+=	nmap:${PORTSDIR}/security/nmap
121
.endif
122
123
post-patch-script:
124
	@${ECHO_MSG} -n ">> Removing unneeded patched files..."
125
	@${FIND} ${WRKSRC} -type f \( -name '*.orig' \) -delete
126
	@${ECHO_MSG} " [ DONE ]"
127
92
.include <bsd.port.post.mk>
128
.include <bsd.port.post.mk>
(-)p5-FusionInventory-Agent/files/patch-Makefile.PL (-30 lines)
Lines 1-30 Link Here
1
--- Makefile.PL.orig	2012-07-23 01:47:59.000000000 +0400
2
+++ Makefile.PL	2012-08-13 11:36:04.404805799 +0400
3
@@ -105,12 +105,12 @@
4
         INSTALLLIB           => '$(DATADIR)/lib',
5
         INSTALLSITELIB       => '$(DATADIR)/lib',
6
         INSTALLVENDORLIB     => '$(DATADIR)/lib',
7
-        INSTALLMAN1DIR       => '$(PREFIX)/share/man/man1',
8
-        INSTALLSITEMAN1DIR   => '$(PREFIX)/share/man/man1',
9
-        INSTALLVENDORMAN1DIR => '$(PREFIX)/share/man/man1',
10
-        INSTALLMAN3DIR       => '$(PREFIX)/share/man/man3',
11
-        INSTALLSITEMAN3DIR   => '$(PREFIX)/share/man/man3',
12
-        INSTALLVENDORMAN3DIR => '$(PREFIX)/share/man/man3',
13
+        INSTALLMAN1DIR       => '$(PREFIX)/man/man1',
14
+        INSTALLSITEMAN1DIR   => '$(PREFIX)/man/man1',
15
+        INSTALLVENDORMAN1DIR => '$(PREFIX)/man/man1',
16
+        INSTALLMAN3DIR       => '$(PREFIX)/man/man3',
17
+        INSTALLSITEMAN3DIR   => '$(PREFIX)/man/man3',
18
+        INSTALLVENDORMAN3DIR => '$(PREFIX)/man/man3',
19
         SYSCONFDIR           => '$(PREFIX)/etc/fusioninventory',
20
         DATADIR              => '$(PREFIX)/share/fusioninventory',
21
         LOCALSTATEDIR        => '$(PREFIX)/var/fusioninventory',
22
@@ -201,7 +201,7 @@
23
     $manifypods =~ s/manifypods : pure_all/manifypods : pure_all fusioninventory-agent.1.html/;
24
     $manifypods .= <<'EOF';
25
 fusioninventory-agent.1.html: fusioninventory-agent
26
-	pod2html --infile=$< --outfile=$@
27
+	pod2html --infile=$? --outfile=$@
28
 
29
 EOF
30
     return $manifypods;
(-)p5-FusionInventory-Agent/files/patch-add-jails-support (+64 lines)
Line 0 Link Here
1
--- lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Jails.pm	1970-01-01 01:00:00.000000000 +0100
2
+++ lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Jails.pm	2012-05-29 09:35:00.000000000 +0100
3
@@ -0,0 +1,61 @@
4
+package FusionInventory::Agent::Task::Inventory::Input::Virtualization::Jails;
5
+
6
+use strict;
7
+use warnings;
8
+
9
+use FusionInventory::Agent::Tools;
10
+
11
+sub isEnabled {
12
+    return canRun('jls');
13
+}
14
+
15
+sub doInventory {
16
+    my (%params) = @_;
17
+
18
+    my $inventory = $params{inventory};
19
+    my $logger    = $params{inventory};
20
+
21
+    my $command = 'jls -n';
22
+    foreach my $machine (_getVirtualMachines(logger => $logger)) {
23
+        $inventory->addEntry(
24
+            section => 'VIRTUALMACHINES', entry => $machine
25
+        );
26
+    }
27
+}
28
+
29
+sub  _getVirtualMachines {
30
+    my (%params) = (
31
+        command => 'jls -n',
32
+        @_
33
+    );
34
+
35
+    my $handle = getFileHandle(%params);
36
+
37
+    return unless $handle;
38
+
39
+    my @machines;
40
+    while (my $line = <$handle>) {
41
+        my $info;
42
+        foreach my $item (split(' ', $line)) {
43
+            next unless $item =~ /(\S+)=(\S+)/;
44
+            my $key   = $1;
45
+            my $value = $2;
46
+            $info->{$1} = $2;
47
+        }
48
+
49
+        my $machine = {
50
+            VMTYPE    => 'jail',
51
+            NAME      => $info->{'host.hostname'},
52
+            VMID      => $info->{'jid'},
53
+            STATUS    => 'running'
54
+        };
55
+
56
+        push @machines, $machine;
57
+
58
+    }
59
+    close $handle;
60
+
61
+    return @machines;
62
+}
63
+
64
+1;
(-)p5-FusionInventory-Agent/files/patch-fix_agent_paths (+18 lines)
Line 0 Link Here
1
--- lib/FusionInventory/Agent/Task/Inventory.pm
2
+++ lib/FusionInventory/Agent/Task/Inventory.pm
3
@@ -61,10 +61,11 @@ sub run {
4
     }
5
 
6
     if (not $ENV{PATH}) {
7
-        # set a minimal PATH if none is set (#1129)
8
-        $ENV{PATH} = '/sbin:/usr/sbin:/bin:/usr/bin';
9
+        # set a minimal PATH if none is set (#1129, #1747)
10
+        $ENV{PATH} =
11
+            '/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin';
12
         $self->{logger}->debug(
13
-            "PATH is not set, using /sbin:/usr/sbin:/bin:/usr/bin as default"
14
+            "PATH is not set, using $ENV{PATH} as default"
15
         );
16
     }
17
 
18
(-)p5-FusionInventory-Agent/files/patch-fix_install_paths (+26 lines)
Line 0 Link Here
1
--- Makefile.PL	2012-04-05 10:25:15.000000000 +0200
2
+++ Makefile.PL	2012-04-17 12:20:45.000000000 +0200
3
@@ -95,22 +95,12 @@
4
 
5
     # for some reason, initialising variables from the global scope doesn't work
6
     %variables = (
7
-        PREFIX               => '/usr/local',
8
-        INSTALLSCRIPT        => '$(PREFIX)/bin',
9
-        INSTALLSITESCRIPT    => '$(PREFIX)/bin',
10
-        INSTALLVENDORSCRIPT  => '$(PREFIX)/bin',
11
         INSTALLLIB           => '$(DATADIR)/lib',
12
         INSTALLSITELIB       => '$(DATADIR)/lib',
13
         INSTALLVENDORLIB     => '$(DATADIR)/lib',
14
-        INSTALLMAN1DIR       => '$(PREFIX)/share/man/man1',
15
-        INSTALLSITEMAN1DIR   => '$(PREFIX)/share/man/man1',
16
-        INSTALLVENDORMAN1DIR => '$(PREFIX)/share/man/man1',
17
-        INSTALLMAN3DIR       => '$(PREFIX)/share/man/man3',
18
-        INSTALLSITEMAN3DIR   => '$(PREFIX)/share/man/man3',
19
-        INSTALLVENDORMAN3DIR => '$(PREFIX)/share/man/man3',
20
         SYSCONFDIR           => '$(PREFIX)/etc/fusioninventory',
21
         DATADIR              => '$(PREFIX)/share/fusioninventory',
22
-        LOCALSTATEDIR        => '$(PREFIX)/var/fusioninventory',
23
+        LOCALSTATEDIR        => '/var/run/fusioninventory',
24
     );
25
 
26
     # allow variables defined on command line to override defaults
(-)p5-FusionInventory-Agent/pkg-plist (-8 / +8 lines)
Lines 1-12 Link Here
1
bin/fusioninventory-agent
1
bin/fusioninventory-agent
2
bin/fusioninventory-injector
2
bin/fusioninventory-injector
3
etc/fusioninventory/agent.cfg
4
share/fusioninventory/html/favicon.ico
5
share/fusioninventory/html/index.tpl
6
share/fusioninventory/html/inventory.tpl
7
share/fusioninventory/html/logo.png
8
share/fusioninventory/html/now.tpl
9
share/fusioninventory/html/site.css
10
share/fusioninventory/lib/FusionInventory/Agent.pm
3
share/fusioninventory/lib/FusionInventory/Agent.pm
11
share/fusioninventory/lib/FusionInventory/Agent/Config.pm
4
share/fusioninventory/lib/FusionInventory/Agent/Config.pm
12
share/fusioninventory/lib/FusionInventory/Agent/HTTP/Client.pm
5
share/fusioninventory/lib/FusionInventory/Agent/HTTP/Client.pm
Lines 146-151 Link Here
146
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Solaris/Storages.pm
139
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Solaris/Storages.pm
147
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization.pm
140
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization.pm
148
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Hpvm.pm
141
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Hpvm.pm
142
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Jails.pm
149
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Libvirt.pm
143
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Libvirt.pm
150
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Lxc.pm
144
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Lxc.pm
151
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Parallels.pm
145
share/fusioninventory/lib/FusionInventory/Agent/Task/Inventory/Input/Virtualization/Parallels.pm
Lines 199-205 Link Here
199
share/fusioninventory/lib/FusionInventory/Agent/XML/Query/Inventory.pm
193
share/fusioninventory/lib/FusionInventory/Agent/XML/Query/Inventory.pm
200
share/fusioninventory/lib/FusionInventory/Agent/XML/Query/Prolog.pm
194
share/fusioninventory/lib/FusionInventory/Agent/XML/Query/Prolog.pm
201
share/fusioninventory/lib/FusionInventory/Agent/XML/Response.pm
195
share/fusioninventory/lib/FusionInventory/Agent/XML/Response.pm
196
share/fusioninventory/html/favicon.ico
197
share/fusioninventory/html/index.tpl
198
share/fusioninventory/html/inventory.tpl
199
share/fusioninventory/html/logo.png
200
share/fusioninventory/html/now.tpl
201
share/fusioninventory/html/site.css
202
share/fusioninventory/pci.ids
202
share/fusioninventory/pci.ids
203
@dirrm share/fusioninventory/html
203
@dirrm share/fusioninventory/lib/FusionInventory/Agent/XML/Query
204
@dirrm share/fusioninventory/lib/FusionInventory/Agent/XML/Query
204
@dirrm share/fusioninventory/lib/FusionInventory/Agent/XML
205
@dirrm share/fusioninventory/lib/FusionInventory/Agent/XML
205
@dirrm share/fusioninventory/lib/FusionInventory/Agent/Tools
206
@dirrm share/fusioninventory/lib/FusionInventory/Agent/Tools
Lines 231-236 Link Here
231
@dirrm share/fusioninventory/lib/FusionInventory/Agent
232
@dirrm share/fusioninventory/lib/FusionInventory/Agent
232
@dirrm share/fusioninventory/lib/FusionInventory
233
@dirrm share/fusioninventory/lib/FusionInventory
233
@dirrm share/fusioninventory/lib
234
@dirrm share/fusioninventory/lib
234
@dirrm share/fusioninventory/html
235
@dirrm share/fusioninventory
235
@dirrm share/fusioninventory
236
@dirrmtry etc/fusioninventory
236
@dirrmtry etc/fusioninventory

Return to bug 167017