[Bug 812583] Review Request: perl-FusionInventory-Agent-Task-NetInventory - Remote inventory support for FusionInventory Agent

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=812583

--- Comment #4 from Petr Pisar <ppisar@xxxxxxxxxx> 2012-05-09 09:45:20 EDT ---
Spec file changes:

--- perl-FusionInventory-Agent-Task-NetInventory.spec.old       2012-05-07
11:07:33.509000209 +0200
+++ perl-FusionInventory-Agent-Task-NetInventory.spec   2012-05-09
15:02:32.519999974 +0200
@@ -1,6 +1,6 @@
 Name:           perl-FusionInventory-Agent-Task-NetInventory
 Version:        2.1
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Remote inventory support for FusionInventory Agent
 License:        GPLv2+
 Group:          Development/Libraries
@@ -11,11 +11,22 @@
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 BuildArch:      noarch
 BuildRequires:  perl >= 1:5.8.0
-BuildRequires:  perl(ExtUtils::MakeMaker)
+BuildRequires:  perl(inc::Module::Install)
 # For tests
-BuildRequires:  perl(FusionInventory::Agent::Task::NetDiscovery) >= 2.1
 BuildRequires:  perl(Test::More)
 BuildRequires:  perl(Test::Compile)
+BuildRequires:  perl(base)
+BuildRequires:  perl(constant)
+BuildRequires:  perl(threads)
+BuildRequires:  perl(threads::shared)
+BuildRequires:  perl(Encode)
+BuildRequires:  perl(FusionInventory::Agent::Task::NetDiscovery) >= 2.1
+BuildRequires:  perl(FusionInventory::Agent::Task)
+BuildRequires:  perl(FusionInventory::Agent::SNMP)
+BuildRequires:  perl(FusionInventory::Agent::XML::Query)
+BuildRequires:  perl(FusionInventory::Agent::Tools)
+BuildRequires:  perl(FusionInventory::Agent::Tools::Network)
+BuildRequires:  perl(FusionInventory::Agent::XML::Response)

 Requires:       perl(FusionInventory::Agent::Task::NetDiscovery) >= 2.1
 Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo
$version))
@@ -38,6 +49,10 @@
 %prep
 %setup -q -n FusionInventory-Agent-Task-NetInventory-%{version}

+# Use system ones
+rm -rf inc/*
+
+
 %build
 perl Makefile.PL \
      PREFIX=%{_prefix} \
@@ -75,6 +90,9 @@


 %changelog
+* Mon May 07 2012 Remi Collet <remi@xxxxxxxxxxxxxxxxx> - 2.1-2
+- changes from review (#812583)
+
 * Sun Apr 15 2012 Remi Collet <remi@xxxxxxxxxxxxxxxxx> - 2.1-1
 - rename to perl-FusionInventory-Agent-Task-NetInventory
 - update to 2.1 for agent 2.2.0


> > TODO: Upstream links source tarballs to different place
> > (http://forge.fusioninventory.org/projects/fusioninventory-agent-task-snmpquery/files).
> > Please align Source0.
> I prefer to use the CPAN URL which is "stable" between version (upstream
> redmine URL is really awful, need to be changes on each release)
That makes sense. Ok.


> FIX: Build-require `perl(inc::Module::Install)' instead of
> `perl(ExtUtils::MakeMaker) (Makefile.PL:1).
-BuildRequires:  perl(ExtUtils::MakeMaker)
+BuildRequires:  perl(inc::Module::Install)
Ok.

> FIX: Build-require `perl(File::Which)' (Makefile.PL:13).
TODO: It's in eval, let's make it TODO. I think checking fusioninventory-agent
version is good idea.

> TODO: Consider removing bundled inc/* files to use the ones provided by
> distribution. Otherwise you will need to build-require all modules used by by
> the inc/* code (like YAML::Tiny, File::Temp, etc.)
> FIX: Build-require all inc/* code dependencies.
+# Use system ones
+rm -rf inc/*
Ok.

> FIX: Build-require `perl(threads)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:5).
+BuildRequires:  perl(threads)
Ok.

> FIX: Build-require `perl(threads::shared)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:6).
+BuildRequires:  perl(threads::shared)
Ok.

> TODO: Build-require `perl(base)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:7).
+BuildRequires:  perl(base)
Ok.

> FIX: Build-require `perl(FusionInventory::Agent::Task)' for runnig tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:7).
+BuildRequires:  perl(FusionInventory::Agent::Task)
Ok.

> TODO: Build-require `perl(constant)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:9).
+BuildRequires:  perl(constant)
Ok.

> TODO: Build-require `perl(Encode)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:14).
+BuildRequires:  perl(Encode)
Ok.

> FIX: Build-require `perl(FusionInventory::Agent::SNMP)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:17).
> FIX: Build-require `perl(FusionInventory::Agent::XML::Query)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:18).
> FIX: Build-require `perl(FusionInventory::Agent::Tools)' for running tests
> (lib/FusionInventory/Agent/Task/NetInventory.pm:19).
> FIX: Build-require `perl(FusionInventory::Agent::Tools::Network)' for running
> tests (lib/FusionInventory/Agent/Task/NetInventory.pm:20).
> FIX: Build-require `perl(FusionInventory::Agent::XML::Response)' for running
> tests (t/message.t:9).
+BuildRequires:  perl(FusionInventory::Agent::SNMP)
+BuildRequires:  perl(FusionInventory::Agent::XML::Query)
+BuildRequires:  perl(FusionInventory::Agent::Tools)
+BuildRequires:  perl(FusionInventory::Agent::Tools::Network)
+BuildRequires:  perl(FusionInventory::Agent::XML::Response)
Ok.

> > FIX: Package does not build because of missing
> > `perl(FusionInventory::Agent::Task::NetDiscovery) >= 2.1' build-requirement.
>
> I couldn't push this versions (agent 2.2, NetDiscovery 2.1) in the repository
> before all the stuff is approved.

So you have problem with bootstrapping these three packages because of cyclic
dependencies. Then you need put those dependencies under a condition and make
the condition false until the dependencies get into Fedora.

You need to fill separate review requests for each package. Maybe you will find
starting with another package of these three is easier.

Because perl maintainers rebuild all packages on each minor perl release (once
a year usually), please keep the condition there and use `perl_bootstrap' for
the condition macro value.

See
<http://pkgs.fedoraproject.org/gitweb/?p=perl-HTTP-Message.git;a=blob_plain;f=perl-HTTP-Message.spec;hb=HEAD>
for an example.

Define the perl_bootstrap macro to 1 at the beginning of your spec file to
bootstrap your three modules, and remove the definition only (not the
conditions) after all of them appear in Fedora build root. See 
<http://ppisar.fedorapeople.org/perl-Test-Pod-No404s/perl-Test-Pod-No404s.spec>
for an example.

Please provide adjusted spec file.

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review



[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]