SlideShare a Scribd company logo
p2
                                              The new Eclipse
                                            provisioning system
© Anyware Technologies-All Right Reserved




                                                 Benjamin Cabé
                                              Anyware Technologies
Agenda

                                              • p2, what's that?
                                                       ►Origins
                                                       ►Concepts
                                                       ►Architecture overview

                                              • Using p2
                                                       ►As a developer
© Anyware Technologies-All Right Reserved




                                                       ►As an ISV
                                                       ►As an end-user

                                              • Coming next (Galileo plan)


                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
The origins : the « Update Manager »

                                              • Assessment
                                                       ►The plug-in mechanism just rocks...
                                                       ►... but installing or updating plug-ins by hand is
                                                        cumbersome

                                              • Since Eclipse 2.1: the « Update Manager »
                                                       ►allows to install & update « features » through GUI...
© Anyware Technologies-All Right Reserved




                                                       ►... which is way too messy for 99% of users




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Update Manager's limitations

                                              • The feature doesn't fit all needs...
                                                       ►deliver a product in different but very similar
                                                        shapes?
                                                       ►install more than just plug-ins & features?

                                              • ...neither does the update site
                                                       ►ship features through different mirrors?
© Anyware Technologies-All Right Reserved




                                                       ►allow the end-user to perform the « initial »
                                                        provisioning?




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Here comes p2!


                                                                                                                  • Reworked UI
                                                                                                                           ►simplified workflow
                                                                                                                           ►better performances

                                                                                                                  • Provision the world!
                                                                                                                           ►plug-ins, .exe, .ini, ... whatever
© Anyware Technologies-All Right Reserved




                                                                                                                  • A very modular framework
                                                                                                                           ►provision more than just Eclipse
                                                                                                                             stuff
                                                                                                                           ►controllable from the outside

                                                                       “If it can be installed, it runs!”
                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Key features

                                              • Optimized updates & installs
                                                       ►multithreaded downloads
                                                       ►best mirror automatically picked

                                              • “Bundle pooling”
                                                       ►shared plug-ins across many Eclipse instances
© Anyware Technologies-All Right Reserved




                                              • Low-level provisioning APIs
                                                       ►headless mode
                                                       ►update a non-running instance

                                              • Installer

                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
The concepts

                                              • Installable Unit :
                                                       ►the description of what is being installed

                                                       ►ID, version
                                                       ►dependencies
                                                       ►actions to perform during install / uninstall / ...
© Anyware Technologies-All Right Reserved




                                                       ►physical artifacts (optional)




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
The concepts (2)

                                              • Installable Units are stored in a
                                                                                             metadata repository


                                              • The actual content (plug-ins, zips, ...) lives in an
© Anyware Technologies-All Right Reserved




                                                                                                artifact repository




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Useful terminology

                                              • Profile
                                                       ►the target of the installed
                                                        stuff

                                              • Planner
                                                       ►the entity that converts a
                                                        list of IUs to install in a
© Anyware Technologies-All Right Reserved




                                                        given profile into
                                                        provisioning steps




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Useful terminology (2)

                                                                                                                            • Engine
                                                                                                                                     ►the mechanism for
                                                                                                                                      executing provisioning
                                                                                                                                      requests

                                                                                                                            • Touchpoint
                                                                                                                                     ►the part of the engine
© Anyware Technologies-All Right Reserved




                                                                                                                                      that actually integrates
                                                                                                                                      the provisioning system in
                                                                                                                                      a given platform




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
« Big Picture »
© Anyware Technologies-All Right Reserved




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Using p2... as an Eclipse developer

                                             • Save hundreds of Mb
                                               thanks to bundle pooling

                                             • Describe a well-defined,
                                               reproducible, development
                                               environment
© Anyware Technologies-All Right Reserved




                                             • Use the dropins folder to
                                               perform quick installs

                                             • Manage target platforms
                                               elegantly

                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Using p2... as an ISV

                                                                                                                            • Deliver an installer on a
                                                                                                                              CD or an USB key

                                                                                                                            • Propose different
                                                                                                                              flavours of your product
                                                                                                                              depending on the
                                                                                                                              customer
© Anyware Technologies-All Right Reserved




                                                                                                                            • Deploy a mirror in your
                                                                                                                              customer's information
                                                                                                                              system


                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Using p2... as an end-user

                                              • Get automatic updates
                                              • Enjoy a clean
                                                uninstalling process

                                              • Get annoyed by some
                                                bugs or missing
