Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
CBI/Distribution
This page tracks information related to how code, configuration, build artifacts, bundles, packages, and more are distributed at Eclipse.
Contents
Background
Eclipse projects consume 3 types of software:
- Approved unmodified third party software
- Approved modified third party software - with contentious bits removed to make it acceptable to Eclipse's IP policy
- Eclipse software from other projects (or itself in the case of large projects with multiple parts)
Overview
Guide
1 - Hudson executes the build (or local developer initiates manually)
2 - Code and config is cloned from git
3 - Libraries are downloaded from either a) Orbit b) maven.eclipse.org c) downloads.eclipse.org
4 - The build executes, outputs p2 repositories
5 - Packaging takes place, outputs packages
CQ - 3rd party libraries are reviewed and approved/rejected. Approved libraries are stored in Orbit
ECO - Eclipse technology is consumed by the ecosystem at large
Red arrows denote a path that would be useful, but may not exist today
Dashed arrows are strictly a manual process
Areas of concern
Eclipse technology redistribution
Orbit provides a centralized clearing house for IP policy approved 3rd party dependencies. At the moment, projects consuming technology from other Eclipse projects do so in a variety of ways. People picking up this technology are left to discover the chain of transitive dependencies.
This is an issue for Eclipse projects, and also for technology outside of Eclipse that uses Eclipse components.
Move to Long Term Support
The LTS program must ensure that all dependencies are available from an Eclipse Foundation controlled source.