[jbosstools-issues] [JBoss JIRA] (JBIDE-14448) Build doesn't detect cycle dependencies between JBossTools modules

Nick Boldt (JIRA) jira-events at lists.jboss.org
Thu May 23 13:55:06 EDT 2013


    [ https://issues.jboss.org/browse/JBIDE-14448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12776502#comment-12776502 ] 

Nick Boldt commented on JBIDE-14448:
------------------------------------

Bear in mind however that any plan you put in place to have to change nothing (using Jenkins properties to override defaults) will still break when users try to build locally and forget to use the same override.

For example... today, we have _41 jobs that all set these values, so the fact that the parent pom in the 4.1.0.Beta1x branch says "trunk" instead of "4.1.kepler" is irrelevant:

{code}
jbosstools-nightly-staging-composite=http://download.jboss.org/jbosstools/builds/staging/_composite_/core/4.1.kepler/
jbosstools-nightly=http://download.jboss.org/jbosstools/updates/nightly/core/4.1.kepler/
{code}

However, Joe Average End-user will attempt to build locally from the 4.1.0.Beta1x branch, eg., to test their respin-a fix, and will end up compiling against the trunk bits, not the 4.1.kepler bits, unless they too pass in the same -D flags:

{code}
mvn verify -Djbosstools-nightly-staging-composite=http://download.jboss.org/jbosstools/builds/staging/_composite_/core/4.1.kepler/ \
-Djbosstools-nightly=http://download.jboss.org/jbosstools/updates/nightly/core/4.1.kepler/{code}

So... while we no longer have to change the parent pom in the branch to build, we STILL need to change it [1] to prevent users from building against the wrong upstream.

[1] https://github.com/jbosstools/jbosstools-build/commit/02894648612880579893c9a323ba75fe01e5108b



                
> Build doesn't detect cycle dependencies between JBossTools modules
> ------------------------------------------------------------------
>
>                 Key: JBIDE-14448
>                 URL: https://issues.jboss.org/browse/JBIDE-14448
>             Project: Tools (JBoss Tools)
>          Issue Type: Bug
>          Components: Build/Releng
>    Affects Versions: 4.1.0.Beta1
>            Reporter: Denis Golovin
>            Assignee: Nick Boldt
>
> Currently every component references nightly composite update site during the build to get dependencies. That leads to possibility to introduce cycle dependencies between components that is not detected by build.
> Here is example of PR introduced a cycle between JST and VPE. Build works because JST have access to VPE BrowserSim through nightly composite update site.
> The solution would be to reference specific nightly update sites for modules that are dependencies for current one. 
> In this case JST should have reference only to base composite nightly update site. That would solve cycle dependency detection problem and speed up the build because it would not require to download and analyse all metadata from jbosstools nightly composite update site.

--
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


More information about the jbosstools-issues mailing list