Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Platform-releng/Releng Plan for CBI adoption"
m (→Week 2: (2/11 - 15)) |
m (→Week 2: (2/11 - 15)) |
||
Line 34: | Line 34: | ||
::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). | ::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) | ::(Initially, all CBI based builds will be "I-builds" to better assess versioning) | ||
− | ::(I builds will build against master, controlled by | + | ::(I builds will build against master, controlled by [http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/streams/repositories.txt repositories.txt]) |
::(Unit tests on Linux only, until those work as expected, to save Windows and Mac machine resources). | ::(Unit tests on Linux only, until those work as expected, to save Windows and Mac machine resources). | ||
Revision as of 10:58, 11 February 2013
This document is the "plan", and more working notes for moving to CBI-based builds.
Contents
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 open CBI bugs (in platform, releng).
- Bug query for 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)
- (I builds will build against master, controlled by repositories.txt)
- (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 (but a difference won't interfere with the build), 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