From: Chen, X. <ch...@or...> - 2012-05-01 17:46:50
|
Hi, I think the idea is using predefined target platform file: 1) clone the source repo, 2) Set target platform to use the predefined target platform file (Eclipse will automatically list all target platform definition files in the workspace. So we can have a target platform file in each product, which only defines the required 3rd party plugins for that product.) 3) Eclipse automatically download the required plugins from P2 repo based on the target platform file. 4) open a *.product, run. Thanks, Xihui > -----Original Message----- > From: Kasemir, Kay > Sent: Tuesday, May 01, 2012 1:36 PM > To: Chen, Xihui; carcassi; Kunal Shroff; Matthias Clausen; takashi. > nakamoto > Cc: cs-studio-core > Subject: Re: CSS 3.2 planning, p2 repo for 3rd party libraries > > Hi: > > Right now you can > 1) clone the source repo, > 2) open a *.product, run. > > If JCA, CAJ, pvManager, channelfinder, mysql, derby, jython, ... move > into > a P2 repo, how would that then be used? > > > 1) Clone the source repo > 2) Source repo includes a "fetch_dependencies" script that installs > plugins for JCA, CAJ, ... from the P2 repo into the target platform > 3) Open a *.product, run. > > Is that the idea? > > > I'm not sure how such a "fetch_dependencies" script would work. > I can use the P2 director to install things from a P2 repo, > but I think that works for products and features, not individual > plugins. > So the 3rd party repo would also need to have a "dependencies" feature > to allow installation. > Otherwise, the "fetch_dependencies" script could basically be a > sequence of > 'wget > http://3rdparty.repo.somewhere.org/plugins/org.csstudio.libs.jca_1.2.3. > jar' > to directly fetch the plugins. > That would "work", but doesn't give you any dependency checking. > > Thanks, > Kay > > > > > > On 5/1/12 11:05 , "Chen, Xihui" <ch...@or...> wrote: > >Hi Gabriele, > > > >Right, if you want to test/integrate with different versions, P2 > >repository is definitely the best way to do that. In Orbit, you can > >select an old version of a 3rd party plugin for your target platform. > If > >we can have our own Orbit for CSS, that is definitely helpful. > > > >Thanks, > >Xihui > > > >> -----Original Message----- > >> From: Carcassi, Gabriele [mailto:car...@bn...] > >> Sent: Tuesday, May 01, 2012 10:56 AM > >> To: Chen, Xihui > >> Subject: RE: CSS 3.2 planning, p2 repo for 3rd party libraries > >> > >> Hi Xihui, > >> > >> Don't forget things like JCA, CAJ, pvManager, channelfinder API... > all > >> those things that are developed outside of CSS, released outside of > CSS, > >> and people may want to test/integrate with different versions. > That's > >> the main reason we would need the external p2 repository... > >> > >> Gabriele > >> > >> -----Original Message----- > >> From: Chen, Xihui [mailto:ch...@or...] > >> Sent: Monday, April 30, 2012 3:31 PM > >> To: Carcassi, Gabriele; Kasemir, Kay; Matthias Clausen; Shroff, > Kunal; > >> takashi. nakamoto > >> Cc: cs-studio-core; Utzel Nadine; Abadie Lana > >> Subject: RE: CSS 3.2 planning, p2 repo for 3rd party libraries > >> > >> Hi, > >> > >> Here is my short report about using p2 repo for 3rd party libraries > in > >> CSS after a brief looking at Eclipse Orbit project. > >> > >> Eclipse Orbit already included most of 3rd party plugins in CSS > >> repository, please see > >> > http://download.eclipse.org/tools/orbit/downloads/drops/R20120119162704 > >> / > >> > >> It is easy to use: > >> > http://wiki.eclipse.org/Orbit/FAQ#How_to_use_an_Orbit_bundle_in_your_Ta > >> rget_Platform > >> > >> It has source bundles for most of libraries and it is preconfigured > to > >> use the source bundles as Java source attachment, so you have the > >> source code out of box. > >> > >> Only few 3rd party plugins in CSS are missing in Orbit: > >> com.google.common > >> net.coobird.thumbnailator > >> org.apache.jackrabbit > >> org.apache.tools.ant > >> org.apache.tools.ant.junit > >> org.joda.time > >> org.python > >> > >> So my suggestion is that: Remove those plugins that already in Orbit. > >> Keep other 3rd party plugins as they were. When we move to Git, we > may > >> create a new git repository for them. I don't think it is necessary > to > >> create a p2 repo for rest of these 3rd party plugins because that > means: > >> somebody/site needs to build and maintain this p2 repo. An > additional > >> step to setup the development environment. > >> > >> Thanks, > >> Xihui |