Jump to: navigation, search

Build Workshop 3: Build Hard With A Purpose/Requirements

< Build Workshop 3: Build Hard With A Purpose
Revision as of 15:06, 22 October 2008 by Codeslave.ca.ibm.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Legend:

[x] - available in Dash or Modeling build already in some form [M?] - tentatively slated for a given milestone [] - not schedule / TBD

Requirements

  • [x] support CVS
  • [x] web UI
  • [x] crontab scheduling: N schedule, I schedule
  • [x] cvs listening: tag sources & update map(s) then release changes then build automatically
  • [x] build from tag
  • [x] build from map
  • [x] running JUnits: one machine only, with UI testing
  • [x] signing, packing, p2 metadata
  • [x] build from pre-checked-out sources on disk
     baselocation - dropins, binaries
     builddirectory - sources
     pluginPath - more sources
  • [M1] set policy for use of SDK when building; default to milestones; optionally build from I
  • [M1] put class libraries from Java 1.0 - 7.0, CDC, Foundation, ... on build.eclipse.org
  • [M1] minimal duplication of build metadata: collapse .releng into 1 user.properties file w/ generic buildAll.xml & preset defaults properties file (overridden by user via web UI or user.properties)
 featureID to build -- org.eclipse.foo.all.feature
 dependencies - add to packager map file (  see: pde_packager.htm)
 map(s) [with cvs location & branch] or prechecked sources
 rewrite buildAll.xml & customTargets.xml to use 3.4 standards (less code)
 portal would include a field to point to /path/in/cvs/ for .releng project (includes .properties, buildExtra.xml, .product, ...)
 packing excludes
 
  • [] queuing (Hudson?) / nice'ing
  • [] cleanup of old/dead builds
  • [] use SDK 3.5M3 instead of basebuilder RC2_34
  • [] support SVN
  • [] better crontab UI: cruise control?
  • [] build from HEAD -- use fetchTag=HEAD, forceContextQualifier=${buildID}
  • [] zips of sources + .releng project used for building: for Linux distros and Legal codescan purposes
  • [] build from pre-built source zip
  • [Enh] running JUnits on a remote machine / alternative platforms
  • [M8] run w/ head in workspace (build locally)
  • [M8] standalone buildserver-in-a-box (vmware/vbox/qemu/kvm)
  • [M9] produce packaging.map for each build, then centralize those for reuse by other projects?