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.
Difference between revisions of "Equinox p2 1.0 Technical Specs"
Line 4: | Line 4: | ||
== Tooling == | == Tooling == | ||
+ | === Build integration === | ||
; '''Ant task to produce repositories''' | ; '''Ant task to produce repositories''' | ||
: Provide an Ant task allowing generating metadata and publishing it and the corresponding artifact in repositories. This is a wrapper of the generator application. | : Provide an Ant task allowing generating metadata and publishing it and the corresponding artifact in repositories. This is a wrapper of the generator application. | ||
: Priority: 1 | : Priority: 1 | ||
;'''Ant task to provision products''' | ;'''Ant task to provision products''' | ||
− | : An Ant task wrappering the director application. | + | : An Ant task wrappering the director application to allow automated scripts to produce p2 enabled applications. |
: Priority: 1 | : Priority: 1 | ||
− | ; ''' | + | ;'''Ant task to optimize a repository''' |
+ | : An Ant task wrappering the repository optimizer application. | ||
: Priority: 1 | : Priority: 1 | ||
− | ; ''' | + | ; '''Modification of the build infrastructure to produce artifact and metadata repos''' |
+ | : Revisit the PDE Build scripts to streamline the production of repository as part of the build. | ||
: Priority: 1 | : Priority: 1 | ||
− | ; ''' | + | ; '''Modification of the product build to produce p2 eanbled products''' |
+ | : Revisit the PDE Build scripts to integrate the generation of p2 enabled products as part of the RCP product build scripts. | ||
: Priority: 1 | : Priority: 1 | ||
− | ; ''' | + | |
+ | === Self-hosting === | ||
+ | ; '''Generation of artifact / metadata repo from the content of the workspace''' | ||
+ | : This is the core of the selfhosting infrastructure. It monitors the content of the workspace and produce appropriate IUs. | ||
+ | : Priority: 2 | ||
+ | ; '''Provision on launch''' | ||
: Priority: 1 | : Priority: 1 | ||
− | ; ''' | + | ; '''Target provisioner reading the bundles.txt''' |
− | + | : Provide a target provisioner | |
− | + | ||
− | + | ||
− | + | ||
: Priority: 1 | : Priority: 1 | ||
; '''target provisioner reading the profile''' | ; '''target provisioner reading the profile''' |
Revision as of 21:08, 1 November 2007
Contents
THIS DOCUMENT IS STILL UNDER REDACTION
This page details some of the technical specifications of p2 1.0. Readers interested in a higher level view of end-user function should see the p2 feature sheet.
Tooling
Build integration
- Ant task to produce repositories
- Provide an Ant task allowing generating metadata and publishing it and the corresponding artifact in repositories. This is a wrapper of the generator application.
- Priority: 1
- Ant task to provision products
- An Ant task wrappering the director application to allow automated scripts to produce p2 enabled applications.
- Priority: 1
- Ant task to optimize a repository
- An Ant task wrappering the repository optimizer application.
- Priority: 1
- Modification of the build infrastructure to produce artifact and metadata repos
- Revisit the PDE Build scripts to streamline the production of repository as part of the build.
- Priority: 1
- Modification of the product build to produce p2 eanbled products
- Revisit the PDE Build scripts to integrate the generation of p2 enabled products as part of the RCP product build scripts.
- Priority: 1
Self-hosting
- Generation of artifact / metadata repo from the content of the workspace
- This is the core of the selfhosting infrastructure. It monitors the content of the workspace and produce appropriate IUs.
- Priority: 2
- Provision on launch
- Priority: 1
- Target provisioner reading the bundles.txt
- Provide a target provisioner
- Priority: 1
- target provisioner reading the profile
- Priority: 2
- target provisioner invoking the user UI to provision into the target (if it is associated with a profile)
- Priority: 3
- integration of the repository browsing UI into a PDE/p2 view
- Priority: 2
- converter from site.xml to p2 categories
- Priority: 1
- repository edition to publish / remove artfiacts and metadata
- Note: This is necessary if we don't want people to start messing around with the content of the file directly. Priority: 1
- target to read bundles.txt
- Priority: 1
- target to read profiles
- Priority: 2
- target provisioning UI
- Priority: 3
- Metadata generator advises
- N/A
- Site optimizer
- N/A
- How does the source gets provisioned in the target
- N/A
User interaction
- Have a preference to allow for automatic download before installation
- N/A
- Have a preference to silent installation
- N/A
- Need a way to identify a license uniquely
- N/A
- A way to present remembered licenses
- N/A
- A way to present remembered signatures
- N/A
- Better presentation of licenses
- N/A
- Support for installation even when there are errors in the configuration
- Priority: 2
Download technology
- Adaptative download manager
- Priority: 2
- MD5 / SHA1 processing steps
- Priority: 1
- Delta processing step
- Priority: 1
- Transparent selection of artifact repository
- Priority: 1
- Pack 200 support
- N/A
Core technologies
- Response file
- Priority: 2
- provide infrastructure to remember accepted signers per profile
- Priority: 1
- provide infrastructure to remember accepted licenses per profile
- Priority: 1
- support for invoking the engine on a phase basis
- Priority: 1
- governor
- Priority: 1
- need a way to express the governor permissions
- Priority: 1
- Need a way to ensure that a bundle pool is only used by one agent to avoid problems with GC
- Priority: 1
- define how categorization of site is done
- Priority: 1
- simple configurator policy
- N/A
- framework admin, review the performance on big scenarios
- Priority: 1
- simple configurator, ensure startup performance
- Priority: 1
- simple configurator, ensure start level order
- Priority: 2
- reconciliation with bundles watched from directories
- Priority: 1
- support to restart failed download.
- Priority: 2
- phases
- Priority: 1
- persistence of actions
- Priority: 1
- support for fixes in the metadata
- Priority: 1
- support for update in the metadata
- Priority: 1
- support for sequenced update in the metadata
- Priority: 1
- translation of metadata
- Priority: 1
- Discovery of JRE and how do we deal with changing JREs
- Priority: 1
- make the agent dynamic
- Priority: 1
- Scalability
- Priority: 1
- Movable installs
- Priority: 1
- Variables
- Priority: 2
- Nested profiles
- Priority: 3
- Do we need to separate the configuration from the installation
- Priority: 1
- Locating files in one IU
- Priority: 1
- Locating files in another IU
- Priority: 2
- Support to canonicalize version numbers
- Priority: 2
- Shared agent data access
- Priority: 1
- Scope which repositories are used for a given operation
- Priority: 2
- Repositories associated to a profile
- N/A
- Separate meta-level capabilities and requirements from the base level ones
- Priority: 1
- Expression of dependencies
- N/A
- policy to purge the rollback registry
- Priority: 1
- support for the rollback registry to keep track of why there is this entry in it
- Priority: 1
- Artifact garbage collector
- Priority: 1
- Metadata garbage collector
- Priority: 1
- directory watcher policies
- Three variations:
- call Director.install() and potentially generate metadata (Priority: 1)
- to call FwkAdmin.addBundle() (Priority 2)
- to call BundleContext.installBundle() (Priority 2)
- shared installs
- Priority: 1
- sharing of bundles across eclipses
- Priority: 1
- Ability to share the agent data across multiple running processes
- Priority: 1
- Support for undo-ing an operation after an agent crash
- Priority: 1
- Support continuing of an engine operation upon restart of the agent
- Priority: 1
- Support for DBCS in repos, in install path and other Uis
- Priority: 1
- Support for multiple bundle artifacts in one IU
- Priority: 2
- Review the concept of flavor and the default flavor we ship
- Priority: 1
- Refine the concept of marker
- Priority: 1
- Ability for touchpoint to cause a runtime to be started / stopped / restarted
- Priority: 1
- Do we need to have a mechanism to replace the UM policy files
- Priority: 1
- Ability to update eclipse.exe
- Priority: 2
- Ability to specify multiple bundle pools
- Priority: 1
- Installing bundles in a non running eclipse
- Priority: 1
Repositories
- Have a way to allow repositories to refer to others (this means mirrors or not)
- Priority: 1
- embedded repos
- Priority: 1
- published repos
- Priority: 1
- Ability to publish artifacts with known processing steps
- Priority: 1
- Have a repo within a jar for a given bundle
- Priority: 1
- Authentication to connect to a repository
- Priority: 1
- Implement ways to have trusted repositories
- Priority: 1
Dependency on other Eclipse components
Platform
- Markup for dynamic bundles
- Support to get the proxy / socks from the OS
ECF
- make sure proxy / socks settings are honored properly
- Support for https
- Authentication to connect to an http server
- Exchange of certificates on connection
Equinox
- Storage and management of certificates
- Storage of login information in a session
UM Compatibility
- Do we have to keep delivering the features?
- N/A
- How do we deal with platform.xml?
- N/A
- Do we allow for the installation of old style update site content through the new UI
- N/A
- Do we leave the old API?
- N/A
- Do we change UM to produce a bundles.txt instead of a platform.xml
- N/A
- Review the different UM policies and how they map/apply in the new world
- N/A
- Permission based control of provisioning operations
- When a provisioning operation is performed, permissions are checked to ensure that the operation is acceptable in the given context. Priority: 1