Bug 409072 - [test] remove final mirror/comparator step in production builds
Summary: [test] remove final mirror/comparator step in production builds
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Releng (show other bugs)
Version: 4.3   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 4.3 RC3   Edit
Assignee: David Williams CLA
QA Contact:
URL:
Whiteboard:
Keywords: test
Depends on:
Blocks:
 
Reported: 2013-05-25 14:43 EDT by David Williams CLA
Modified: 2013-05-29 03:11 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Williams CLA 2013-05-25 14:43:58 EDT
I'm counting this as "removing a test" because that's the reason it was originally put in (to make sure a "post build" comparator" would not find differences not found by Tycho comparator). 

And, it _might_ being contributing to bug 408944 ... even if so, there is no functional harm ... but admit seeing binary differences can be disconcerting (and, I do not think this is the only reason for binary differences, but would eliminate one possible source). 

I'll also note, it would only contribute to bug 408944 when combined with "sloppy" release engineers :) Both comparators, "during build" and "post build" work against the 4.3-I-builds composite repo. Normally, that is (and should be) cleaned out of all "old" I builds except the last one which was promoted as the milestone, release candidate, etc. But, admit, I forgot to do that after RC1 so might have been "more than one" matching bundles to "replace with", and which one is chosen I'm sure is non-deterministic, depending on VM used, etc, and maybe even if same VM (pretty sure we do use same VM in this case). 

But also, my other motivating factor is this step adds at least 20 if not 40 minutes to our production builds ... so ... good to remove for that reason alone. 

If/when we ever want a "mirror unit test" we can add that during the unit tests and avoid the build time.
Comment 1 David Williams CLA 2013-05-25 14:53:45 EDT
The fix for this is almost as easy as changing if (( 0 )) to if (( 1 )) in 

http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/production/publish-repo.sh#n84

because I left the "old method" in place based on that if statement. 

However, there are several reasons we still want to also call (a modified) version of "process-artifacts": 

http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/eclipse.platform.releng.tychoeclipsebuilder/eclipse/buildScripts/process-artifacts.xml

1) we still want to remove the "junk" IUs that are not required, except at build time. 

2) more important, we still want to call p2.process.artifacts to add md5 checksums to our IUs. (This is to work around a Tycho bug which has not yet been fixed, see bug 406263 for explanation and pointers to other bugs). 

3) also (while other ways of doing it) we want to make sure our content.xml file is jarred/compressed. 

Will be sure to do a test build, before committing.
Comment 3 David Williams CLA 2013-05-27 20:43:23 EDT
verified in I20130526-2000. 

I can see the "post build" comparator logs no longer created. 

I visually inspected content.jar/xml to make sure "master.feature.jar" was still removed. 

I visually inspected artifacts.jar/xml to make sure still had download.md5 property set.