About the Eclipse Provisioning RCP Agent

If you have not yet downloaded the Eclipse Provisioning RCP agent, see Getting started with M1. You will need to unzip the agent application into the root of your C:\ drive. (This will get more flexible later). Launch the eclipse.exe program located in c:\equinox.prov and you should see something like this:

In general, the agent RCP application allows you to add, remove, and browse the provisioning repositories, and install and uninstall software into various profiles. It exercises the Equinox Provisioning framework.

For M1, our goal is to demonstrate that you can use the agent to install (and uninstall) an Eclipse 3.3 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. We'll focus on that later on. In other words, it is not intended to replace the Eclipse Update Manager UI. For background, see [https://bugs.eclipse.org/bugs/show_bug.cgi?id=197405 Bug 197405)

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.

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.

You can (and should) ignore those repositories located in your c:/equinox.prov directory. Those are the repositories containing the RCP agent application.

Expanding an artifact repository will show you what artifacts are located there

You may examine the properties of the repository

You can't examine the properties of the artifacts or otherwise manipulate them (yet)

The Profiles view shows profiles defined for installing software. Profiles are the target of an install operation.

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.

The Window>Preferences... menu item lets you control some application preferences:

You can control whether drag and drop operations should be confirmed first

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 like the SDK.

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...

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

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 Provisioning 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

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.