Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mdt-papyrus.dev] Oomph model for Papyrus

Hi Christian,

 

I just tried Oomph with your model and managed to get an environment working.

I looks pretty cool and seems to offer a lot of opportunities but I ran into some issues :

 

1)      I got an exception with “Eclipse Modeling Tool” as main Product

ð  see OomphPapyrusFailedModelingCore.txt

2)      While following your video (except cloning the git repo) I got an OutOfBoundException

ð   see Oomph Installer_OutOfBoundException

3)      I tried to install only an extra-plugin (Moka) but I got a workspace with compilation problems                

ð  probably because we don’t have any papyrus product entry

 

I also have some remarks :

-          My first installation (without cloning the git repository) took 20/30 min (+15 min for “build all”)

ð  For a new guy hopping to contribute, it will take at least one hour to get the environment working.

-          Is it possible to have an official Papyrus product  on the wizard first page ?

-          I would prefer to split the Main project in sub projects : infra, uml, sysml…  

 

My main concern is for the thirds issue because it will be a normal use case : contributing to an extra  without coding in Papyrus main.

 

Regards,

Benoit

 

 

De : mdt-papyrus.dev-bounces@xxxxxxxxxxx [mailto:mdt-papyrus.dev-bounces@xxxxxxxxxxx] De la part de Christian W. Damus
Envoyé : lundi 7 juillet 2014 04:24
À : Papyrus Project list
Objet : [mdt-papyrus.dev] Oomph model for Papyrus

 

Hi, Team,

 