© Anyware Technologies-All Right Reserved




                                                documentation but...


                                              • ...Just relax!


                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Coming next

                                              • A real p2 API
                                              • User interaction
                                                       ►improve progress/error reporting
                                                       ►tighter desktop integration (shortcuts, registry keys, ...)

                                              • Tooling / Authoring
© Anyware Technologies-All Right Reserved




                                                       ►IU editor
                                                       ►Repository editors (artifact & metadata)


                                              • IBM, Cloudsmith, Siemens AG, Genuitec, Anyware
                                                Technologies... YOU!
                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Useful resources

                                              • The Eclipse wiki:
                                                       ►http://wiki.eclipse.org/Equinox_p2



                                              • The p2 newsgroup (general issues)
                                                       ►news://news.eclipse.org/eclipse.technology.equinox
© Anyware Technologies-All Right Reserved




                                              • The p2-dev mailing list (technical questions)
                                                       ►https://dev.eclipse.org/mailman/listinfo/p2-dev


                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Thank you!




                                                                                                    Benjamin Cabé
                                                                                                    Eclipse Expert
                                                                     <benjamin.cabe@anyware-tech.com>
© Anyware Technologies-All Right Reserved




                                                                                  http://blog.benjamin-cabe.com
                                                                                  http://www.anyware-tech.com




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Legal notices

                                              • Eclipse and the Eclipse logo are trademarks of
                                                Eclipse Foundation, Inc.

                                              • OSGi is a registered trademark of the OSGi Alliance
                                                in the United States, other countries or both.

                                              • Other company, product, or service names may be
© Anyware Technologies-All Right Reserved




                                                trademarks or service marks of others




                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
Photo & Illustration credits

                                              • Michal Zacharzewski
                                                       ► http://www.sxc.hu/photo/953139
                                              • G Schouten de Jel
                                                       ► http://www.sxc.hu/photo/1090308
                                              • Andrej Sevelin
                                                       ► http://www.sxc.hu/photo/892243
                                              • Dave Di Biase
                                                       ► http://www.sxc.hu/photo/204676
© Anyware Technologies-All Right Reserved




                                              • dunkv@flickr
                                                       ► http://www.flickr.com/photos/dunkv/97119622
                                              • Cathy Kaplan
                                                       ► http://www.sxc.hu/photo/283374
                                              • Mac Pale
                                                       ► http://www.sxc.hu/photo/956527

                                            Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence

More Related Content

Similar to P2, the new Eclipse provisioning system

Pstrong Cybera 29 Sept 2008
Pstrong Cybera 29 Sept 2008Pstrong Cybera 29 Sept 2008
Pstrong Cybera 29 Sept 2008
Cybera Inc.
 
XS Japan 2008 Ganeti English
XS Japan 2008 Ganeti EnglishXS Japan 2008 Ganeti English
XS Japan 2008 Ganeti English
The Linux Foundation
 
Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...
Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...
Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...
Atlassian
 
The Boundaryless Value-Chain
The Boundaryless Value-ChainThe Boundaryless Value-Chain
The Boundaryless Value-Chain
Peter Evans-Greenwood
 
High-Octane Dev Teams: Three Things You Can Do To Improve Code Quality
High-Octane Dev Teams: Three Things You Can Do To Improve Code QualityHigh-Octane Dev Teams: Three Things You Can Do To Improve Code Quality
High-Octane Dev Teams: Three Things You Can Do To Improve Code Quality
Atlassian
 
Cloud computing, Virtualisation and the Future
Cloud computing, Virtualisation and the FutureCloud computing, Virtualisation and the Future
Cloud computing, Virtualisation and the Future
Ake Edlund
 
DejaVOO: A Regression Testing Tool for Java Software
DejaVOO: A Regression Testing Tool for Java SoftwareDejaVOO: A Regression Testing Tool for Java Software
DejaVOO: A Regression Testing Tool for Java SoftwareManas Tungare
 
Comparison Ipc Artista V1
Comparison Ipc Artista V1Comparison Ipc Artista V1
Comparison Ipc Artista V1digital.signage
 
Os Grouchnikov
Os GrouchnikovOs Grouchnikov
Os Grouchnikovoscon2007
 
