You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by Dan Haywood <dk...@gmail.com> on 2011/07/08 09:25:16 UTC

integration-tests in the msdf.sh build

Just starting a new thread for the issue that Rob reported (and Kevin 
has been commenting on) about the running of the SQL Object store 
integration tests [oai.runtimes.dflt.objectsstores.sql:tests-served] in 
the msdf.sh script.

As the contributors guide explains (but I may not have fully explained 
on this thread), we used to build the site using:

mvn site-deploy -D deploy=local -D site=full

The -D flags activate a couple of profiles; in particular the site=full 
activates a profile that includes the "full" set of plugins.

However, when I checked this before creating the RC, I found that this 
was causing a problem ... javadoc (part of the -D site=full profile) was 
blowing up when I tried to build the entire site from the parent 
module.  I can't recall the exact problem but googling around did show 
others hitting the same issue in the current latest version of the 
maven-javadoc-plugin.

As a workaround, I tried running -D site=full for an individual module, 
and found that that worked ok.

So, I hit on the solution we currently have... move the javadoc plugin 
to a new profile (activated -D patch=leaf), and then write a script 
msdf.sh (stands for "mvn site deploy full") which runs a cut down 
version of the full build for the parent module and then "patches" the 
generated site by running an additional mvn site-deploy command for each 
of the submodules.

If you look at the msdf.sh site, you'll see that it uses the 'modules' 
file to enumerate the (directories of the) submodules to run this 
patching command.  The problem, then, is that this modules command 
incorrectly includes the 'tests-served' module.  What I don't understand 
is that it seems to work for me even though I don't (believe I) have the 
prerequisite MySQL server installed.  For Rob the mvn command for this 
module is hanging, presumably because there is no MySQL server installed.

The workaround is to remove the 'tests-served' line from the 'modules' file.

~~~
What Kevin has been talking about is a profile "integration-tests" that 
is used to activate the 'tests-served' module during the regular "mvn 
clean install" build.  We don't use this during our CI build, and if you 
want to use it when building locally, you'll need to install MySQL etc 
first.

Hope this makes things clearer...

Cheers
Dan


On 07/07/2011 16:04, Kevin Meyer - KMZ wrote:
> The plot thickens.
>
> Somewhere in the full site build (using msdf.sh), the integration tests
> *ARE* being executed.
>
> In my (in progress) full build, I see the ObjectStore menu already
> includes:
>
> "SQL OS Modules
>
>      Implementation
>      Tests
>      Integration Tests"
>
> It's the latter, Integration Tests, that is holding up Rob's build.
>
> I just haven't found *where* the integration-tests profile is being turned
> on!
>
> I think a reasonable solution going forward might be to change the
> SQL served integration test profile to something else, like sql-
> integration-tests, so it won't match...
>
> Regards,
> Kevin
>
>
> On 7 Jul 2011 at 14:19, Robert Matthews wrote:
>
>> It is running  tests-served.
>>
>> I can't see how it might be picking up an extra property.
>>
>> I'm using the script to run using
>>
>