Here are some of the ideas I sent to Mickael. Forwarding to the list for wider audience
Hi Mikael,
Here are the steps we have during the build
- Clean Workspace
- Setup initial configuration
- Generate environment variables
- Export environment variables stage 1
- Swt build input
- Create Base builder
- Download reference repo for repo reports
- Clone Repositories
- Tag Build Inputs
- Create Source Bundles
- Update Pom files in the source
- Aggregator maven build
- Gather Eclipse Parts
- Gather Equinox Parts
- Generate Repo reports
- Generate API tools reports
- Export environment variables stage 2
- Archive artifacts
- Promote Eclipse platform
- Promote Equinox
- Promote Update Site
- Trigger tests
What I am listing here are for build stages written in shell.
We can run some these stages in parallel with others. For example Promote Eclipse platform, Promote Equinox, Promote Update Site can run in parallel also Gather Eclipse Parts and Gather Equinox Parts can run in parallel. (approximately we will get 5 minutes improvement with this)
SWT Build Input stage can start separately but should complete before clone repositories stage(with this we will achieve 3 minutes improvement). Similarly Create Source Bundles stage should start after tagging stage but should complete before Gather Eclipse Part(this will improve by 6-8 minutes)
This is for the maven stage.
Build approximately spends 50% of time Aggregator maven build stage. Can we use multiple threads for maven here? This can speed up this stage. Changes might be required in Tycho and CBI here.
These are some of the ideas that will help.
Hope I haven’t overwhelmed you with this.
Thanks
Sravan
I currently have some time I can dedicate to improving Platform build. Are there some identified tasks where I can contribute to? Or some ideas to try maybe?
_______________________________________________
platform-releng-dev mailing list
platform-releng-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/platform-releng-dev