Platform UI/Build Submission

From Eclipsepedia

Jump to: navigation, search

Last update: Aug 12/2009


Contents

How to do an Integration Build submission

The following describes how to do an integration build submission. The steps for doing a maintenance submission are mostly the same except for how you set up the workspace in the first place. See section at the end.


Prep

  1. It is best to keep an install/workspace around solely for the purpose of build submission. Take the latest milestone.
  2. Install releng tools into your eclipse install. See E4/Builds for pretty pictures of the releng tool.
    1. Go to Help>Install New Software
    2. Choose the Galileo release site or Eclipse Update site
      1. If the Releng tools are no longer compatible, use the I build site, http://download.eclipse.org/eclipse/updates/3.6-I-builds
    3. Install the Eclipse Releng Tools
  3. Note: to verify its installed, start up eclipse, pick a project and popup menu. You should see "Fix Copyrights..."

Steps

  1. Load contents from CVS
    1. Check Out four things:the three modules (they will be at the bottom) and the releng project
      1. Module platform-ui : Note: the projects org.eclipse.ui.carbon and org.eclipse.ui.cocoa will have errors if you are not on Carbon/Cocoa. At time of writing, org.eclipse.carbon generates 53 errors and org.eclipse.cocoa generates 41. You should have no other errors though. As well, org.eclipse.ui.win32 will have errors if you are not on Windows.
      2. Module platform-ui-tests
      3. Module platform-ui-examples
      4. Project org.eclipse.releng
  2. Run the test suites. To do this:
    1. "Close Project" org.eclipse.ui.carbon and org.eclipse.ui.cocoa if you are not on Carbon/Cocoa. If you are not on Windows, close org.eclipse.ui.win32. Verify you now have no compile errors.
    2. Open up Run->Run Configurations
    3. Under JUnit Plug-in Test, select each test in turn and run. You can't multi select, so each test is run on its own.
    4. Note: The UI Tests, JFace-All and RCP Test Suite require that the workbench have focus otherwise you will get false errors. Go get a coffee while running these since you can't use your machine.
  3. "Open Project" org.eclipse.ui.carbon and org.eclipse.ui.cocoa (and org.eclipse.ui.win32) if you closed them above.
  4. The act of running the tests will modify some of the test suite projects. Reload (Update and Override) them to clear the local changes.
  5. Select all the projects, pop up the menu and pick Team->Release...
  6. If the banner shows an error "Invalid map project selected" then select the project org.eclipse.releng. It has the maps in it.
  7. Leave selected "Use the default map project (org.eclipse.releng)". Click Next>.
  8. There will be a tree with three top level items all checked. Deselect the first two, leaving "ui.map" and its children selected. Click Next>.
  9. The next step takes some time while cvs info is checked.
  10. The next page will be "Changed Projects". Check the "Generate Build Notes" option at the bottom. Click Next>
  11. The system will be busy for a minute or two.
  12. You will see the "Notes for Build Changes" page. Select all the text and paste into your mailer. Later, use this text to send an email (see below).
  13. Check the "Update the Build Notes File" checkbox at the top, and fill in the build notes file field as "/org.eclipse.ui/buildnotes_workbench.html". Click Next>.
  14. Type in the build tag, which is I or M (for integration or maintenance) followed by the build date-time (not the current date/time, the one at which the build will be run). So for example, I20071127-0800. Copy the text you typed in as you'll need it next. Leave the other options as is. Click Next>.
  15. Enter the commit comment for the changed configuration file. Type "Submission for X-Y" where X-Y is the build date-time you entered for the tagging and copied.
  16. If you get errors about projects already being tagged with the build tag, go back and modify the build tag to make it different (i.e. place an "a" after it)
  17. Send an email to platform-ui-dev@eclipse.org with the text from above notifying of the build submission.
  18. For maintenance builds (towards the end), milestone week, or RC builds, send the same email to platform-releng-dev@eclipse.org so that everyone knows who contributed in the end game.

Milestone week

  1. During the milestone week, its important to announce on the platform-ui list, when the build submission will be done. It should be done more frequently (preferably daily)
  2. Monday's build will be the candidate for the milestone, so its important to tag for that build. Else, the changes won't be pushed in for the milestone

How to do an Maintenance Build submission

The steps are almost identical to the Integration build steps, except after you've checked everything into your workspace you need to:

  1. Change your target platform to the last relevant release like 3.5.0 or the last maintenance build
  2. When checking out the projects, check them out with a specific version, R3_5
  3. Create a working set with the projects in your workspace.
  4. Go to the repository explorer view and open the context menu on our repo, /cvsroot/eclipse
  5. Pick "Refresh Branchs" and refresh branches for all of the project in your workspace (working set works for me)
  6. For all of the projects that are now visible under the Branches>R3_5_maintenance branch, use replace to replace the ones in your workspace

The rest of the build submission (into the R3_5_maintenance branch of the releng project) should be the same as above, using a version tag that looks like M20090708-0800

Running the Tests

If you are too lazy to run the tests one by one, you can use the testRunner plugin to automate the task.

  1. Checkout org.eclipse.ui.incubator.testRunner plugin from the platform-incubator/ui/other module.
  2. Use PDE's Self Hosting to install the plugin in your Eclipse instance
  3. Select the Utils->Launch Tests menu item (Or just press Ctrl+5)
  4. Note, this will run *every* JUnit Plugin tests available in your launch configurations. So make sure you don't have any thing other than the default Platform UI test configuration in your workspace. If you have, its just going to take additional time
  5. Start your fav game in your XBox console and come back to your PC after an hour