Jump to: navigation, search

Difference between revisions of "Equinox/p2/Admin UI Users Guide"

< Equinox‎ | p2
 
(11 intermediate revisions by 4 users not shown)
Line 2: Line 2:
  
 
== About the Eclipse Provisioning RCP Agent ==
 
== About the Eclipse Provisioning RCP Agent ==
* Once you've downloaded and unzipped the Eclipse Provisioning RCP agent, launch the eclipse.exe program located in c:\equinox.prov and you should see something like this:
+
The Eclipse Provisioning RCP agent, also known as the "Admin UI" is used by the p2 team to try out function and configure profiles. This application will unlikely be delivered as is and is definitely not what regular users will experience to install eclipse software.
[[Image:RCPAgent.jpg]]
+
 
* In general, the [[Equinox p2 Concepts | agent]] RCP application allows you to add, remove, and browse the provisioning repositories, and install, uninstall, and update the software in various [[Equinox p2 Concepts | profiles]].  It exercises the Equinox Provisioning framework.
+
  [[Image:RCPAgent.jpg]]
* For M2, our goal is to use the agent to provision an Eclipse SDK and add the provisioning update UI, so that you can then run and update an Eclipse 3.3.x SDK
+
 
* The agent application itself is structured on top of the provisioning framework, so you can (purposefully or inadvertantly) modify the agent application by manipulating its profile within the application.
+
 
* The UI for the RCP app is simply a browsing interface into the provisioning API.  It does not represent what we think actual user workflows for installing or updating an Eclipse-based application would be.   
+
It is also the tool we distribute for doing an initial install of an Eclipse SDK using p2.  To follow step by step instructions for downloading the agent and using it to install an SDK, see [[Equinox p2 Getting Started]].
* The workflow we are trying to demonstrate is very narrow, yet the UI is more flexible in manipulating the environment.  Failures are brittle (vague error reporting that requires you to check your .log file).
+
 
* The UI described below can also be run from a full Eclipse SDK workbench.  You can open the '''Provisioning''' perspective to see the same functionality.
+
== Things to know ==
 +
* The Admin UI in the RCP agent is simply a browsing interface into the provisioning API.  It does not represent what we think actual user workflows for installing or updating an Eclipse-based application would be.  See [[Equinox p2 Update UI Users Guide]] for information on the end-user update UI.
 +
* The Admin UI is very flexible in manipulating the environment, sometimes moreso than the underlying infrastructure supports.  Failures can be confusing (error reporting that requires you to check your .log file, read stack traces, or understand the innards of the provisioning engine).
 +
* The UI described below can also be run from a full Eclipse SDK workbench.  You can open the '''Provisioning''' perspective to see the same functionality that you see in the downloaded agent.
  
 
== Overview of the Eclipse Provisioning RCP Agent ==
 
== Overview of the Eclipse Provisioning RCP Agent ==
Line 16: Line 19:
 
**:[[Image:metadatarepo.jpg]]
 
**:[[Image:metadatarepo.jpg]]
 
***The provisioning code uses local metadata repositories to store information about your environment.  In general, these repositories are not shown, but you can control this using a preference on the provisioning preference page.
 