Really Simple Document Management - 2009 Update
Really Simple Document Management - 2009 UpdateReally Simple Document Management - 2009 Update
Really Simple Document Management - 2009 Update
Alfresco Software
 
MWLUG Chicago Keynote - Ed Brill
MWLUG Chicago Keynote - Ed BrillMWLUG Chicago Keynote - Ed Brill
MWLUG Chicago Keynote - Ed Brill
Ed Brill
 
AJUBY Open Source Application Builder
AJUBY Open Source Application BuilderAJUBY Open Source Application Builder
AJUBY Open Source Application Builder
ajuby
 
Moving Windows Server Apps to the cloud in 3 Easy Steps
Moving Windows Server Apps to the cloud in 3 Easy StepsMoving Windows Server Apps to the cloud in 3 Easy Steps
Moving Windows Server Apps to the cloud in 3 Easy Steps
AppZero
 
Linux Power Management Slideshare
Linux Power Management SlideshareLinux Power Management Slideshare
Linux Power Management SlidesharePatrick Bellasi
 
Inside Picnik: How We Built Picnik (and What We Learned Along the Way)
Inside Picnik: How We Built Picnik (and What We Learned Along the Way)Inside Picnik: How We Built Picnik (and What We Learned Along the Way)
Inside Picnik: How We Built Picnik (and What We Learned Along the Way)jjhuff
 
Java/Swing
Java/SwingJava/Swing
symfony: Open-Source Enterprise Framework
symfony: Open-Source Enterprise Frameworksymfony: Open-Source Enterprise Framework
symfony: Open-Source Enterprise FrameworkFabien Potencier
 
Android Development Workshop V2
Android Development Workshop   V2Android Development Workshop   V2
Android Development Workshop V2
Diego Torres Milano
 

Similar to P2, the new Eclipse provisioning system (20)

Pstrong Cybera 29 Sept 2008
Pstrong Cybera 29 Sept 2008Pstrong Cybera 29 Sept 2008
Pstrong Cybera 29 Sept 2008
 
XS Japan 2008 Ganeti English
XS Japan 2008 Ganeti EnglishXS Japan 2008 Ganeti English
XS Japan 2008 Ganeti English
 
Developing Software That Matters I
Developing Software That Matters IDeveloping Software That Matters I
Developing Software That Matters I
 
Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...
Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...
Peer Code Review: In a Nutshell and The Tantric Team: Getting Your Automated ...
 
The Boundaryless Value-Chain
The Boundaryless Value-ChainThe Boundaryless Value-Chain
The Boundaryless Value-Chain
 
High-Octane Dev Teams: Three Things You Can Do To Improve Code Quality
High-Octane Dev Teams: Three Things You Can Do To Improve Code QualityHigh-Octane Dev Teams: Three Things You Can Do To Improve Code Quality
High-Octane Dev Teams: Three Things You Can Do To Improve Code Quality
 
Cloud computing, Virtualisation and the Future
Cloud computing, Virtualisation and the FutureCloud computing, Virtualisation and the Future
Cloud computing, Virtualisation and the Future
 
DejaVOO: A Regression Testing Tool for Java Software
DejaVOO: A Regression Testing Tool for Java SoftwareDejaVOO: A Regression Testing Tool for Java Software
DejaVOO: A Regression Testing Tool for Java Software
 
A Tale Of Two Systems
A Tale Of Two SystemsA Tale Of Two Systems
A Tale Of Two Systems
 
Comparison Ipc Artista V1
Comparison Ipc Artista V1Comparison Ipc Artista V1
Comparison Ipc Artista V1
 
Os Grouchnikov
Os GrouchnikovOs Grouchnikov
Os Grouchnikov
 
Really Simple Document Management - 2009 Update
Really Simple Document Management - 2009 UpdateReally Simple Document Management - 2009 Update
Really Simple Document Management - 2009 Update
 
MWLUG Chicago Keynote - Ed Brill
MWLUG Chicago Keynote - Ed BrillMWLUG Chicago Keynote - Ed Brill
MWLUG Chicago Keynote - Ed Brill
 
AJUBY Open Source Application Builder
AJUBY Open Source Application BuilderAJUBY Open Source Application Builder
AJUBY Open Source Application Builder
 
Moving Windows Server Apps to the cloud in 3 Easy Steps
Moving Windows Server Apps to the cloud in 3 Easy StepsMoving Windows Server Apps to the cloud in 3 Easy Steps
Moving Windows Server Apps to the cloud in 3 Easy Steps
 