I have developed an initial Oomph model for Papyrus that provides a complete Eclipse IDE for working on the Papyrus sources. This model defines several projects:

  • Main - the main Papyrus sources. You should always import this Oomph project
  • Extras/* - the extra components sources. Import any of these Oomph projects only if you need to work on those extra components
  • Developer - the development-time code generation tools and debugging aids

 

that each have two different streams:

  • maintenance (Luna/1.0.x) - for SR1 development, until we branch it and master is taken over for Mars
  • master (Mars/1.1) - a sketch of what the Mars stream would look like once we have branched Luna maintenance and Papyrus’s dependencies have started publishing milestone builds towards Mars release

 

For now, the Luna maintenance stream is the default choice because that is the only active stream in the Papyrus repository (it actually is master) and the Mars stream isn’t actually functional because it guesses at what p2 repositories of project dependencies will be that don’t yet exist. Be sure, if you import both the main and extras Oomph projects, that you import the same stream of each.

So, when using this Oomph model to import Papyrus, you can only reasonably choose the Luna maintenance stream (which is the default selection).

Both of these streams are configured to perform the following setup tasks:

  • install various tools in the host workbench required for development of the Papyrus code, including:
    • Eclipse (of course)
    • EMF Ecore Tools for editing Ecore models
    • UML2 for editing UML models
    • Papyrus for editing our developer documentation models but also because the QVTo editor requires it for resolving Papyrus metamodels in the customization model generation transforms: QVTo doesn’t resolve these dependencies in the PDE target (as it should) but instead in the installed IDE
    • Mylyn for working with Git, Bugzilla, Gerrit, and Hudson builds
    • m2e for working with Maven POMs etc.
    • SWTBot for recording automated UI test cases
    • Oomph for running setup tasks
  • clone the Papyrus git repository into the location of your choice if it has not already been cloned
  • define a complete PDE target for all of the Papyrus codebase, including both main and “extra” plug-ins
    • features and plug-ins required by Papyrus
    • the latest Papyrus nightly build from the appropriate stream (so that you don’t have to have all of the Papyrus source projects open in your workspace)
  • import all of the currently active Papyrus main plug-in projects into the workspace from the git repository (and the extra components if you also imported any of those Oomph sub-projects)
  • Mylyn queries for:
    • Open bugs in bugzilla
    • Open enhancement requests in bugzilla
    • Resolved items in bugzilla
    • Bugzilla items that are flagged for review (the review? flag)
    • All open Gerrit reviews
    • Hudson builds:
      • Papyrus trunk nightly
      • Papyrus trunk nightly tests
      • Papyrus trunk extras nightly
      • Papyrus trunk extras nightly tests
  • working sets to organize all of the Papyrus main sources (and the extra components if you imported any of those Oomph sub-projects)
  • workspace-wide preferences, including:
    • the Papyrus code formatter profile
    • the Papyrus copyright header and possibly other templates
    • J2SE 1.6 compliance for compilation

 

You can see a short(ish) video of this Oomph model in action, here:

 

 

and you can try it out for yourself by running the Oomph installer on the setup model in the new org.eclipse.papyrus.oomph project in Git master:

 

releng/org.eclipse.papyrus.oomph/setups/papyrus.setup

 

If you have any feed-back or suggestions of content to change or add in this model, please comment on the bugzilla:  

 

 

When we deem this model sufficiently ready for the community at large to start using it to provision their workbenches for contributing to Papyrus, then I'll work with the Oomph team to add it to the official project catalogue.

 

Thanks,

 

Christian

 

 

 

[15:21:12] Executing bootstrap tasks
[15:21:12] Bundle org.eclipse.oomph.setup 1.0.0.v20140703-1143, build=240, branch=master, commit=ba4bc1dc820821bd228b1e8922952fade4b0fd39
[15:21:12] Bundle org.eclipse.oomph.setup.core 1.0.0.v20140703-1143, build=240, branch=master, commit=ba4bc1dc820821bd228b1e8922952fade4b0fd39
[15:21:12] Bundle org.eclipse.oomph.setup.installer 1.0.0.v20140703-1143, build=240, branch=master, commit=ba4bc1dc820821bd228b1e8922952fade4b0fd39
[15:21:12] Bundle org.eclipse.oomph.setup.p2 1.0.0.v20140703-1154, build=240, branch=master, commit=ba4bc1dc820821bd228b1e8922952fade4b0fd39
[15:21:12] Performing setup task Workspace workspace
[15:21:12] Performing setup task P2 Director
[15:21:12] Resolving 31 requirements from 8 repositories to C:\Eclipses\testOO6\eclipse
[15:21:12] Requirement org.eclipse.pde.api.tools.ee.feature.feature.group
[15:21:12] Requirement org.eclipse.emf.ecoretools.sdk.feature.group [1.0.0,2.0.0)
[15:21:12] Requirement org.eclipse.mylyn.ide_feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn.java_feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn.pde_feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn.team_feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn.gerrit.feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn_feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn.bugzilla_feature.feature.group
[15:21:12] Requirement org.eclipse.mylyn.git.feature.group
[15:21:12] Requirement org.eclipse.mylyn.hudson.feature.group
[15:21:12] Requirement org.eclipse.egit.feature.group
[15:21:12] Requirement org.eclipse.egit.mylyn.feature.group
[15:21:12] Requirement org.eclipse.buckminster.core.feature.feature.group
[15:21:12] Requirement org.eclipse.buckminster.git.feature.feature.group
[15:21:12] Requirement org.eclipse.buckminster.pde.feature.feature.group
[15:21:12] Requirement org.eclipse.swtbot.ide.feature.group
[15:21:12] Requirement org.eclipse.swtbot.generator.feature.feature.group
[15:21:12] Requirement org.eclipse.m2e.feature.feature.group
[15:21:12] Requirement org.eclipse.papyrus.oomph.patch.feature.feature.group
[15:21:12] Requirement epp.package.modeling [4.4.0,4.5.0)
[15:21:12] Requirement org.eclipse.oomph.setup.feature.group
[15:21:12] Requirement org.eclipse.oomph.setup.jdt.feature.group
[15:21:12] Requirement org.eclipse.oomph.setup.git.feature.group
[15:21:12] Requirement org.eclipse.oomph.targlets.feature.group
[15:21:12] Requirement org.eclipse.oomph.setup.targlets.feature.group
[15:21:12] Requirement org.eclipse.oomph.setup.projects.feature.group
[15:21:12] Requirement org.eclipse.oomph.setup.workingsets.feature.group
[15:21:12] Requirement org.eclipse.oomph.setup.mylyn.feature.group
[15:21:12] Requirement org.eclipse.mylyn.tasks.core
[15:21:12] Requirement org.eclipse.mylyn.tasks.ui
[15:21:12] Repository http://download.eclipse.org/tools/buckminster/updates-4.4
[15:21:12] Repository http://download.eclipse.org/modeling/emft/ecoretools/updates/1.2/201306071421
[15:21:12] Repository http://download.eclipse.org/technology/swtbot/snapshots
[15:21:12] Repository http://download.eclipse.org/releases/luna
[15:21:12] Repository http://git.eclipse.org/c/papyrus/org.eclipse.papyrus.git/plain/releng/org.eclipse.papyrus.oomph/patch/papyrus-oomph-patch/1.0.0/
[15:21:12] Repository http://download.eclipse.org/technology/epp/packages/luna
[15:21:12] Repository http://download.eclipse.org/oomph/updates
[15:21:12] Repository http://download.eclipse.org/egit/updates
[15:21:13] Adding repository http://download.eclipse.org/tools/buckminster/updates-4.4
[15:21:16] Adding repository http://download.eclipse.org/modeling/emft/ecoretools/updates/1.2/201306071421
[15:21:17] Adding repository http://download.eclipse.org/technology/swtbot/snapshots
[15:21:18] Fetching p2.index from http://download.eclipse.org/releases/luna/
[15:21:18] Adding repository http://download.eclipse.org/releases/luna
[15:21:18] Fetching p2.index from http://download.eclipse.org/releases/luna/201406250900/
[15:21:21] Adding repository http://git.eclipse.org/c/papyrus/org.eclipse.papyrus.git/plain/releng/org.eclipse.papyrus.oomph/patch/papyrus-oomph-patch/1.0.0/
[15:21:22] Fetching content.jar from http://git.eclipse.org/c/papyrus/org.eclipse.papyrus.git/plain/releng/org.eclipse.papyrus.oomph/patch/papyrus-oomph-patch/1.0.0/
[15:21:22] Adding repository http://download.eclipse.org/oomph/updates
[15:21:23] Adding repository http://download.eclipse.org/egit/updates
[15:21:23] Calculating requirements and dependencies.
[15:21:24] Cannot complete the request.  Generating details.
[15:21:24] ERROR: org.eclipse.equinox.p2.director code=10054 Cannot complete the install because of a conflicting dependency.
  at org.eclipse.oomph.util.AbstractOomphPlugin.coreException(AbstractOomphPlugin.java:152)
  at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.resolve(ProfileTransactionImpl.java:369)
  at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.commit(ProfileTransactionImpl.java:324)
  at org.eclipse.oomph.setup.p2.impl.P2TaskImpl.perform(P2TaskImpl.java:680)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:2327)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:2283)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:2273)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:2215)
  at org.eclipse.oomph.setup.ui.wizards.ProgressPage$7.run(ProgressPage.java:358)
  at org.eclipse.oomph.setup.ui.wizards.ProgressPage$9$1.run(ProgressPage.java:435)
  at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
  ERROR: org.eclipse.equinox.p2.director code=0 Software being installed: Eclipse Modeling Tools 4.4.0.20140612-0500 (epp.package.modeling 4.4.0.20140612-0500)
  ERROR: org.eclipse.equinox.p2.director code=0 Software being installed: Diagram Editor for Ecore (SDK) 1.2.0.201306071421 (org.eclipse.emf.ecoretools.sdk.feature.group 1.2.0.201306071421)
  ERROR: org.eclipse.equinox.p2.director code=1 Only one of the following can be installed at once: 
    ERROR: org.eclipse.equinox.p2.director code=0 Ecore Tools Documentation 2.0.0.201406112035 (org.eclipse.emf.ecoretools.doc 2.0.0.201406112035)
    ERROR: org.eclipse.equinox.p2.director code=0 Ecore Tools Documentation 1.2.0.201306071421 (org.eclipse.emf.ecoretools.doc 1.2.0.201306071421)
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: Eclipse Modeling Tools 4.4.0.20140612-0500 (epp.package.modeling 4.4.0.20140612-0500)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.epp.package.modeling.feature.feature.group [4.4.0.20140612-0500]
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: Ecore Diagram Editor 2.0.0.201406112035 (org.eclipse.emf.ecoretools.design.feature.group 2.0.0.201406112035)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.emf.ecoretools.doc [2.0.0.201406112035]
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: Diagram Editor for Ecore (SDK) 1.2.0.201306071421 (org.eclipse.emf.ecoretools.sdk.feature.group 1.2.0.201306071421)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.emf.ecoretools.doc [1.2.0.201306071421]
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: EPP Modeling Feature 4.4.0.20140612-0500 (org.eclipse.epp.package.modeling.feature.feature.group 4.4.0.20140612-0500)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.emf.ecoretools.design.feature.group [2.0.0,3.0.0)

[15:21:24] ERROR: org.eclipse.equinox.p2.director code=10054 Cannot complete the install because of a conflicting dependency.
  at org.eclipse.oomph.util.AbstractOomphPlugin.coreException(AbstractOomphPlugin.java:152)
  at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.resolve(ProfileTransactionImpl.java:369)
  at org.eclipse.oomph.p2.internal.core.ProfileTransactionImpl.commit(ProfileTransactionImpl.java:324)
  at org.eclipse.oomph.setup.p2.impl.P2TaskImpl.perform(P2TaskImpl.java:680)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:2327)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:2283)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:2273)
  at org.eclipse.oomph.internal.setup.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:2215)
  at org.eclipse.oomph.setup.ui.wizards.ProgressPage$7.run(ProgressPage.java:358)
  at org.eclipse.oomph.setup.ui.wizards.ProgressPage$9$1.run(ProgressPage.java:435)
  at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
  ERROR: org.eclipse.equinox.p2.director code=0 Software being installed: Eclipse Modeling Tools 4.4.0.20140612-0500 (epp.package.modeling 4.4.0.20140612-0500)
  ERROR: org.eclipse.equinox.p2.director code=0 Software being installed: Diagram Editor for Ecore (SDK) 1.2.0.201306071421 (org.eclipse.emf.ecoretools.sdk.feature.group 1.2.0.201306071421)
  ERROR: org.eclipse.equinox.p2.director code=1 Only one of the following can be installed at once: 
    ERROR: org.eclipse.equinox.p2.director code=0 Ecore Tools Documentation 2.0.0.201406112035 (org.eclipse.emf.ecoretools.doc 2.0.0.201406112035)
    ERROR: org.eclipse.equinox.p2.director code=0 Ecore Tools Documentation 1.2.0.201306071421 (org.eclipse.emf.ecoretools.doc 1.2.0.201306071421)
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: Eclipse Modeling Tools 4.4.0.20140612-0500 (epp.package.modeling 4.4.0.20140612-0500)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.epp.package.modeling.feature.feature.group [4.4.0.20140612-0500]
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: Ecore Diagram Editor 2.0.0.201406112035 (org.eclipse.emf.ecoretools.design.feature.group 2.0.0.201406112035)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.emf.ecoretools.doc [2.0.0.201406112035]
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: Diagram Editor for Ecore (SDK) 1.2.0.201306071421 (org.eclipse.emf.ecoretools.sdk.feature.group 1.2.0.201306071421)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.emf.ecoretools.doc [1.2.0.201306071421]
  ERROR: org.eclipse.equinox.p2.director code=1 Cannot satisfy dependency:
    ERROR: org.eclipse.equinox.p2.director code=0 From: EPP Modeling Feature 4.4.0.20140612-0500 (org.eclipse.epp.package.modeling.feature.feature.group 4.4.0.20140612-0500)
    ERROR: org.eclipse.equinox.p2.director code=0 To: org.eclipse.emf.ecoretools.design.feature.group [2.0.0,3.0.0)

[15:21:24] Took 11 seconds.
[15:21:24] Press Finish to close the dialog.

Attachment: Oomph Installer_OutOfBoundException.png
Description: Oomph Installer_OutOfBoundException.png


Back to the top