Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] can tycho be configured that the target that is configured in the pom is always used above the local repo?

parent poms is really a nogo for me
i hate parent poms that go over git repo's.. (with all kinds of ../../../ )
)
also referencing p2 repo's on disk means all the developer needs to really checkout everything exactly the same.. (again those ../../../../)

what you say with p2 repo's i kind of already have, but to get there i now need to use install
Or i guess make from all the git repo's that we have all small p2 sites and they all reference each other like that,
That is really horrible, especially also on jenkins that for us have around 12 git repo's (not counting the 2 of 3rd party dltk repo) to build 1 product
For those i already have some filtering setup and there we use the same version for everything so i do stuff like this:

 <filter>
<type>eclipse-plugin</type>
<id>servoy_headless_client</id>
<restrictTo>
<version>${project.version}</version>
</restrictTo>
</filter>

and thats a one time setup that i never have to change after that.

What if i just don't want relative paths outside git repo's (or using git modules also tried that, horrible exercise) pointing to all kind of stuff .

I have checkouts of the same git repo's for multiply branches (because constantly switching between them in eclipse is really not nice if there are constant changes of the number of plugins)

I would love to have some kind of tycho command to make a p2 site that deployes it locally to a certain p2_version of the thing i build
then i just can reference that in the parent pom purely by that version..

So 
mvn install

does not just dump the plugin like it does now in a maven repo

but uses a config so kind of an extra dir in the maven repo 

so not:

/artifacts/org.eclipse.dltk.core/dltk.plugin/version/xxx

but

  /artifacts/org.eclipse.dltk.core/special_version/dltk.plugin/version/xxx  


and that special version is set in the parent pom

then in other parent poms you can also set that specific version and it only will get stuff from there..

so you don't noee any kind of filters in tycho. it only gets from the local stuff exactly the one that that branch targets




On Thu, 23 Apr 2020 at 12:26, Mickael Istria <mistria@xxxxxxxxxx> wrote:
If you want to constrain some versions between branches, I think it's up to your plugin to define the right dependencies. If you use `mvn install`, then you break isolation and you let p2/tycho decide what it's going to use. "Porosity" is a risk of `mvn install`; using it has always been discouraged by Tycho developers since Tycho 0.1 and has been discourage by Maven developers has well for several months now
If you need to orchestrate builds, then either you use "mvn install" but with different p2 repos to have some isolation; or you can just not use "mvn install" and build intermediary p2 repos (1 for each Git repo) so the build can interoperate by reference the p2 repo from the other repository, or you can have a super pom to build everything at once.
I really think that both p2 and Maven already have some means to provide some isolation that you're looking for; so I don't think Tycho needs to change here.
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/tycho-user


--
Johan Compagner
Servoy

Back to the top