Linux Power Management Slideshare
Linux Power Management SlideshareLinux Power Management Slideshare
Linux Power Management Slideshare
 
Inside Picnik: How We Built Picnik (and What We Learned Along the Way)
Inside Picnik: How We Built Picnik (and What We Learned Along the Way)Inside Picnik: How We Built Picnik (and What We Learned Along the Way)
Inside Picnik: How We Built Picnik (and What We Learned Along the Way)
 
Java/Swing
Java/SwingJava/Swing
Java/Swing
 
symfony: Open-Source Enterprise Framework
symfony: Open-Source Enterprise Frameworksymfony: Open-Source Enterprise Framework
symfony: Open-Source Enterprise Framework
 
Android Development Workshop V2
Android Development Workshop   V2Android Development Workshop   V2
Android Development Workshop V2
 

More from Benjamin Cabé

IoT Developer Survey 2018
IoT Developer Survey 2018IoT Developer Survey 2018
IoT Developer Survey 2018
Benjamin Cabé
 
Open Source for Industry 4.0 – Open IoT Summit NA 2018
Open Source for Industry 4.0 – Open IoT Summit NA 2018Open Source for Industry 4.0 – Open IoT Summit NA 2018
Open Source for Industry 4.0 – Open IoT Summit NA 2018
Benjamin Cabé
 
JVM-Con 2017 – Java and IoT, will it blend?
JVM-Con 2017 – Java and IoT, will it blend?JVM-Con 2017 – Java and IoT, will it blend?
JVM-Con 2017 – Java and IoT, will it blend?
Benjamin Cabé
 
Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Examining the emergent open source IoT ecosystem - IoT World Europe 2016Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Benjamin Cabé
 
Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...
Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...
Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...
Benjamin Cabé
 
The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016
The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016
The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016
Benjamin Cabé
 
On making standards organizations & open source communities work hand in hand
On making standards organizations & open source communities work hand in handOn making standards organizations & open source communities work hand in hand
On making standards organizations & open source communities work hand in hand
Benjamin Cabé
 
Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016
Benjamin Cabé
 
Building the IoT - Coding Serbia 2015
Building the IoT - Coding Serbia 2015Building the IoT - Coding Serbia 2015
Building the IoT - Coding Serbia 2015
Benjamin Cabé
 
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoTDevoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Benjamin Cabé
 
Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...
Benjamin Cabé
 
End-to-end IoT solutions with Java and the Eclipse IoT stack
End-to-end IoT solutions with Java and the Eclipse IoT stackEnd-to-end IoT solutions with Java and the Eclipse IoT stack
End-to-end IoT solutions with Java and the Eclipse IoT stack
Benjamin Cabé
 
Powering your next IoT application with MQTT - JavaOne 2014 tutorial
Powering your next IoT application with MQTT - JavaOne 2014 tutorialPowering your next IoT application with MQTT - JavaOne 2014 tutorial
Powering your next IoT application with MQTT - JavaOne 2014 tutorial
Benjamin Cabé
 
End-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoTEnd-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoT
Benjamin Cabé
 
Open-source IoT cookbook
Open-source IoT cookbookOpen-source IoT cookbook
Open-source IoT cookbookBenjamin Cabé
 
Building the Internet of Things with Eclipse IoT - IoTBE meetup
Building the Internet of Things with Eclipse IoT - IoTBE meetupBuilding the Internet of Things with Eclipse IoT - IoTBE meetup
Building the Internet of Things with Eclipse IoT - IoTBE meetup
Benjamin Cabé
 
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014Benjamin Cabé
 
What's new at Eclipse IoT - EclipseCon 2014
What's new at Eclipse IoT - EclipseCon 2014What's new at Eclipse IoT - EclipseCon 2014
What's new at Eclipse IoT - EclipseCon 2014Benjamin Cabé
 
Overview of Eclipse IoT projects - IoT Day Grenoble
Overview of Eclipse IoT projects - IoT Day GrenobleOverview of Eclipse IoT projects - IoT Day Grenoble
Overview of Eclipse IoT projects - IoT Day Grenoble
Benjamin Cabé
 
Open (source) API for the Internet of Things - APIdays 2013
Open (source) API for the Internet of Things - APIdays 2013Open (source) API for the Internet of Things - APIdays 2013
Open (source) API for the Internet of Things - APIdays 2013Benjamin Cabé
 

