You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by Andy Seaborne <an...@apache.org> on 2015/04/02 11:30:24 UTC
OSGi breakage (Re: Jenkins build became unstable: Jena_Development_Test
#1826)
The latest changes to jena-osgi-test broke this jenkins job.
The job runs "mvn clean verify".
The RAT plugin runs in the "verify" phase. This is the normal way it is
used.
But the surefire testing in jena-osgi-test only works if the earlier
jena-osgi has been installed into the local repo. surefire runs at step
"integration-test" [1].
The outcome is that jena-osgi-test breaks a maven build of "verify" into
an empty local repository.
Jena should build from source cleanly. Running a build without
installing to check each and every part builds properly first is quite
reasonable in my opinion. Requiring "install" is a step too far.
It also means it's testing with "verify" the previous version if the
local repo has been preloaded.
I am concerned that the provision of a stable OSGi is forcing itself on
the rest of the project.
JENA-913
I commented out module jena-osgi-test as a quick fix.
Andy
[1]
For reference the lifecycle is:
validate
compile
test
package
integration-test
verify
install
deploy
Re: OSGi breakage (Re: Jenkins build became unstable:
Jena_Development_Test #1826)
Posted by Stian Soiland-Reyes <st...@apache.org>.
perhaps this can help:
https://maven.apache.org/plugins/maven-dependency-plugin/properties-mojo.html
On 2 April 2015 at 15:50, Stian Soiland-Reyes <st...@apache.org> wrote:
> Testing got tricky as we changed away from that LGPLed OSGi test
> plugin I had earlier (I believe that managed to run as part of the
> same jena-osgi module).
>
> The pax runner we use now needs to be able to link to a JAR file, but
> it gets a bit awkward when it's part of the same build - that's why
> there is a special case and a system property for the jena-osgi
> dependency which expects it as a Maven dependency:
>
> https://github.com/apache/jena/blob/master/apache-jena-osgi/jena-osgi-test/src/test/java/org/apache/jena/osgi/test/JenaOSGITest.java#L88
>
> The rest are done with 'linkbundle' which just looks in the files
> generated in target/pax-exam-links/
>
>
> ..yet this didn't work for jena-osgi, as the exam-maven-plugin is not
> generating that link file for some reason (perhaps because jena-osgi
> is in the reactor?)
>
>
> Perhaps a hard-coding to ../jena-osgi/target/jena-osgi-${version}.jar
> or something would make it work for mvn verify.
>
>
> In one of my many spare cycles I can try to raise this with the pax
> community to see if there is a better way to set this up.
>
> On 2 April 2015 at 10:30, Andy Seaborne <an...@apache.org> wrote:
>> The latest changes to jena-osgi-test broke this jenkins job.
>>
>> The job runs "mvn clean verify".
>>
>> The RAT plugin runs in the "verify" phase. This is the normal way it is
>> used.
>>
>> But the surefire testing in jena-osgi-test only works if the earlier
>> jena-osgi has been installed into the local repo. surefire runs at step
>> "integration-test" [1].
>>
>> The outcome is that jena-osgi-test breaks a maven build of "verify" into an
>> empty local repository.
>>
>> Jena should build from source cleanly. Running a build without installing
>> to check each and every part builds properly first is quite reasonable in my
>> opinion. Requiring "install" is a step too far.
>>
>> It also means it's testing with "verify" the previous version if the local
>> repo has been preloaded.
>>
>> I am concerned that the provision of a stable OSGi is forcing itself on the
>> rest of the project.
>>
>> JENA-913
>>
>> I commented out module jena-osgi-test as a quick fix.
>>
>> Andy
>>
>> [1]
>> For reference the lifecycle is:
>>
>> validate
>> compile
>> test
>> package
>> integration-test
>> verify
>> install
>> deploy
>>
>
>
>
> --
> Stian Soiland-Reyes
> Apache Taverna (incubating), Apache Commons RDF (incubating)
> http://orcid.org/0000-0001-9842-9718
--
Stian Soiland-Reyes
Apache Taverna (incubating), Apache Commons RDF (incubating)
http://orcid.org/0000-0001-9842-9718
Re: OSGi breakage (Re: Jenkins build became unstable:
Jena_Development_Test #1826)
Posted by Stian Soiland-Reyes <st...@apache.org>.
Testing got tricky as we changed away from that LGPLed OSGi test
plugin I had earlier (I believe that managed to run as part of the
same jena-osgi module).
The pax runner we use now needs to be able to link to a JAR file, but
it gets a bit awkward when it's part of the same build - that's why
there is a special case and a system property for the jena-osgi
dependency which expects it as a Maven dependency:
https://github.com/apache/jena/blob/master/apache-jena-osgi/jena-osgi-test/src/test/java/org/apache/jena/osgi/test/JenaOSGITest.java#L88
The rest are done with 'linkbundle' which just looks in the files
generated in target/pax-exam-links/
..yet this didn't work for jena-osgi, as the exam-maven-plugin is not
generating that link file for some reason (perhaps because jena-osgi
is in the reactor?)
Perhaps a hard-coding to ../jena-osgi/target/jena-osgi-${version}.jar
or something would make it work for mvn verify.
In one of my many spare cycles I can try to raise this with the pax
community to see if there is a better way to set this up.
On 2 April 2015 at 10:30, Andy Seaborne <an...@apache.org> wrote:
> The latest changes to jena-osgi-test broke this jenkins job.
>
> The job runs "mvn clean verify".
>
> The RAT plugin runs in the "verify" phase. This is the normal way it is
> used.
>
> But the surefire testing in jena-osgi-test only works if the earlier
> jena-osgi has been installed into the local repo. surefire runs at step
> "integration-test" [1].
>
> The outcome is that jena-osgi-test breaks a maven build of "verify" into an
> empty local repository.
>
> Jena should build from source cleanly. Running a build without installing
> to check each and every part builds properly first is quite reasonable in my
> opinion. Requiring "install" is a step too far.
>
> It also means it's testing with "verify" the previous version if the local
> repo has been preloaded.
>
> I am concerned that the provision of a stable OSGi is forcing itself on the
> rest of the project.
>
> JENA-913
>
> I commented out module jena-osgi-test as a quick fix.
>
> Andy
>
> [1]
> For reference the lifecycle is:
>
> validate
> compile
> test
> package
> integration-test
> verify
> install
> deploy
>
--
Stian Soiland-Reyes
Apache Taverna (incubating), Apache Commons RDF (incubating)
http://orcid.org/0000-0001-9842-9718