This Bugzilla instance is deprecated, and most Eclipse projects now use GitHub or Eclipse GitLab. Please see the deprecation plan for details.
Bug 528714 - [full component] Merge 3 jsf repos into 1
Summary: [full component] Merge 3 jsf repos into 1
Status: RESOLVED FIXED
Alias: None
Product: Java Server Faces
Classification: WebTools
Component: JSF Tools (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: jsf inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 525342
  Show dependency tree
 
Reported: 2017-12-13 09:26 EST by Nick Boldt CLA
Modified: 2017-12-21 19:30 EST (History)
6 users (show)

See Also:
nboldt: pmc_approved+
ian.trimble: review+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Boldt CLA 2017-12-13 09:26:40 EST
JSF consists of these repos:

http://git.eclipse.org/c/jsf/webtools.jsf.git
http://git.eclipse.org/c/jsf/webtools.jsf.docs.git
http://git.eclipse.org/c/jsf/webtools.jsf.tests.git

To facilitate agile, CI builds, we'd like to merge the repos into a single one.

This would allow everything in jsf to be built in the same reactor, which would allow tests to be run on every gerrit request.

To that end, here's a script which will perform the merge.

https://gist.github.com/robstryker/99b0993090f338f4da81f96353cbcf35

Once run, the resulting repo can then be built simply with `mvn clean install`.

-----

Approvals required:

* PMC (similar merge was approved in Bug 52044)
* wtp.jsf project lead (similar merge was approved in Bug 52044); nominal agreement from Ian Trimble that this is a good approach
* EMO/legal (similar merge was approved by Wayne Beaton in Bug 52044 comment 23, as author, history, time of commit, etc. are all preserved)

Once everyone agrees, we can schedule time with the webmaster to perform the following tasks on the http://git.eclipse.org/c/jsf/webtools.jsf.git repository:

1. disable IP check (web master)
2. forge author (if not already on by default)
3. grant forge committer (web master)
4. grant forge server (web master)
Comment 1 Nick Boldt CLA 2017-12-13 11:26:42 EST
After running the merge:

cd ~/tmp/merge_jsf.tmp/webtools.jsf
mvn clean install
for d in $(find */*/*/target/surefire*/ */*/target/surefire*/ */target/surefire*/ -name "org.*.txt" 2>/dev/null); do echo $d; grep "Tests run" $d; echo ""; done

And  you'll get these 675 tests run successfully:

jsf/tests/org.eclipse.jst.jsf.common.runtime.tests/target/surefire-reports/org.eclipse.jst.jsf.common.runtime.tests.AllRuntimeTests.txt
Tests run: 110, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.133 sec - in org.eclipse.jst.jsf.common.runtime.tests.AllRuntimeTests

jsf/tests/org.eclipse.jst.jsf.context.symbol.tests/target/surefire-reports/org.eclipse.jst.jsf.context.symbol.tests.AllTests.txt
Tests run: 62, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 23.377 sec - in org.eclipse.jst.jsf.context.symbol.tests.AllTests

jsf/tests/org.eclipse.jst.jsf.facesconfig.tests/target/surefire-reports/org.eclipse.jst.jsf.facesconfig.tests.AllFacesConfigTests.txt
Tests run: 503, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 4.503 sec - in org.eclipse.jst.jsf.facesconfig.tests.AllFacesConfigTests
Comment 2 Nick Boldt CLA 2017-12-14 09:38:19 EST
To make it easier to review, I've pushed the output of the script to my github fork.

https://github.com/nickboldt/webtools.jsf/tree/528714

Added bonus, it's now building in hudson:

https://hudson.eclipse.org/webtools/job/webtools-jsf_R3_10/
Comment 3 Nick Boldt CLA 2017-12-14 11:49:24 EST
Because Rob's fork was missing the creation of a jsf update site (which we need for building downstream webservices), I've forked his gist here, to add that final step:

https://gist.github.com/nickboldt/3901251c9fad89fe5d5536d89fbe30bb

Alternatively, you can run his script, then cherry pick my commit:

git remote add nickboldt https://github.com/nickboldt/webtools.jsf
git fetch nickboldt
 
# Bug 528714 add update site build 
# https://github.com/nickboldt/webtools.jsf/commit/f8cf88dc6eecc1c4653829dc1c54ecb79dfee370
git cherry-pick --keep-redundant-commits f8cf88dc6eecc1c4653829dc1c54ecb79dfee370
Comment 4 Ian Trimble CLA 2017-12-14 16:19:42 EST
Works for me.
Comment 5 Nick Boldt CLA 2017-12-15 14:54:15 EST
I've marked this PMC approved since Elson, Chuck, and Carl have all been privy to this plan for months and have not voiced a complaint, and both Ian and Raghunathan have been copied on request emails about this change and have either agreed explicitly, or silently acquiesced.

Same goes for EMO's approval. Silence = agreement. 

Moving ahead on Tues at 2pm EST with the merge, per webmaster's suggested time.
Comment 6 Eclipse Genie CLA 2017-12-18 20:18:09 EST
New Gerrit change created: https://git.eclipse.org/r/114354
Comment 8 Eclipse Genie CLA 2017-12-20 12:06:13 EST
New Gerrit change created: https://git.eclipse.org/r/114495
Comment 9 Eclipse Genie CLA 2017-12-20 12:07:26 EST
New Gerrit change created: https://git.eclipse.org/r/114496
Comment 10 Nick Boldt CLA 2017-12-21 19:30:28 EST
This is done. 

We have a gerrit build for master, R3_9 and master builds of the releng.aggregator, and a jsf-only CI build too.

So... resolving.