pcp
[Top] [All Lists]

Re: [pcp] pcp updates: some build/package re-jigging and QA

To: Lukas Berk <lberk@xxxxxxxxxx>
Subject: Re: [pcp] pcp updates: some build/package re-jigging and QA
From: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Wed, 11 Nov 2015 06:59:47 +1100
Cc: pcp@xxxxxxxxxxx
Delivered-to: pcp@xxxxxxxxxxx
In-reply-to: <87d1vn81w8.fsf@xxxxxxxxxx>
References: <563949B8.9020604@xxxxxxxxxxxxxxxx> <87d1vn81w8.fsf@xxxxxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0
Lukas,

Apologies for the late response on this one ...

On 07/11/15 04:37, Lukas Berk wrote:
...
If the configure script now has pmdaelasticsearch inclusion depending on
LWP::UserAgent, shouldn't we include that as a BuildRequires (not just a
Requires) in the spec file?  In testing my spin-rawhide sources fix
today, it was failing due to pmdaelasticseach not being packaged, but
still attempting to be built as per the spec file.

This was using fedora.spec (that I did not change) not pcp.spec.in (that I did change and where this problem would not have happened, but another problem would have happened, see below).

elasticsearch is not the only PMDA omitted from your build, from the log file ...

checking if the mysql PMDA should be included... no
checking if the postgresql PMDA should be included... no
checking if the elasticsearch PMDA should be included... no
checking if the nginx PMDA should be included... no
checking if the activemq PMDA should be included... no
...
checking if the postfix PMDA should be included... no

I think we have a couple of objectives here ...

1. On any platform a build from source and install should succeed if possible, and in particular any component (PMDAs in this instance, but not limited to them) that depends on something that is not universally available may conditionally not be built and packaged. This was my objective.

2. On any specific platform, we should expect some set of packages to be created. This is especially true of a "distro" build and was the problem Lukas ran into.

The configure and pcp.spec.in changes address 1.

Adding BuildRequires to match the configure logic in fedora.spec will address 2. for Fedora builds (and possibly RedHat builds, I'm not sure how they are done).

That still leaves 2. as an unsolved issue for all of the non-Fedora (and possibly non-RedHat) rpm distros and all of the distros not using rpm.

This sounds like QA fodder, but it is a lot of work to set up and audit on-going ... I'm not sure who's sufficiently motivated to volunteer to undertake this.

So, I trundled off to see how often the elasticsearch PMDA QA tests are run vs notrun ... and there are apparently NO QA tests for this PMDA ... grrr!!!

Moving on to the nginx PMDA, in my environment, qa/778 is run as follows: 27 passes, 1 fail, 1 notrun ... but there is no QA test to assert that on a specific platform the nginx PMDA should or should not be installed after a full build and install.

<Prev in Thread] Current Thread [Next in Thread>