More from Benjamin Cabé (20)

IoT Developer Survey 2018
IoT Developer Survey 2018IoT Developer Survey 2018
IoT Developer Survey 2018
 
Open Source for Industry 4.0 – Open IoT Summit NA 2018
Open Source for Industry 4.0 – Open IoT Summit NA 2018Open Source for Industry 4.0 – Open IoT Summit NA 2018
Open Source for Industry 4.0 – Open IoT Summit NA 2018
 
JVM-Con 2017 – Java and IoT, will it blend?
JVM-Con 2017 – Java and IoT, will it blend?JVM-Con 2017 – Java and IoT, will it blend?
JVM-Con 2017 – Java and IoT, will it blend?
 
Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Examining the emergent open source IoT ecosystem - IoT World Europe 2016Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Examining the emergent open source IoT ecosystem - IoT World Europe 2016
 
Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...
Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...
Running UK railway with Eclipse Paho and Eclipse Mosquitto – Eclipse IoT Day ...
 
The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016
The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016
The Right Tools for IoT Developers – Dan Gross @ Eclipse IoT Day ThingMonk 2016
 
On making standards organizations & open source communities work hand in hand
On making standards organizations & open source communities work hand in handOn making standards organizations & open source communities work hand in hand
On making standards organizations & open source communities work hand in hand
 
Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016
 
Building the IoT - Coding Serbia 2015
Building the IoT - Coding Serbia 2015Building the IoT - Coding Serbia 2015
Building the IoT - Coding Serbia 2015
 
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoTDevoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
 
Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...Manage all the things, small and big, with open source LwM2M implementations ...
Manage all the things, small and big, with open source LwM2M implementations ...
 
End-to-end IoT solutions with Java and the Eclipse IoT stack
End-to-end IoT solutions with Java and the Eclipse IoT stackEnd-to-end IoT solutions with Java and the Eclipse IoT stack
End-to-end IoT solutions with Java and the Eclipse IoT stack
 
Powering your next IoT application with MQTT - JavaOne 2014 tutorial
Powering your next IoT application with MQTT - JavaOne 2014 tutorialPowering your next IoT application with MQTT - JavaOne 2014 tutorial
Powering your next IoT application with MQTT - JavaOne 2014 tutorial
 
End-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoTEnd-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoT
 
Open-source IoT cookbook
Open-source IoT cookbookOpen-source IoT cookbook
Open-source IoT cookbook
 
Building the Internet of Things with Eclipse IoT - IoTBE meetup
Building the Internet of Things with Eclipse IoT - IoTBE meetupBuilding the Internet of Things with Eclipse IoT - IoTBE meetup
Building the Internet of Things with Eclipse IoT - IoTBE meetup
 
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014
 
What's new at Eclipse IoT - EclipseCon 2014
What's new at Eclipse IoT - EclipseCon 2014What's new at Eclipse IoT - EclipseCon 2014
What's new at Eclipse IoT - EclipseCon 2014
 
Overview of Eclipse IoT projects - IoT Day Grenoble
Overview of Eclipse IoT projects - IoT Day GrenobleOverview of Eclipse IoT projects - IoT Day Grenoble
Overview of Eclipse IoT projects - IoT Day Grenoble
 
Open (source) API for the Internet of Things - APIdays 2013
Open (source) API for the Internet of Things - APIdays 2013Open (source) API for the Internet of Things - APIdays 2013
Open (source) API for the Internet of Things - APIdays 2013
 

Recently uploaded

National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 

Recently uploaded (20)

National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 