***The provisioning code uses local metadata repositories to store information about your environment.  In general, these repositories are not shown, but you can control this using a preference on the provisioning preference page.
***The repository of interest is the repository located on eclipse.org (http://download.eclipse.org/eclipse/equinox/provisioning/metadata/).
+
***The repositories may be remote (such as those provided on eclipse.org), local (those generated using the p2 metadata generator), or archived (zips or jars made available on various sites).
 
***You may add or remove repositories using this view.
 
***You may add or remove repositories using this view.
 
***Expanding a metadata repository will show you the [[Equinox p2 Concepts | installable units]](IU's) available for installing.
 
***Expanding a metadata repository will show you the [[Equinox p2 Concepts | installable units]](IU's) available for installing.
Line 23: Line 26:
 
** The '''Artifact Repositories''' view shows those [[Equinox p2 Concepts | artifact]] repositories known by the provisioning infrastructure.
 
** The '''Artifact Repositories''' view shows those [[Equinox p2 Concepts | artifact]] repositories known by the provisioning infrastructure.
 
**:[[Image:ArtifactRepo.jpg]]
 
**:[[Image:ArtifactRepo.jpg]]
***The repository of interest is the repository located on eclipse.org (http://download.eclipse.org/eclipse/equinox/provisioning/artifacts/artifacts.xml).
+
***Like metadata repositories, artifact repositories may be remote, local, or zipped.
 
***You may add or remove repositories using this view.
 
***You may add or remove repositories using this view.
 
***Expanding an artifact repository will show you what artifacts are located there
 
***Expanding an artifact repository will show you what artifacts are located there
 
***You may examine the properties of the repository
 
***You may examine the properties of the repository
***You can't examine the properties of the artifacts or otherwise manipulate them (yet)
+
***Expanding an artifact will show you its descriptor
 
** The '''Profiles''' view shows profiles defined for installing software.  [[Equinox p2 Concepts | Profiles]] are the target of an install operation.
 
** The '''Profiles''' view shows profiles defined for installing software.  [[Equinox p2 Concepts | Profiles]] are the target of an install operation.
 
**:[[Image:Profiles.jpg]]
 
**:[[Image:Profiles.jpg]]
Line 36: Line 39:
 
***You may uninstall an IU from a profile using the popup menu.
 
***You may uninstall an IU from a profile using the popup menu.
 
***You may check for updates that may be available for an IU using the popup menu.
 
***You may check for updates that may be available for an IU using the popup menu.
* The '''Window>Preferences...''' menu item lets you control some application preferences:
+
* The '''Provisioning''' preference page lets you control some application preferences:
** You can control whether drag and drop operations should be confirmed first
+
**:[[Image:P2Preferences.jpg]]
** You can control whether you view all IU's in the repositories and profiles, or just those that have been marked as a "group" IU.  Viewing only the groups helps to reduce the clutter when you are trying to find something to install like the SDK.
+
*** You can control whether you view all IU's in the repositories and profiles, or just those that have been marked as a "group" IU.  Viewing only the groups helps to reduce the clutter when you are trying to find something to install like the SDK.
** You can control whether internal/implementation repositories should be shown in your repositories views.
+
*** You can control whether internal/implementation repositories should be shown in your repositories views.
 
+
== Installing the Eclipse 3.3 SDK using the Provisioning RCP Agent ==
+
* Define a profile representing your Eclipse SDK install
+
** From the profile view's local menu, toolbar, or popup menu, choose '''Add Profile...'''
+
**:[[Image:NewProfile.jpg]]
+
** Choose a unique id for your profile, such as "Eclipse SDK".
+
** You may optionally define a name and description to further describe your profile
+
** Choose an install folder for the profile (this is where the SDK will be installed).
+
** It is important to keep the defaults for the other values, or the install may fail with little explanation
+
** When you have pressed '''OK''' you should see the new profile in the view
+
* Locate the '''sdk''' IU in the eclipse metadata repository
+
*:[[Image:SDKInMetaRepo.jpg]]
+
* You may install the sdk in several ways by selecting the IU and dragging it to your newly created profile.  You can also select the IU and choose '''Install...''' from the popup menu.  You will be prompted for a target profile.
+
* You should see a progress indicator that reports the progress of the install.  In some phases, progress reporting is very sparse.  You may see some long pauses without progress.
+
* When it is finished, you have a full Eclipse SDK located in the install folder of your profile.
+
 
+
== Running the Admin UI from Eclipse ==
+
You can run a full-featured version of the provisioning admin UI from an Eclipse SDK Workbench.  [[Equinox p2 Getting Started for Developers]] explains how to set up your Eclipse environment to run the provisioning code.
+
Some additional function is available when running the UI from an SDK:
+
* Undo support is available from the '''Edit''' menu when working in the various views.  The undo support is not (yet) using rollback or operation history kept by the provisioning infrastructure.  It is implemented at the UI level (undo of an install performs an uninstall, undo of an add performs a remove, etc.)
+
  
 
== Cool stuff you can try ==
 
== Cool stuff you can try ==
* If you install the SDK into the agent profile ('''EquinoxProvisioningUI'''), then the next time you launch the rcp app, you'll actually be running the Eclipse SDK with the Provisioning Perspective.
+
* [[Image:P2-admin-ui-in-Ganymede.png|thumb|right]] If you install the SDK into the agent profile ('''EquinoxProvisioningUI'''), then the next time you launch the rcp app, you'll actually be running the Eclipse SDK with the Provisioning Perspective. See also [[Starting_Eclipse_Commandline_With_Equinox_Launcher/p2_Admin_UI#Admin_UI_Eclipse_Perspective|Admin UI Eclipse Perspective]].
  
 
== For more information ==
 
== For more information ==
Line 70: Line 53:
 
* See [[Equinox p2 User Interface]]
 
* See [[Equinox p2 User Interface]]
  
[[Category:Equinox|Provisioning]]
+
[[Category:Equinox p2|Admin UI Users Guide]]
[[Category:Provisioning|Admin UI]]
+

Latest revision as of 15:28, 3 January 2011

About the Eclipse Provisioning RCP Agent

The Eclipse Provisioning RCP agent, also known as the "Admin UI" is used by the p2 team to try out function and configure profiles. This application will unlikely be delivered as is and is definitely not what regular users will experience to install eclipse software.

  RCPAgent.jpg


It is also the tool we distribute for doing an initial install of an Eclipse SDK using p2. To follow step by step instructions for downloading the agent and using it to install an SDK, see Equinox p2 Getting Started.

Things to know

  • The Admin UI in the RCP agent is simply a browsing interface into the provisioning API. It does not represent what we think actual user workflows for installing or updating an Eclipse-based application would be. See Equinox p2 Update UI Users Guide for information on the end-user update UI.
  • The Admin UI is very flexible in manipulating the environment, sometimes moreso than the underlying infrastructure supports. Failures can be confusing (error reporting that requires you to check your .log file, read stack traces, or understand the innards of the provisioning engine).
  • The UI described below can also be run from a full Eclipse SDK workbench. You can open the Provisioning perspective to see the same functionality that you see in the downloaded agent.

Overview of the Eclipse Provisioning RCP Agent

  • The RCP app is comprised of three views:
    • The Metadata Repositories view shows those metadata repositories known by the provisioning infrastructure.
      Metadatarepo.jpg
      • The provisioning code uses local metadata repositories to store information about your environment. In general, these repositories are not shown, but you can control this using a preference on the provisioning preference page.
      • The repositories may be remote (such as those provided on eclipse.org), local (those generated using the p2 metadata generator), or archived (zips or jars made available on various sites).
      • You may add or remove repositories using this view.
      • Expanding a metadata repository will show you the installable units(IU's) available for installing.
      • You may examine the properties of repositories or IU's
      • You may install an IU to a specified profile using drag and drop or the popup menu.
    • The Artifact Repositories view shows those artifact repositories known by the provisioning infrastructure.
      ArtifactRepo.jpg
      • Like metadata repositories, artifact repositories may be remote, local, or zipped.
      • You may add or remove repositories using this view.
      • Expanding an artifact repository will show you what artifacts are located there
      • You may examine the properties of the repository
      • Expanding an artifact will show you its descriptor
    • The Profiles view shows profiles defined for installing software. Profiles are the target of an install operation.
      Profiles.jpg
      • The EquinoxProvisioningUI profile represents the agent application itself. It contains the IU's (bundles) that comprise the RCP app.
      • You may add or remove profiles using this view.
      • Expanding a profile shows you what IU's have been installed in the profile.
      • You may examine and change the properties of profiles and IU's.
      • You may uninstall an IU from a profile using the popup menu.
      • You may check for updates that may be available for an IU using the popup menu.
  • The Provisioning preference page lets you control some application preferences:
    • P2Preferences.jpg
      • You can control whether you view all IU's in the repositories and profiles, or just those that have been marked as a "group" IU. Viewing only the groups helps to reduce the clutter when you are trying to find something to install like the SDK.
      • You can control whether internal/implementation repositories should be shown in your repositories views.

Cool stuff you can try

  • P2-admin-ui-in-Ganymede.png
    If you install the SDK into the agent profile (EquinoxProvisioningUI), then the next time you launch the rcp app, you'll actually be running the Eclipse SDK with the Provisioning Perspective. See also Admin UI Eclipse Perspective.

For more information

If you encounter bugs, or would like to enter enhancement requests for this work, please use the Equinox Incubator category in Bugzilla. You can add the prefix "[prov]" to the subject line of the bug report to help us with bug triage.