![]() |
|
|
Change By:
|
Christian Galsterer
(21/Dec/13 5:49 PM)
|
Summary:
|
Calculate Maven dependency graph also in
Include
verify lifecycle to
deploy to local remote repository only when maven verify is succesfull and to allow proper working of
calculate the more relevant build for
"Build whenever a SNAPSHOT dependency is built"
|
Description:
|
Currently the
dependency graph
upstream candidate resolution mechanism
for "Build whenever a SNAPSHOT dependency is built"
maven jobs works
only
for
considers
Maven install and deploy lifecycle
when there is more than one possible upstream build
.
In this case the tiebreaker kicks in, which then determines the upstream build comparing by the job name. This is a reproducible behaviour but doesn't cater for the following situation as then the "wrong" build is selected depending on your naming strategy.
If you want to split your job into two steps where the first step verifies that your maven project compiles and all test are successful and in the second step one then upload the new artefacts to your remote repository (if the first step works fine) this
currently
works
of
fine if
you run the first step with
"
mvn clean
install but not with clean
verify
. The problem
" and the second step
with
that when your build fails
"deploy" and there
is
no other upstream candidate. It doesn't work when there are other possible candidates
(e.g.
compilation problems, broken tests) that one has
a
set
static code analysis build
of
artefacts in your local repository which is incomplete and in
the
worst case also incompatible as some parts already new and
same
parts are old and they are not compatible, e.g. by an API change.
So solve this
artefact) as then
the
artefacts shall only be deployed to the local
tiebreaker kicks in
and
remote depository when
the
verify phase was successful
the "wrong" build is selected (see above)
.
In order to make the "Build whenever a SNAPSHOT dependency is built" feature working
,
for
the
dependency graph needs
above sitatuation the algorithm
to
be created
determine the upstream build should
not only
for
consider
the install and
verify
deploy
lifecycle phase, but
already for
also
the verify phase.
Please find attached a patch which contains these changes.
If you think the patch is correct, please let me know and I create a proper hit pull request.
|
|
|
|
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira
|
--
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit
https://groups.google.com/groups/opt_out.