Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Common Build Infrastructure/Athena Progress Report
Contents
This week
2009-07-09
- Several non-Eclipse.org build examples are available, including maps and generated psfs (using map2psf build.step):
2009-06-05
- bug 272991 Documented generating custom update site categories and hiding unwanted features.
- bug 279056 Added support for excluding some jars from packing or signing; solved issue w/ VE's "corrupt" uninstallable jars.
- bug 278687 Added a new optional build.step for generating Project Set Files (.psf) from PDE .map files.
2009-05-26
- Documented p2 repo and SDK zip input options.
- buildExtra.xml and testExtra.xml are now optional; by default all zips will be unpacked, all repos+features will be installed w/o explicitly needing to direct the build how and where
- bug 252774 improve support for CVS/SVN repo dumps so building from local sources is easier/smarter (to ease local setup when repo tree is non-standard): testing complete; released to HEAD.
2009-05-18
- Started Hudson Management Documentation. Includes HOWTO for restarting server to install updates.
- Started Jar Signing Documentation. Includes code sample.
- SWTBot builds added to Hudson
- bug 276574 generate default test.xml if not present in test plugin (to ease migration to Athena builder - less boilerplate crap you have to write/maintain)
- bug 252774 improve support for CVS/SVN repo dumps so building from local sources is easier/smarter (to ease local setup when repo tree is non-standard)
- bug 273518 Support building against p2 repos using both Eclipse 3.4 and new 3.5 versions of p2.director (work in progress in
bug272774-bug273518
branch)
- Began testing Athena for use with projects outside the org.eclipse namespace.
2009-05-09
- Builds now using Athena in Hudson include: GEF, Linux Tools, Visual Editor (VE), Voice Tools (VTP), and Nebula: https://build.eclipse.org/hudson/view/Athena%20CBI/
- Wiki docs refactored to use Category:Athena Common Build category.
- Other closed bugs since 2009-04-22:
- bug 273299 index.php should link to http://www.eclipse.org/downloads/download.php?file=/path/to/files/ to use mirrors
- bug 253277 Local build should warn/fail gracefully in the absence of specific tools
- bug 266374 design process for publishing builds from Hudson to download.eclipse.org
- bug 273302 Create crontab'able script for rsync/copy, fix perms, and unpack update zip
- bug 251926 support setting feature/plugin qualifiers to buildId (instead of map tags) when running nightly builds
- bug 272965 support packaging for namespaces other than org.eclipse.*
2009-04-22
- The 'buildZips' step is now optional; you can omit it entirely and still run your tests from the generated update site. This will also verify that your update site can be installed into Eclipse SDK + your runtime requirements using the p2 director (bug 272403).
- As with PDE SVN support and ant4eclipse, Athena can now fetch ant-contrib from Sourceforge if it's not already installed (bug 253277).
- Working on a way to input a custom site.xml so that your own categories will be used in the generated p2 repo / update site (bug 272991).
- Anonymous access to Hudson on build.eclipse.org is now available! Log in using your committerid for more control. To create a new job, you must be in the callisto-dev group (or ask someone who's in the group to create the job and add you to its ACL).
- Nebula and VE are now building using the Athena system (bug 237588, bug 270849).
- Other closed bugs since 2009-03-30:
- bug 272404 build.step "cleanup" should purge Master + All zips
- bug 252401 Make unpacking doc.isv optional
- bug 252030 standalone buildserver-in-a-box (vmware/vbox/qemu/kvm)
- bug 252049 Separate exploded SDK and sources to build
- bug 256212 verify default & extra packaging steps are producing correct zips
- bug 271145 Document build types
- bug 271211 optional lib folder in project.releng should be optional
- bug 271322 Need another bootclasspath location
- bug 271524 run (not runEclipse) task can't find ant4eclipse
- bug 271549 Should we be able to run tests w/ an archived p2 repo instead of an SDK zip?
- bug 271661 if map contains svn ref and pde-svn plugin not found in basebuilder, spit out a smarter error message
- bug 271849 Document requirement to have version variable in script launching build
- bug 272906 Features with fragments don't build properly
- bug 252035 Provide a p2 repo after the master feature is built
- bug 256192 build folder's index.php contains broken links
- bug 264579 define a better workflow for build steps
2009-03-30
- Had a great week at EclipseCon '09 talking to people about Athena, particularly during Hands-On: Using the new Common Builder for Push-Button PDE Builds. Slides (supporting material & exercise instructions) + exercises are posted here, which include sample properties files for building on Mac, Linux, and Windows. Two build projects are included along with one simple PDE feature build as an appetizer before the main course. :)
- Due to popular demand, we'll be adding support for simple product builds (bug 271186) using the Athena system. Anyone want to help beta-test it?
2009-03-15
- progress made on building locally in Eclipse on Mac OS X 10.5 and on Windows XP. Tests do not yet run on these platforms due to shell script and Xvfb/Xvnc requirements.
- prototyping work done using ant4eclipse to fetch org.eclipse.test and org.eclipse.ant.optional.junit from a .psf file so they need not be included in project's map file
2009-03-05
- progress made on building from local sources. It's a hack for now, but it's workable (bug 252774)
- working on a virtual server image on which Hudson and Eclipse can be run for testing
2009-03-01
- Signing in Hudson now works (bug 264633)
- verify build can run in Hudson via shell script
- verify build can run in Eclipse via build.xml (bug 253269), or commandline via start.sh, including signing
- refactor relative paths to absolute so build can be configured to run in more ways
- verify alternate path options: /tools/gef/d/d/$v/$bid/ vs. in /$bid/; /opt/public/cbi/build vs. /tmp/build
- verify cleanup step actually works for eclipse/ and testing/ folders, locally and in Hudson
- bugzilla cleanup (previously completed items are now closed); currently 27 closed Athena bugs, 39 open
2009-02-26
- Getting Started Guide updated with details about running in Eclipse, running commandline, and running in Hudson.
- signing works when run from local build (headless, in Eclipse) and Hudson build
- build directory path is more configurable than ever, with (hopefully) no more relative paths
2009-02-22
Numerous items in progress this week thanks to help from Andrew O and Bjorn F-B, including:
- test running build system on Mac OS X (problems with bootclasspath & JVM still to be solved)
- Getting Started Guide now includes information about running in eclipse (bug 252041
- run build in Eclipse / convert start.sh to build.xml (bug 252028, bug 253269)
- it seems that the new branch won't run in Hudson, so this is still in progress
- investigated SVN tagging and SVN change tracking in Hudson; the former does not seem to be working, but the latter is
- reported Hudson problems w/ CVS checkouts and use of Xvnc for UI testing (bug 265750, bug 265751)
2009-02-16
- Defined a better way to control flow of build steps, so ant targets "runWithoutTest" and "runWithoutBuildTest" are now obsolete (bug 264579)
- Improved startup process for build. Migrated several chunks of bash script to Ant (bug 253269)
- Started working with Hudson on build.eclipse.org for controlling and administering builds' logs and artifacts (bug 251945)
- Installed several new plugins and got server updated to latest version (bug 264778)
- However, Hudson cannot currently sign jars (bug 251945)
- See also next week's workshop plans
2009-01-16
Due to other commitments, not much is new.
- Plan doc updated with target milestones
- Linuxtools is now running scheduled builds using Dash Athena CBI via crontab
- Building with PPC Eclipse, GEF's automated JUnit tests PASS. See bug 253114 for followup problems on another server.
2008-11-26
- Build System Test Cases document started to capture tests, invocations, and problems
- Getting Started Guide drafted
- Tests (for GEF project build) are working with some success locally, but fail with "Java Result: 13" when run on build.eclipse.org
java.lang.UnsatisfiedLinkError: no swt-gtk-3448 or swt-gtk in swt.library.path, java.library.path or the jar file
- More refactoring and simplification (less shell, more Ant)
- System now uses ant-contrib for looping and conditional processing
- bug 256379 opened to optionally clean cvs exports out of the log (using <cvs reallyquiet="true">)
2008-11-19
2008-11-06
- SVN support implemented in setup script (to get svn-pde-plugin into the cached copy of basebuilder), startup script (to get a .releng project from svn repo or cvs repo), and generated fetch scripts (map files can specify cvs and svn entries interchangeably) (bug 251923).
- Signing now works for GEF (bug 253286).
- clean up customTargets.xml (for both ALL and Tests builders) (bug 251879).
- Support for archived update sites and SDK zips as input to build :: in progress (bug 252423).
- Testing code refactored and almost working for GEF.
2008-10-28
- Server config simplified on build.eclipse.org; documented and scripted for reproduction on localhost. Testing through cygwin on Windows TBD.
- basebuilder.releng from both 3.4 (tag: RC2_34) and 3.5M2 (R35_M2) checked out on build.eclipse.org; builds work equally.
- GEF build on build.eclipse.org and localhost has succeeded in producing GEF "Master" zip, as well as SDK, runtime, and examples.
- Signing fails, but can be skipped by running an N build.
- Test assembly fails; test run fails because tests are not yet built. builder/tests/customTargets.xml needs to be updated/fixed.
- Creation of Update site, p2 metadata, site digest, etc. still TBD.
- Web UI to run builds has been decoupled from the build system in case we decide to use Hudson or Cruise Control instead. Paths in web UI still broken (expect /gef/ but have /cbi/gef; downloads page shows builds on download.eclipse.org, not local builds on build.eclipse.org)
--
- To set up a build, run this script.
- For example:
cd /opt/public/cbi/build/org.eclipse.dash.common.releng_HEAD; \ cvs up -Pd; cd tools/scripts;./start.sh -projectid tools.gef -version 3.4.0 -buildType N \ -projRelengRoot ':pserver:anonymous@dev.eclipse.org:/cvsroot/technology' \ -projRelengPath 'org.eclipse.dash/athena/org.eclipse.dash.commonbuilder/org.eclipse.gef.releng' \ -basebuilderBranch R35_M2 -javaHome /opt/public/common/ibm-java2-142 \ -URL http://download.eclipse.org/eclipse/downloads/drops/R-3.4-200806172000/eclipse-SDK-3.4-linux-gtk.tar.gz \ 2>&1 | tee /opt/public/cbi/logs/buildlog_`date +%H%M%S`.txt
- To run locally, see examples in start.sh.