[jbosstools-dev] FEEDBACK REQUESTED: Using maven-dependency-plugin to download upstream requirements into your build / removing redundant skip*Requirements variables from parent pom
Alexey Kazakov
alkazako at redhat.com
Tue Dec 1 22:13:43 EST 2015
On 12/01/2015 09:44 PM, Denis Golovin wrote:
> There are several kinds of downloaded resources throughout jbosstools:
> 1. *Runtimes* required during test execution (seam, as and etc)
> 2. *Compile time libraries* required for compilations
> 3. *Test project libraries* included into test projects
>
> (1) is defines test environment and should be skipped for download if
> tests skipped
> (2) and (3) should be never skipped.
Why do you need (3) if you not executing tests?
Thanks.
>
> Now to handle (1) we use three different maven plugins declared in
> parent pom (see parent/pom.xml line 504
> <https://github.com/jbosstools/jbosstools-build/blob/master/parent/pom.xml#L504>):
>
> * maven-dependency-plugin - to download some early versions of
> jboss-as from maven repo
> * download-maven-plugin - to download jboss-as from specified url
> * maven-download-plugin - to download seam distributions from
> specified url
>
> To handle (2) and (3) only maven-dependency-plugin is used.
> I think at this time obviously we have to change
> maven-dependency-plugin declaration in
> parent/pom.xml#build/pluginManagement to never skip downloading
> dependencies, because it is most common use case. After it is done we
> can remove unnecessary <skip>false</skip> throughout the projects.
>
> If there are libs for (2) and (3) downloaded from external URL using
> download-maven-plugin/maven-download-plugin we should probably move
> them to locus.
>
> Denis
>
> On Tue, Dec 1, 2015 at 5:57 PM Denis Golovin <dgolovin at exadel.com
> <mailto:dgolovin at exadel.com>> wrote:
>
> On Tue, Dec 1, 2015 at 2:34 AM Max Rydahl Andersen
> <manderse at redhat.com <mailto:manderse at redhat.com>> wrote:
>
> On 30 Nov 2015, at 21:55, Nick Boldt wrote:
>
> Looking in the 4.3.x and master branches, I can only see
> two poms with
> a reference to maven-dependency-plugin or
> generate-resources, both of
> which have their <skip>false</skip> set:
>
> ./plugins/org.jboss.tools.openshift.client/pom.xml
> ./plugins/org.jboss.tools.openshift.express.client/pom.xml
>
> So, how was your openshift build failing? Can you give details
> (console log, for example) on how |mvn clean install
> -DskipTests=true|
> failed?
>
> yes, the build did not work when you run with -DskipTests=true.
>
> I have to run it with just "mvn clean install" to work, just
> doing "mvn clean install -DskipTests=true" resulted in failure
> to build related to the openshift java client updates.
>
> anyway, lets just fix the issue that requires us to litter
> <skip>false</skip>
> into components builds. Please.
>
> I cannot replicate that. I was always running full build with
>
> mvn clean install -DskipTests=true
>
> before and after branching of 4.3.x and builds were always fine. I
> remember to have problems when new code pushed in tooling
> referencing resent changes in client jar, which is not available
> from maven repository.
>
> nightly full build from master is still available from wonka and
> it's been running without any problems for a couple weeks.
>
> what kind of failure you have for openshift build from 4.3.x branch?
>
> Denis
>
> /max
>
> On Thu, Nov 26, 2015 at 7:40 AM, Max Rydahl Andersen
> manderse at redhat.com <mailto:manderse at redhat.com> wrote:
>
> on this note - I just spent half the day figuring out why
> jbosstools-openshift
> was not building when I did "mvn clean install
> -DskipTests=true".
>
> Turns out I'm hit with this exact issue - that
> skipTest is for reason I
> never understood
> is used to turn off download for testing dependencies
> by turning of download
> of all dependencies.
>
> We need to stop adding workaround for this into our
> projects and instead
> have those few projects
> that have large dependencies to use another mechanism
> to turn of download.
>
> /max
>
> Only one I don't know about is swtbot.test.skip.
>
> The others I don't see how to remove nor why since
> they all play a part.
>
> This sounds more like should fix how the skip's works
> rather than remove
> them.
>
> The issue in JBIDE-15330
> <https://issues.jboss.org/browse/JBIDE-15330> seem to
> because of the many time pointed out bad
> assumption that skipTest
> should mean you don't want dependencies to be downloaded.
>
> Reported here
> https://issues.jboss.org/browse/JBIDE-15332 in 2013.
>
> The issue is
> <skipRequirements>${skipTests}</skipRequirements>
> and then skipRequirements are used to disable all
> basic dependency fetching
> which is simply a wrong/bad assumption.
>
> /max
>
> If your project needs to download upstream
> libraries/runtimes/jars
> using something like maven-dependency-plugin, and you
> have not set
> <skip>false</skip> for those plugins' builds, eg.,
> https://github.com/jbosstools/jbosstools-livereload/pull/54/
> you
> should do so.
>
> This is because I'd like to remove some of the
> obsolete skip*
> variables we have in the parent pom, and you don't
> want your builds to
> fail when skipping tests, as livereload used to before
> https://issues.jboss.org/browse/JBIDE-15330 was fixed.
>
> Here are all the skip-related variables in our parent
> pom [1]:
>
> <swtbot.test.skip>true</swtbot.test.skip>
> <skipRequirements>${skipTests}</skipRequirements>
> <skipPrivateRequirements>true</skipPrivateRequirements>
> <skipTestsWithPrivateRequirements>${skipPrivateRequirements}</skipTestsWithPrivateRequirements>
> and
> skipTestsOrITests (which is true when skipTests or
> skipITests is true).
>
> [1]
> https://github.com/jbosstools/jbosstools-build/blob/master/parent/pom.xml
>
> Which of those are no longer used, that can be safely
> removed? Are
> skipTestsWithPrivateRequirements and skipRequirements
> used for the
> same purposes as skipITests?
>
> Thanks,
>
> --
> Nick Boldt :: JBoss by Red Hat
> Productization Lead :: JBoss Tools & Dev Studio
> http://nick.divbyzero.com
>
> ------------------------------------------------------------------------
>
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> <mailto:jbosstools-dev at lists.jboss.org>
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>
> /max
> http://about.me/maxandersen_______________________________________________
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> <mailto:jbosstools-dev at lists.jboss.org>
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>
> /max
> http://about.me/maxandersen
>
> --
> Nick Boldt :: JBoss by Red Hat
> Productization Lead :: JBoss Tools & Dev Studio
> http://nick.divbyzero.com
>
> /max
> http://about.me/maxandersen
>
>
> CONFIDENTIALITY NOTICE: This email and files attached to it
> are confidential. If you are not the intended recipient you
> are hereby notified that using, copying, distributing or
> taking any action in reliance on the contents of this
> information is strictly prohibited. If you have received this
> email in error please notify the sender and delete this email.
>
> _______________________________________________
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> <mailto:jbosstools-dev at lists.jboss.org>
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>
>
> CONFIDENTIALITY NOTICE: This email and files attached to it are
> confidential. If you are not the intended recipient you are hereby
> notified that using, copying, distributing or taking any action in
> reliance on the contents of this information is strictly prohibited.
> If you have received this email in error please notify the sender and
> delete this email.
>
>
>
> _______________________________________________
> jbosstools-dev mailing list
> jbosstools-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jbosstools-dev/attachments/20151201/ed157865/attachment-0001.html
More information about the jbosstools-dev
mailing list