Sounds a very good to speed up it execution!

On Sat, 25 Mar 2017 at 4:02 pm, Hervé BOUTEMY <herve.bout...@free.fr> wrote:

> ok, let's share what I know from embedded ITs (sorry, long email, but IMHO
> useful to share some details):
>
> - by default, Verifier forks for every IT and launches Maven with the shell
> script through ForkedLauncher [1]
>
> - in embedded mode, there is no fork but use of MavenCli.doMain(String[]
> args,
> workingDir, stdin, stdout) by Embedded3xLauncher [2], which will recreate a
> Classworlds classloader context in the current JVM: AFAIK, this makes the
> embedded situation really the same as forked one from a classloader point
> of
> view, with CLI args passed, working dir, stdin and stdout
>
> - a few ITs require shell script and don't have any meaning without it: in
> this case, even if the build is in embedded mode, the IT forces the
> Verifier to
> used forked execution, for example in mng5889 [3]
>
> - every IT that we want absolutely not to be embedded has to do this
> "verifier.setForkJvm( true );" call, or the IT won't be in expected
> situation:
> as you point out, mng4625 currently does not do this call, then may not be
> really effective with the embedded profile. This can be considered as a
> bug and
> explains why currently this IT fails in my "embedded-ITs" branch => I'll
> improve now the IT to support the embedded profile by forcing forked
> execution
> :)
>
>
> Now that I wrote this, summarizing what I knew and what was already
> reported
> as issues, it looks to me that embedded mode may trigger a few failures
> that
> can and should be fixed by forcing forked execution (which won't change the
> overall effect: most ITs will run embedded then execution time will be a
> lot
> lower than full forked execution)
>
> the only risk is that some ITs don't fail when run in embedded mode but in
> fact don't really test what they are supposed to test
>
> This seems a reasonable risk to take here, given the benefit: we'll
> improve ITs
> if necessary.
> If nobody objects, I'll do the merge to master in a few days
>
> Regards,
>
> Hervé
>
> [1]
> http://maven.apache.org/shared/maven-verifier/xref/org/apache/maven/it/
> ForkedLauncher.html#L60
> <http://maven.apache.org/shared/maven-verifier/xref/org/apache/maven/it/ForkedLauncher.html#L60>
>
> [2]
> http://maven.apache.org/ref/3.5.0-beta-1/maven-embedder/xref/org/apache/
> maven/cli/MavenCli.html#L262
> <http://maven.apache.org/ref/3.5.0-beta-1/maven-embedder/xref/org/apache/maven/cli/MavenCli.html#L262>
>
> [3]
> https://github.com/apache/maven-integration-testing/blob/master/core-it-suite/src/test/java/org/apache/maven/it/
> MavenITmng5889CoreExtensionsTest.java#L57
> <https://github.com/apache/maven-integration-testing/blob/master/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5889CoreExtensionsTest.java#L57>
>
> Le vendredi 24 mars 2017, 21:29:38 CET Olivier Lamy a écrit :
> > sure tempting :-)
> > But is is the same classloader mechanism as a "normal" Maven run? (should
> > be really close but not sure exactly so maybe we can miss some cases)
> >
> > On Fri, 24 Mar 2017 at 6:47 pm, Stephen Connolly <
> >
> > stephen.alan.conno...@gmail.com> wrote:
> > > Have we some of the tests running in both modes?
> > >
> > > Specifically at least 4625 as it caught some interesting CLI parsing
> > > issues, but there may be a couple more
> > >
> > > On Fri 24 Mar 2017 at 07:15, Hervé Boutemy <hbout...@apache.org>
> wrote:
> > > > as you can see, in embedded mode, core ITs can run in 17 minutes,
> when
> > > > in
> > > > classic mode they run in 1h30
> > > >
> > > > any objection to merge this embedded mode into master?
> > > >
> > > > Regards,
> > > >
> > > > Hervé
> > > >
> > > > Le vendredi 24 mars 2017 04:17:49 CET, vous avez écrit :
> > > > > See
> > > >
> > > >
> https://builds.apache.org/job/maven-3.x-jenkinsfile/job/embedded-ITs/3/
> > > >
> > > >
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > > > For additional commands, e-mail: dev-h...@maven.apache.org
> > > >
> > > > --
> > >
> > > Sent from my phone
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>
> --
Olivier Lamy
http://twitter.com/olamy | http://linkedin.com/in/olamy

Reply via email to