2017-06-26 13:54 GMT+02:00 Nicolas Lalevée <nicolas.lale...@hibnet.org>:
> > > Le 26 juin 2017 à 07:46, Gintautas Grigelionis <g.grigelio...@gmail.com> > a écrit : > > > > If I understand the process correctly, Jenkins executes "ant > > prepare-jenkins" first, which does not work locally any more, because the > > property used to figure out where to get Ivy jar from is set to an empty > > string. I wondered what was the reason for that change. Actually, when I > > look at it again, the change is even more drastic. Previously, > > "hudson-install-ivy" would depend on both "hudson-install-ivy-jar" > (setting > > "ivy.jar.url") and "hudson-install-ivy-release" (setting "ivy.version" if > > "hudson.ivy.jar.url" was not available). In addition, "baseLocation" was > > set. The new target "jenkins-install-ivy" does not make sense to me. > > This is because of the change in the configuration of Jenkins Job, as I > briefly explained in the first mail. Now the Ivy artifact is not downloaded > via an url, there is a Jenkins plugin, a build step, which handle the copy > of the artifacts. Relying on this internal copy of artifact seems more > stable that relying on a http/https url. The jenkins-install-ivy target is > then calling install-ivy with a path rather than an url. > Sorry, I misunderstood the brief description. In my world, "prepare-eclipse" should also download Ivy and add it to PDE. > Now the jenkins-* targets are really dedicated to being ran on jenkins and > are not suited for a local environment. That is why I renamed the targets > to download and setup an eclipse, removing the jenkins- prefix: these can > be used in a dev environment. > If you do that: ant prepare-eclipse > And do the install: ant install-ivy -Divy.jar.url=https://builds. > apache.org/view/A/view/Ant/job/Ivy/lastSuccessfulBuild/ > artifact/build/artifact/jars/ivy.jar > Then you will be able to reproduce the issue. At least I can. > Thanks, now I get the idea. > In the next step, Jenkins executes "ant dist checkstyle rat" which fails > > because of "missing" Eclipse plugins. That is apparently caused by > dropins > > being unpacked in the wrong place in the first build stage > > ("prepare-jenkins"). In my first suggestion, I was obviously wrong about > > what that place should be. I do recall using getting Eclipse to work > > locally with an older IvyDE build.xml, but I did not document whether > that > > involved any extra steps. However, Eclipse is able to bootstrap itself > > locally when dropins are unpacked in "dropins" directory, see Eclipse > > documentation [1]. That's what the patch is for. > > I don’t have much experience with using dropins, so if you think this will > help make the build more stable, you’re welcomed to open a PR. > Dropins (or "drops" as they're called in the distributions) is what IvyDE builds were based on all the time. I am still confounded why it worked before and stopped working now. Yet, reading the documentation I became convinced that the dropins must be unpacked in another location. So I just wanted to apologize for an erroneous suggestion and share some information in order for it to be independently confirmed. I may open a PR, but since you're working on this, I assumed that you could move faster than me. There's another issue to be resolved for local builds to work hassle-free -- currently, they need an environment variable BUILD_NUMBER set up by Jenkins. Gintas > > [1] https://wiki.eclipse.org/Equinox/p2/Getting_Started#Dropins > > > > > > 2017-06-25 22:27 GMT+02:00 Nicolas Lalevée <nicolas.lale...@hibnet.org>: > > > >> > >>> I am sorry, my memory of what I was doing back in December is > incorrect. > >>> I guess I somehow updated > >>> configuration/org.eclipse.equinox.simpleconfigurator/bundles.info or > did > >>> something else. > >>> Luckily, there's a simpler way, the dropins should go into their own > >>> special directory, which needs the following change > >>> > >>> --- a/build.xml > >>> +++ b/build.xml > >>> @@ -555,11 +555,11 @@ You have to specify the Ivy to install with one > of > >>> the following property: > >>> <delete dir="${basedir}/dependencies/eclipse" > >> failonerror="false" > >>> /> > >>> <delete dir="${basedir}/dependencies/${ > eclipse.download.sdk.name > >> }" > >>> failonerror="false" /> > >>> <unzip src="${basedir}/dependencies/${eclipse.download.sdk.name > >> }.zip" > >>> dest="${basedir}/dependencies/" /> > >>> - <unzip src="${basedir}/dependencies/${ > eclipse.download.wtp.name > >> }.zip" > >>> dest="${basedir}/dependencies/" /> > >>> - <unzip src="${basedir}/dependencies/${ > eclipse.download.emf.name > >> }.zip" > >>> dest="${basedir}/dependencies/" /> > >>> - <unzip src="${basedir}/dependencies/${ > eclipse.download.xsd.name > >> }.zip" > >>> dest="${basedir}/dependencies/" /> > >>> - <unzip src="${basedir}/dependencies/${ > eclipse.download.gef.name > >> }.zip" > >>> dest="${basedir}/dependencies/" /> > >>> - <unzip src="${basedir}/dependencies/${ > >> eclipse.download.zest.name}.zip" > >>> dest="${basedir}/dependencies/" /> > >>> + <unzip src="${basedir}/dependencies/${ > eclipse.download.wtp.name > >> }.zip" > >>> dest="${basedir}/dependencies/eclipse/dropins" /> > >>> + <unzip src="${basedir}/dependencies/${ > eclipse.download.emf.name > >> }.zip" > >>> dest="${basedir}/dependencies/eclipse/dropins" /> > >>> + <unzip src="${basedir}/dependencies/${ > eclipse.download.xsd.name > >> }.zip" > >>> dest="${basedir}/dependencies/eclipse/dropins" /> > >>> + <unzip src="${basedir}/dependencies/${ > eclipse.download.gef.name > >> }.zip" > >>> dest="${basedir}/dependencies/eclipse/dropins" /> > >>> + <unzip src="${basedir}/dependencies/${ > >> eclipse.download.zest.name}.zip" > >>> dest="${basedir}/dependencies/eclipse/dropins" /> > >>> <move file="${basedir}/dependencies/eclipse" > >>> tofile="${basedir}/dependencies/${eclipse.download.sdk.name}" /> > >>> </target> > >> > >> I don’t understand what you are suggesting. The issue at hand is > resolving > >> the Ivy jar. The suggested patch is about installing eclipse plugins in > >> dropins. But the build is still not finding the ivy plugin. > >> > >>> I don't understand why "jenkins-prepare" (neé "hudson-prepare") would > >> skip > >>> "download-ivy" (because "jenkins-install-ivy" sets ivy.jar.url to "" > >> rather > >>> than ${hudson.ivy.jar.url}) and fail? > >> > >> Again, sorry, but I don’t understand what you are talking about. Are you > >> seing the same error as the one Jenkins is showing ? The error is > occurring > >> with the eclipse build started, way later. > >> > >> Nicolas > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org > For additional commands, e-mail: dev-h...@ant.apache.org > >