P2, the new Eclipse provisioning system

  • 1. p2 The new Eclipse provisioning system © Anyware Technologies-All Right Reserved Benjamin Cabé Anyware Technologies
  • 2. Agenda • p2, what's that? ►Origins ►Concepts ►Architecture overview • Using p2 ►As a developer © Anyware Technologies-All Right Reserved ►As an ISV ►As an end-user • Coming next (Galileo plan) Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 3. The origins : the « Update Manager » • Assessment ►The plug-in mechanism just rocks... ►... but installing or updating plug-ins by hand is cumbersome • Since Eclipse 2.1: the « Update Manager » ►allows to install & update « features » through GUI... © Anyware Technologies-All Right Reserved ►... which is way too messy for 99% of users Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 4. Update Manager's limitations • The feature doesn't fit all needs... ►deliver a product in different but very similar shapes? ►install more than just plug-ins & features? • ...neither does the update site ►ship features through different mirrors? © Anyware Technologies-All Right Reserved ►allow the end-user to perform the « initial » provisioning? Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 5. Here comes p2! • Reworked UI ►simplified workflow ►better performances • Provision the world! ►plug-ins, .exe, .ini, ... whatever © Anyware Technologies-All Right Reserved • A very modular framework ►provision more than just Eclipse stuff ►controllable from the outside “If it can be installed, it runs!” Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 6. Key features • Optimized updates & installs ►multithreaded downloads ►best mirror automatically picked • “Bundle pooling” ►shared plug-ins across many Eclipse instances © Anyware Technologies-All Right Reserved • Low-level provisioning APIs ►headless mode ►update a non-running instance • Installer Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 7. The concepts • Installable Unit : ►the description of what is being installed ►ID, version ►dependencies ►actions to perform during install / uninstall / ... © Anyware Technologies-All Right Reserved ►physical artifacts (optional) Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 8. The concepts (2) • Installable Units are stored in a metadata repository • The actual content (plug-ins, zips, ...) lives in an © Anyware Technologies-All Right Reserved artifact repository Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 9. Useful terminology • Profile ►the target of the installed stuff • Planner ►the entity that converts a list of IUs to install in a © Anyware Technologies-All Right Reserved given profile into provisioning steps Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 10. Useful terminology (2) • Engine ►the mechanism for executing provisioning requests • Touchpoint ►the part of the engine © Anyware Technologies-All Right Reserved that actually integrates the provisioning system in a given platform Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 11. « Big Picture » © Anyware Technologies-All Right Reserved Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 12. Using p2... as an Eclipse developer • Save hundreds of Mb thanks to bundle pooling • Describe a well-defined, reproducible, development environment © Anyware Technologies-All Right Reserved • Use the dropins folder to perform quick installs • Manage target platforms elegantly Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 13. Using p2... as an ISV • Deliver an installer on a CD or an USB key • Propose different flavours of your product depending on the customer © Anyware Technologies-All Right Reserved • Deploy a mirror in your customer's information system Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 14. Using p2... as an end-user • Get automatic updates • Enjoy a clean uninstalling process • Get annoyed by some bugs or missing © Anyware Technologies-All Right Reserved documentation but... • ...Just relax! Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 15. Coming next • A real p2 API • User interaction ►improve progress/error reporting ►tighter desktop integration (shortcuts, registry keys, ...) • Tooling / Authoring © Anyware Technologies-All Right Reserved ►IU editor ►Repository editors (artifact & metadata) • IBM, Cloudsmith, Siemens AG, Genuitec, Anyware Technologies... YOU! Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 16. Useful resources • The Eclipse wiki: ►http://wiki.eclipse.org/Equinox_p2 • The p2 newsgroup (general issues) ►news://news.eclipse.org/eclipse.technology.equinox © Anyware Technologies-All Right Reserved • The p2-dev mailing list (technical questions) ►https://dev.eclipse.org/mailman/listinfo/p2-dev Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 17. Thank you! Benjamin Cabé Eclipse Expert <benjamin.cabe@anyware-tech.com> © Anyware Technologies-All Right Reserved http://blog.benjamin-cabe.com http://www.anyware-tech.com Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 18. Legal notices • Eclipse and the Eclipse logo are trademarks of Eclipse Foundation, Inc. • OSGi is a registered trademark of the OSGi Alliance in the United States, other countries or both. • Other company, product, or service names may be © Anyware Technologies-All Right Reserved trademarks or service marks of others Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence
  • 19. Photo & Illustration credits • Michal Zacharzewski ► http://www.sxc.hu/photo/953139 • G Schouten de Jel ► http://www.sxc.hu/photo/1090308 • Andrej Sevelin ► http://www.sxc.hu/photo/892243 • Dave Di Biase ► http://www.sxc.hu/photo/204676 © Anyware Technologies-All Right Reserved • dunkv@flickr ► http://www.flickr.com/photos/dunkv/97119622 • Cathy Kaplan ► http://www.sxc.hu/photo/283374 • Mac Pale ► http://www.sxc.hu/photo/956527 Copyright © 2008 Anyware Technologies, Made available under the Creative Commons Attribution-Non commercial-No derivative 2.0 licence