|
|
(72 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
− | This document is the "plan", and more working notes for moving to CBI-based builds.
| + | #REDIRECT [[Category:Eclipse_Platform_Releng]] |
− | | + | |
− | =Main Criteria for moving to CBI based build for Kepler=
| + | |
− | | + | |
− | # Have same output deliverables as current build: zips, repository, etc. (For Equinox and Eclipse) | + | |
− | # (Be able to reproduce exact same build, given a tag (or tags) to start the build with.)
| + | |
− | # Same warnings (and compile errors, if any) as PDE based build.
| + | |
− | # Be able to run our JUnit tests, with same results, as PDE based build.
| + | |
− | # Run a binary comparator against the bundles to ensure that they are the same binary content as the regular bundles.
| + | |
− | :[Not sure how to do this since "qualifier algorithm" is different].
| + | |
− | # Qualifiers not change (except for branding bundles) if the content has not changed.
| + | |
− | # All bundles signed.
| + | |
− | # Final I-build type repository have same content and metata as PDE based build (nothing missing, nothing extra).
| + | |
− | # Be easy to fit in to current workflow of automated builds and tests of "nightlies", I-builds, milestones (i.e. committers have to know
| + | |
− | what to do to "release" something for a build, how to "freeze" changes at a certain point).
| + | |
− | | + | |
− | =Bug queries and reference documents=
| + | |
− | | + | |
− | * Buq query for [https://bugs.eclipse.org/bugs/buglist.cgi?cmdtype=runnamed&namedcmd=OpenCBI&list_id=4380932 open CBI bugs (in platform, releng)].
| + | |
− | | + | |
− | * Bug query for [https://bugs.eclipse.org/bugs/buglist.cgi?cmdtype=runnamed&namedcmd=EFCBIOpen&list_id=4380964 open Eclipse Foundation CBI bugs] (all in Eclipse Foundation, CBI)
| + | |
− | | + | |
− | * See [[Platform-releng/Platform_Build]] for steps to do local builds and tests.
| + | |
− | | + | |
− | =Rollout and deadlines=
| + | |
− | | + | |
− | Weeks below are numbered in "milestone weeks", beginning with "towards M6" ... there are only 6 weeks for M6.
| + | |
− | | + | |
− | == Towards M6 ==
| + | |
− | | + | |
− | === Week 2: (2/11 - 15) ===
| + | |
− | | + | |
− | :Begin to produce automated CBI based builds and run unit tests in parallel with PDE-based builds.
| + | |
− | ::I'll schedule these to start at 8:30 PM, shortly after PDE based Nightlies. (They should finish first, and get be in testing que first). ::(Initially, all CBI based builds will be "I-builds" to better assess versioning)
| + | |
− | ::(Unit tests on Linux only, until those work as expected, to save Windows and Mac machine resources).
| + | |
− | | + | |
− | :Committers should begin to use SDK's produced, and evalutate for correctness. In particular:
| + | |
− | ::Check that version numbers change (or don't change) as expected.
| + | |
− | ::Those with "binary bundles" check that they are correct ones.
| + | |
− | ::Help evaluate failing JUnit suites. Some may be "releng" issues, but some may be project pom issues?
| + | |
− |
| + | |
− | :Initial Limitations:
| + | |
− | ::there will be no "autotagging" of aggregator or repositories, until we are more confident. (medium priority)
| + | |
− | ::there will be no "equinox drops". (low/medium priority)
| + | |
− | ::there will be no cbibased "I-build repo" (high priority)
| + | |
− | ::"zipped repos" are known not to be quite right yet (low prioriy)
| + | |
− | ::no ecj.jar produced (in hands of JDT Team? To tweak their "custom script"?) (low priority)
| + | |
− | ::no "auto update" of pom's, based on manifest ... such as committers have to update vesion number in both, make "build.properties" changes in both. (low priority)
| + | |
− |
| + | |
− |
| + | |
− | === Week 3: (2/18 - 22) ===
| + | |
− | | + | |
− | :Begin to tag aggregator upon successful build, (with "commits" of latest submodules added to aggregator).
| + | |
− | ::(This allows "local build" to duplicate our build following directions given at wiki)
| + | |
− | ::TODO: someone (Thanh?) should evaluate if gives same "target" results)
| + | |
− | | + | |
− | :Begin to produce "4.3-I-buildcbibased" repositories at .../eclipse/updates (Not sure they will be correct, but ... need to get started?)
| + | |
− | | + | |
− | :During this week "announce" the CBI based builds available community/adopter help in testing adequacy.
| + | |
− | | + | |
− | :? Could produce 4.2.2+ builds for comparison to 4.2.2?
| + | |
− | ::(For this reason, I'd advocate no "code changes" for 4.2.2+ for a while, until all pom changes/updates are made).
| + | |
− | | + | |
− | :Possibly have true "CBI nightlies", if versioning/qualifier assessment from week 2 is done.
| + | |
− | | + | |
− | === Week 4: (2/25 - 3/1) ===
| + | |
− | | + | |
− | :This week? Or next? deadline for go/nogo decision if M6 is time for cut over?
| + | |
− | ::[Cut over means CBI based builds become primary, and PBE builds become secondary. For evaluation purposes, we'd continue to do PDE-based I-builds, for at least another milestone, if not RCs also, but after "cut over" they would be the ones "hidden away"].
| + | |
− | | + | |
− | === Week 5: (3/4 - 8) ===
| + | |
− | | + | |
− | === Week 6: (3/11 - 15) <== 3/15 is M6+0 day. ===
| + | |
− | | + | |
− | : Milestone stabilization week
| + | |