Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Oomph » Adding new plugins to the "master" .setup file => no propagation on installed instances
Adding new plugins to the "master" .setup file => no propagation on installed instances [message #1841010] Fri, 30 April 2021 12:20 Go to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
Hi,

I have successfully used OOMPH to manage the deployment of eclipse in my team. A very handy feature is the fact that we define new preferences in the "master" .setup file (that was used for installation, hosted on a Git repo), and when an Eclipse instance starts, it syncs with the .setup file, and the new preferences are applied / propagated.

A use case that doesn't work (although I remember I have validated it years ago) is the scenario where we add new features/plugins in the "master" .setup file. So let's say that I installed the eclipse w/ this file:

index.php/fa/40429/0/

If I modify the .setup file by adding these 4 "P2 Director" tasks (cf. image below):

index.php/fa/40430/0/

Then when I restart Eclipse, it doesn't download the new plugins.

Am I mistaking when I say that this scenario should have worked?

Best regards,
Cristian
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841014 is a reply to message #1841010] Fri, 30 April 2021 13:06 Go to previous messageGo to next message
Eike Stepper is currently offline Eike StepperFriend
Messages: 6690
Registered: July 2009
Senior Member
The problem may be that the following preference is not set to ALWAYS:

index.php/fa/40431/0/



Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841021 is a reply to message #1841014] Fri, 30 April 2021 15:10 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
Thanks Eike.

I tried with this setting set to "Always". Same result. The changes related to the plugins are not taken into account. Before was "Prompt". But I guess that even w/ "Prompt" it should have worked. I recall having seen this dialog in the past.

Regards,
Cristian.
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841023 is a reply to message #1841021] Fri, 30 April 2021 15:50 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33254
Registered: July 2009
Senior Member
Normally the requirements are processed to consider if they are satisfied by what's current installed:

https://git.eclipse.org/c/oomph/org.eclipse.oomph.git/tree/plugins/org.eclipse.oomph.setup.p2/src/org/eclipse/oomph/setup/p2/impl/P2TaskImpl.java#n659

If there is no prompt, then everything that must be installed is already installed, though perhaps an older version of it (or the user has asked not to be informed). You can "force" updates more strictly by specifying stricter version ranges on the requirements .


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841027 is a reply to message #1841023] Fri, 30 April 2021 19:21 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
Ed: thanks for the pointer in the code.

The program doesn't enter this breakpoint.

index.php/fa/40434/0/

Looking at the "call hierarchy" shows me:

index.php/fa/40435/0/

So, for example it should call from here.

index.php/fa/40436/0/

But, I see for example an "InstallationTask" being invoked. Not a P2Task.

Do you have some other interesting locations where I could put a breakpoint and see what's happeneing?

Regards,
Cristian.
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841028 is a reply to message #1841027] Fri, 30 April 2021 19:30 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
I pressed "send" too early. I wanted to show this as well:

index.php/fa/40437/0/

As the "InstallationTask" seems to be "commented out":

index.php/fa/40438/0/

=> In my opinion the issue starts more "at the root".
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841029 is a reply to message #1841028] Fri, 30 April 2021 20:21 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
I have created a new .setup file, based on Eclipse 2021-03. Until now, I was working with one based on 2020-12. And it works.

I don't know if there is a bug in or not in Eclipse 2020-12, or not, but for sure, with the attached "product" / .setup file, the problem that I'm describing here: it does reproduce. I.e. after adding new plugins, they are NOT propagated to already installed Eclipse instances.

I confirm this both on a recent install (Eclipse 2012-12 + oomph 1.20) and for the other installs, that are a couple of months older (Eclipse 2020-12 + oomph 1.19). This difference comes from the fact that the update site for OOMPH is not "carved in stone" (like the other ones):

index.php/fa/40440/0/

Regards,
Cristian.
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841035 is a reply to message #1841029] Sat, 01 May 2021 06:26 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33254
Registered: July 2009
Senior Member
I just tested now and this works for me with all the latest everything.

Your comment about the breakpoint not being hit implies there is no p2 task in your list. Showing the Installation Task, which never actually needs to run, doesn't say anything about what's happening with your p2 task(s). Each task is tested.

If you manually do Perform Setup Tasks, you should see your p2 tasks. They should be up-to-date; perhaps they're not and that's why you see the behavior you see. If you see them they will definitely have been tested for isNeeded...


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841037 is a reply to message #1841035] Sat, 01 May 2021 07:26 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
Ed:
Quote:
I just tested now and this works for me with all the latest everything.


You mean: you tested with the file that is attached? Or with some other setup?

For me, with the attached file I can reproduce the problem. I reattached the file, and in fact split them into 2 files: v1.setup, v2.setup.

First I start the installer:

eclipse-inst-jre-win64.exe -vmargs -Duser.home=d:\temp\exp-eclipse\home -Doomph.setup.user.home.redirect=true


And I add the v1.setup file:

index.php/fa/40442/0/

We can observe the "p2" task containing only "Eclipse IDE..." + JRE ...".

index.php/fa/40443/0/

And then I modify the .setup file. I.e. like the v2.setup file. It contains 4 new plugins/p2 tasks:

index.php/fa/40444/0/

I start again the newly installed eclipse. And it DOESN'T execute the 4 new P2 tasks. From within the target eclipse I open the source .setup file, and the entries are "seen".

index.php/fa/40445/0/

Is it a bug w/ 2020-12? Or is there something that I'm doing wrong? And again: after modifying the .setup file to use the latest eclipse, 2021-03 => the mechanism functions correctly,

Regards,
Cristian
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841038 is a reply to message #1841037] Sat, 01 May 2021 07:28 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
And the 2 files (because the previous post had already too much attachments / images).
  • Attachment: v1.setup
    (Size: 76.23KB, Downloaded 79 times)
  • Attachment: v2.setup
    (Size: 77.86KB, Downloaded 85 times)
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841040 is a reply to message #1841038] Sat, 01 May 2021 09:03 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33254
Registered: July 2009
Senior Member
I tried yours and the problem is subtle. As you no doubt noticed, all the p2 tasks are merged into one. But the p2 task for the product version is set to trigger only for BOOTSTRAP; you need to unfilter the advanced properties to see that.. When the other p2 tasks are merged with this task, the final merged task is also only triggered for bootstrap. Hence there is no p2 task trigger on startup nor manual. Perhaps the merging behavior should consider the triggers differently... Is there a reason for specifying startup only?

Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841042 is a reply to message #1841040] Sat, 01 May 2021 15:18 Go to previous messageGo to next message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
Thanks Ed.

It's clear now. And I found a new notion. The property "Triggers". I wasn't aware of it.
It wasn't me who set it to "BOOTSTRAP". It came when I copied the "Product" from the Installer (in order to make my own .setup file).

I understand that the correct setting is: "BOOTSTRAP STARTUP MANUAL". Right?

And I understand that "Bootstrap" doesn't mean when Eclipse boots. But it means the initial setup process, which happens only once. Correct?

Thanks a lot for your help.

Regards,
Cristian.

Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841043 is a reply to message #1841042] Sat, 01 May 2021 16:07 Go to previous messageGo to next message
Ed Merks is currently offline Ed MerksFriend
Messages: 33254
Registered: July 2009
Senior Member
Hmm, certainly the setting you have is not the default and not is that way in the generated catalog.

Yes, typically you want a p2 task to perform at BOOTSTRAP (in the installer when first creating the installation), at IDE STARTUP , and when you MANUAL Perform Setup Tasks.


Ed Merks
Professional Support: https://www.macromodeling.com/
Re: Adding new plugins to the "master" .setup file => no propagation on installed insta [message #1841046 is a reply to message #1841043] Sat, 01 May 2021 17:37 Go to previous message
Cristian Spiescu is currently offline Cristian SpiescuFriend
Messages: 100
Registered: July 2009
Senior Member
Quote:
Hmm, certainly the setting you have is not the default and not is that way in the generated catalog.


Not quite. I think I solved the mistery. I just discovered that the setting is "BOOTSTRAP" for the configurations that also contain a JRE:

index.php/fa/40452/0/

Thanks a lot Ed!

Regards,
Cristian
Previous Topic:JRE Task Default VM Arguments
Next Topic:Cannot complete the install-one required item could not be found, but shown in Repository Explorer
Goto Forum:
  


Current Time: Wed Nov 13 11:21:49 GMT 2024

Powered by FUDForum. Page generated in 0.04354 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top