Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As one of the impactful Eclipse projects, we (the Develocity Solutions team) would like to invite you to be a part of the Eclipse Develocity evaluation initiative.
Description
This improvement will enhance the functionality of the Eclipse MWE build by publishing a build scan for every CI build and for every local build from an authenticated Eclipse committer. The build will not fail if publishing fails. The build scans of the Eclipse MWE project are published to the Develocity instance at develocity-staging.eclipse.org, hosted by the Eclipse Foundation and run in partnership between the Eclipse and Gradle. This Develocity instance has all features and extensions enabled and is freely available for use by the Eclipse MWE project and all other Eclipse projects.
On this Develocity instance, the Eclipse MWE project will have access not only to all of the published build scans but also to other aggregate data features such as:
cifilter applied.This will also enable you to (optionally) use build time optimization features, such as (remote) build caching and Predictive Test Selection. In this PR, build caching is enabled, with the local cache being disabled on CI and only allowing CI to write to the remote cache, as per the general recommendations.
I ran some tests about build speed improvements when caching is configured with the following results. Here are the best-case (no code change) savings:
install -DskipTests=trueinstallinstall -Dtycho-version=4.0.10 -Dsign.skip=true -DtestFailureIgnore=true -Dmaven.javadoc.failOnError=false -Dtarget-platform=org.eclipse.emf.mwe2.target -DBUILD_TYPE=N -Dscan.tag.target=targetinstall -Dtycho-version=4.0.11 -Dsign.skip=true -DtestFailureIgnore=true -Dmaven.javadoc.failOnError=false -Dtarget-platform=org.eclipse.emf.mwe2.target.nightly -DBUILD_TYPE=N -Dscan.tag.target=target.nightly(FAILED for my tests)All of the above runs also had
-f maven/org.eclipse.emf.mwe2.parent/pom.xml -Dtycho.localArtifacts=ignore -Dmaven.repo.local=.m2/repositoryarguments set.Caching can be tested without setting up the Develocity credentials - simply run 2 or more builds (the first one will fill the local cache, next ones can use it).
More information can be read in the Eclipse announcement. Here is also a blog post abut Develocity from Eclipse Foundation, as well as a Develocity presentation, made in collaboration with Eclipse Foundation (and Gradle).
Please let me know if there are any questions about the value of Develocity or the changes in this pull request and I’d be happy to address them.
IMPORTANT
To get scans publishing on CI, a helpdesk ticket needs to be opened in order for those credentials to be created, as explained in the initiative documentation. If this PR is merged without the credentials vault setup, your CI will not work because of the missing vault! This won't be visible in the PR builds, as they use the current Jenkins setup.