Community
Participate
Working Groups
Created attachment 199316 [details] patch which moves TargetExportJob into pde.core The attached patches introduce a new Ant task in pde.core which allows to provision (resolve+export) a target definition into a destination location.
Created attachment 199317 [details] patch which adds the ant tasks to pde.core
Note, the changes can also be pulled from git://github.com/eclipseguru/pde-ui.git (branch target_platform_anttasks)
Example Ant Task: <target name="setup" description="initializes target platform"> <pde.provisionTargetDefinition cleardestination="yes" destinationdirectory="${repoBaseLocation}/target" targetfile="my-target.target"/> </target>
Is this intended as a workaround for bug 266311? Or is it a first step towards supporting targets in pde build? I'm not opposed to adding this task, but there needs to be some concrete reason to do so. It is not difficult for an extending product to create the same task.
(In reply to comment #4) > Is this intended as a workaround for bug 266311? Or is it a first step towards > supporting targets in pde build? I think it's both. Short term, it's a workable solution for bug 266311 if PDE Core is also installed in the base builder. It does not support all aspects of target definitions, though. For example, path resolution using workspace variables wont work because there is no project/resource in a workspace. Long term (IMHO), a reduced set of target definition functionality could move to PDE Build. The interesting piece (again, IMHO) is the IU container stuff. But I think it needs more flexibility regarding the actual update site location. For example, on build.eclipse.org I might want to "override" it at runtime by pointing directly to the downloads file system using file:// URLs.
BTW, the TargetExportJob move to PDE Core also simplifies life for (headless) extenders. Currently it lives in PDE UI which requires lots of UI plug-ins.
I don't think that bug 266311 will be looked at for 3.8. I think moving the job to PDE core still makes sense. However, is there actually a use case where the new ant task is required? I don't want to add a new task unless someone definitely needs it.
(In reply to comment #7) > However, is there actually a use case where the > new ant task is required? Currently, people are massing around with XSLT. That's error prone and requires quite a bit of duplication. Additionally, all other build technologies are capable of "downloading" target platforms during headless builds. IMHO PDE - as the creator of target platforms - should be able to support it in headless builds too.
Both patches have been applied to the master branch with minor changes.
(In reply to comment #5) > I think it's both. Short term, it's a workable solution for bug 266311 if > PDE Core is also installed in the base builder. It does not support all > aspects of target definitions, though. For example, path resolution using > workspace variables wont work because there is no project/resource in a > workspace. Gunnar, Can you elaborate about what capabilities of a target definition are and are not supported? I have a complex .target file that currently uses workspace variables, but I could easily change that to absolute file pats if this new tast supports Directory locations.
Sorry, I only know that Software Sites work (also with absolute file urls). I haven't tested others. However, basically everything that relys on a variable is broken because variables aren't resolved. Everything else should/may work.
(In reply to comment #10) > (In reply to comment #5) > > I think it's both. Short term, it's a workable solution for bug 266311 if > > PDE Core is also installed in the base builder. It does not support all > > aspects of target definitions, though. For example, path resolution using > > workspace variables wont work because there is no project/resource in a > > workspace. > > Gunnar, > Can you elaborate about what capabilities of a target definition are and are > not supported? I have a complex .target file that currently uses workspace > variables, but I could easily change that to absolute file pats if this new > tast supports Directory locations. PDE Core should be fully capable of resolving a target definition without a workspace. Variables that require a workspace will not resolve, but the rest will.