SlideShare una empresa de Scribd logo
1 de 66
Release Engineering
               with Tycho and P2
Matthias Köster
Lead SW Engineer IDE @ NumberFour AG
Eclipse DemoCamp Hamburg
14. Jun 2012




                                       by jin.thai on Flickr Some rights reserved.
N4 IDE
N4 IDE
‣ JavaScript IDE based on eclipse DLTK
N4 IDE
‣ JavaScript IDE based on eclipse DLTK
‣ Currently used company wide
 ‣ Platform team (Berlin)
 ‣ Application team (Hamburg)
N4 IDE
‣ JavaScript IDE based on eclipse DLTK
‣ Currently used company wide
 ‣ Platform team (Berlin)
 ‣ Application team (Hamburg)
‣ Released at least after each sprint
  (every 3 weeks)
Being a release
   engineer
Being a release
         engineer
‣ 10 years part time release engineer




                                                                      picture by Perrenque
                                        http://www.flickr.com/photos/perrenque/3289017892
Being a release
         engineer
‣ 10 years part time release engineer
‣ 5 years ant build for Poseidon for UML
 ‣ Tamed build.xml maintenance nightmare
   with generator feed from UML model




                                                                         picture by Perrenque
                                           http://www.flickr.com/photos/perrenque/3289017892
Being a release
         engineer
‣ 10 years part time release engineer
‣ 5 years ant build for Poseidon for UML
 ‣ Tamed build.xml maintenance nightmare
   with generator feed from UML model
‣ PDE ant build for Apollo for UML
   ‣ Undocumented at that time
   ‣ One person had all build knowledge
                                                                         picture by Perrenque
                                           http://www.flickr.com/photos/perrenque/3289017892
Why maven?
Why maven?aven ks to p
                         avin
                                       uste
                                                   r t in
                                            d expe thers. The w ho
                              ) is a tr dge on to o eans one w
                  (also m ass knowle                   dm
                                              dish, an nowledge.
                                                                  ular
                                                          a partic ord


      Am                                ia Yid
             h o see          e brew, v ulation of k
      field, w mes from H n accum
             co                  a
      maven nds, based on
              ta
       unders kipedia)
                i
       (from w
Why maven?  aven ks to p
                                    avin
                                                  uste
                                                              r t in
                                                       d expe thers. The w ho
                                         ) is a tr dge on to o eans one w
                             (also m ass knowle                   dm
                                                         dish, an nowledge.
                                                                             ular
                                                                     a partic ord


                 Am                                ia Yid
                        h o see          e brew, v ulation of k
                 field, w mes from H n accum
                        co                  a
                 maven nds, based on
                         ta
                  unders kipedia)
‣ I like maven    (from w
                           i
Why maven?           aven ks to p
                                             avin
                                                           uste
                                                                       r t in
                                                                d expe thers. The w ho
                                                  ) is a tr dge on to o eans one w
                                      (also m ass knowle                   dm
                                                                  dish, an nowledge.
                                                                                      ular
                                                                              a partic ord


                          Am                                ia Yid
                                 h o see          e brew, v ulation of k
                          field, w mes from H n accum
                                 co                  a
                          maven nds, based on
                                  ta
                           unders kipedia)
‣ I like maven             (from w
                                    i



‣ declarative instead of procedural
Why maven?           aven ks to p
                                             avin
                                                           uste
                                                                       r t in
                                                                d expe thers. The w ho
                                                  ) is a tr dge on to o eans one w
                                      (also m ass knowle                   dm
                                                                  dish, an nowledge.
                                                                                      ular
                                                                              a partic ord


                          Am                                ia Yid
                                 h o see          e brew, v ulation of k
                          field, w mes from H n accum
                                 co                  a
                          maven nds, based on
                                  ta
                           unders kipedia)
‣ I like maven             (from w
                                    i

                                                                              r
                                                               till use ant fo
‣ declarative instead of procedural                   You can s
                                                      proce dural hacks!
Why maven?           aven ks to p
                                             avin
                                                           uste
                                                                       r t in
                                                                d expe thers. The w ho
                                                  ) is a tr dge on to o eans one w
                                      (also m ass knowle                   dm
                                                                  dish, an nowledge.
                                                                                      ular
                                                                              a partic ord


                          Am                                ia Yid
                                 h o see          e brew, v ulation of k
                          field, w mes from H n accum
                                 co                  a
                          maven nds, based on
                                  ta
                           unders kipedia)
‣ I like maven             (from w
                                    i

                                                                              r
                                                               till use ant fo
‣ declarative instead of procedural                   You can s
                                                      proce dural hacks!

‣ transitive dependency resolution
Why maven?           aven ks to p
                                             avin
                                                           uste
                                                                       r t in
                                                                d expe thers. The w ho
                                                  ) is a tr dge on to o eans one w
                                      (also m ass knowle                   dm
                                                                  dish, an nowledge.
                                                                                      ular
                                                                              a partic ord


                          Am                                ia Yid
                                 h o see          e brew, v ulation of k
                          field, w mes from H n accum
                                 co                  a
                          maven nds, based on
                                  ta
                           unders kipedia)
‣ I like maven             (from w
                                    i

                                                                             r
                                                              till use ant fo
‣ declarative instead of procedural                 You can s
                                                    proce dural hacks!
                                                                       te rnet,
‣ transitive dependency resolution                        c
                                                                  he in e ;-)
                                                            kup t for m
                                                   e to ba ates it
                                            n‘t lik autom
                                        I do aven
                                         but m
Why maven?                aven ks to p
                                                  avin
                                                                uste
                                                                            r t in
                                                                     d expe thers. The w ho
                                                       ) is a tr dge on to o eans one w
                                           (also m ass knowle                   dm
                                                                       dish, an nowledge.
                                                                                           ular
                                                                                   a partic ord


                               Am                                ia Yid
                                      h o see          e brew, v ulation of k
                               field, w mes from H n accum
                                      co                  a
                               maven nds, based on
                                       ta
                                unders kipedia)
‣ I like maven                  (from w
                                         i

                                                                                  r
                                                                   till use ant fo
‣ declarative instead of procedural                      You can s
                                                         proce dural hacks!
                                                                            te rnet,
‣ transitive dependency resolution                             c
                                                                       he in e ;-)
                                                                 kup t for m
                                                        e to ba ates it
                                                 n‘t lik autom
                                             I do aven
‣ standard build life cycyle                  but m
Why maven?                aven ks to p
                                                  avin
                                                                uste
                                                                            r t in
                                                                     d expe thers. The w ho
                                                       ) is a tr dge on to o eans one w
                                           (also m ass knowle                   dm
                                                                       dish, an nowledge.
                                                                                           ular
                                                                                   a partic ord


                               Am                                ia Yid
                                      h o see          e brew, v ulation of k
                               field, w mes from H n accum
                                      co                  a
                               maven nds, based on
                                       ta
                                unders kipedia)
‣ I like maven                  (from w
                                         i

                                                                                  r
                                                                   till use ant fo
‣ declarative instead of procedural                      You can s
                                                         proce dural hacks!
                                                                            te rnet,
‣ transitive dependency resolution                             c
                                                                       he in e ;-)
                                                                 kup t for m
                                                        e to ba ates it
                                                 n‘t lik autom
                                             I do aven
‣ standard build life cycyle                  but m

‣ DI container allows easy extension
Why maven?                aven ks to p
                                                  avin
                                                                uste
                                                                            r t in
                                                                     d expe thers. The w ho
                                                       ) is a tr dge on to o eans one w
                                           (also m ass knowle                   dm
                                                                       dish, an nowledge.
                                                                                           ular
                                                                                   a partic ord


                               Am                                ia Yid
                                      h o see          e brew, v ulation of k
                               field, w mes from H n accum
                                      co                  a
                               maven nds, based on
                                       ta
                                unders kipedia)
‣ I like maven                  (from w
                                         i

                                                                                   r
                                                                    till use ant fo
‣ declarative instead of procedural                      You can s
                                                         proce  dural hacks!
                                                                             te rnet,
‣ transitive dependency resolution                              c
                                                                        he in e ;-)
                                                                  kup t for m
                                                        e to ba ates it
                                                 n‘t lik autom
                                             I do aven
‣ standard build life cycyle                  but m
                                                                                      s
                                                                          aven plugin
                                                            Writing m
‣ DI container allows easy extension                        is really ea
                                                                          sy & useful
                                                                                      !
Why maven?                aven ks to p
                                                  avin
                                                                uste
                                                                            r t in
                                                                     d expe thers. The w ho
                                                       ) is a tr dge on to o eans one w
                                           (also m ass knowle                   dm
                                                                       dish, an nowledge.
                                                                                           ular
                                                                                   a partic ord


                               Am                                ia Yid
                                      h o see          e brew, v ulation of k
                               field, w mes from H n accum
                                      co                  a
                               maven nds, based on
                                       ta
                                unders kipedia)
‣ I like maven                  (from w
                                         i

                                                                                   r
                                                                    till use ant fo
‣ declarative instead of procedural                      You can s
                                                         proce  dural hacks!
                                                                             te rnet,
‣ transitive dependency resolution                              c
                                                                        he in e ;-)
                                                                  kup t for m
                                                        e to ba ates it
                                                 n‘t lik autom
                                             I do aven
‣ standard build life cycyle                  but m
                                                                                      s
                                                                          aven plugin
                                                            Writing m
‣ DI container allows easy extension                        is really ea
                                                                          sy & useful
                                                                                      !


‣ de facto standard java build tool
Why difficult?




photo by huangjiahui on Flickr
Why difficult?




                                                         photo by huangjiahui on Flickr
‣ OSGi vs. Maven versions   1.0.0 < 1.0.0.
                                           qualifier
                            1.0.0-SNAPSH
                                            OT < 1.0.0
 ‣ WIP @ OSGi alliance
Why difficult?




                                                                                         photo by huangjiahui on Flickr
‣ OSGi vs. Maven versions     1.0.0 < 1.0.0.
                                             qualifier
                              1.0.0-SNAPSH
                                              OT < 1.0.0
 ‣ WIP @ OSGi alliance
‣ P2 vs. Maven repositories
 ‣ tycho unifies them




                                                 PONTO DE CONVERGÊNCIA (Convergence Point)
                                                                              Von jonycunha
Why difficult?




                                                                                         photo by huangjiahui on Flickr
‣ OSGi vs. Maven versions     1.0.0 < 1.0.0.
                                             qualifier
                              1.0.0-SNAPSH
                                              OT < 1.0.0
 ‣ WIP @ OSGi alliance
‣ P2 vs. Maven repositories
 ‣ tycho unifies them
‣ Eclipse build still very complex
 ‣ version numbers everywhere
 ‣ PDE build generates build.xml!
                                                 PONTO DE CONVERGÊNCIA (Convergence Point)
                                                                              Von jonycunha
Why tycho?
Why tycho?
‣ active, open and helpful community
Why tycho?
‣ active, open and helpful community
‣ easy things easy to do, difficult things possible
Why tycho?
‣ active, open and helpful community
‣ easy things easy to do, difficult things possible
‣ can use good PDE tooling
Why tycho?
‣ active, open and helpful community
‣ easy things easy to do, difficult things possible
‣ can use good PDE tooling
‣ tycho gains momentum at eclipse
 ‣ backed by sonatype & SAP
Why tycho?
‣ active, open and helpful community
‣ easy things easy to do, difficult things possible
‣ can use good PDE tooling
‣ tycho gains momentum at eclipse
 ‣ backed by sonatype & SAP
‣ already in use by several projects
 ‣ CBI, JBoss tools, EGit
Why tycho?
‣ active, open and helpful community
‣ easy things easy to do, difficult things possible
‣ can use good PDE tooling
‣ tycho gains momentum at eclipse
 ‣ backed by sonatype & SAP
‣ already in use by several projects
 ‣ CBI, JBoss tools, EGit
                                                 Vintage: Girls on a Donkey
                                                                Von deflam
N4 IDE Build
with tycho on jenkins
N4 IDE Build
   with tycho on jenkins
‣ Build with tycho since version 0.9.0
   ‣ Tests running on jenkins
N4 IDE Build
   with tycho on jenkins
‣ Build with tycho since version 0.9.0
   ‣ Tests running on jenkins
‣ But released manually with PDE export




                                          Women on Assembly Line Stamping Hams
                                                  Von Wisconsin Historical Images
N4 IDE Build
   with tycho on jenkins
‣ Build with tycho since version 0.9.0
   ‣ Tests running on jenkins
‣ But released manually with PDE export
‣ Missing features (Mac OS X)
 ‣ Branding
 ‣ Native launchers

                                          Women on Assembly Line Stamping Hams
                                                  Von Wisconsin Historical Images
Releasing with tycho
Releasing with tycho
‣ Since 09/2011 releasing
  with tycho 0.13.0




                            Assembly Line in Detroit Historical Museum
                                                         Von harry_nl
Releasing with tycho
‣ Since 09/2011 releasing
  with tycho 0.13.0
‣ Branding and native launchers by using
  eclipse-repository packaging




                                           Assembly Line in Detroit Historical Museum
                                                                        Von harry_nl
Releasing with tycho
‣ Since 09/2011 releasing
  with tycho 0.13.0
‣ Branding and native launchers by using
  eclipse-repository packaging
‣ P2 repositories for our IDE, IDL generator &
  SDK


                                           Assembly Line in Detroit Historical Museum
                                                                        Von harry_nl
Releasing with tycho
‣ Since 09/2011 releasing
  with tycho 0.13.0
‣ Branding and native launchers by using
  eclipse-repository packaging
‣ P2 repositories for our IDE, IDL generator &
  SDK
‣ Homemade maven plugin
  for native installers (msi, dmg)
                                           Assembly Line in Detroit Historical Museum
                                                                        Von harry_nl
Challenges when
releasing with tycho
Challenges when
     releasing with tycho




                                                http://www.flickr.com/photos/koenvereeken/2088902012
                                                               photo by Koen Vereeken
‣ Version numbers everywhere
 ‣ Maven pom.xml
 ‣ Eclipse MANIFEST.MF, feature.xml, .product
 ‣ P2 artifact.xml, content.xml
Challenges when
      releasing with tycho




                                                      http://www.flickr.com/photos/koenvereeken/2088902012
                                                                     photo by Koen Vereeken
‣ Version numbers everywhere
 ‣ Maven pom.xml
 ‣ Eclipse MANIFEST.MF, feature.xml, .product
 ‣ P2 artifact.xml, content.xml
‣ 6 updatesites, 2 products, 5 features, 70 plugins
Challenges when
      releasing with tycho




                                                      http://www.flickr.com/photos/koenvereeken/2088902012
                                                                     photo by Koen Vereeken
‣ Version numbers everywhere
 ‣ Maven pom.xml
 ‣ Eclipse MANIFEST.MF, feature.xml, .product
 ‣ P2 artifact.xml, content.xml
‣ 6 updatesites, 2 products, 5 features, 70 plugins
‣ tycho version < 1.0.0
 ‣ 0.15.0 faster, not tested yet
Challenges when
      releasing with tycho




                                                                              http://www.flickr.com/photos/koenvereeken/2088902012
                                                                                             photo by Koen Vereeken
‣ Version numbers everywhere
 ‣ Maven pom.xml
 ‣ Eclipse MANIFEST.MF, feature.xml, .product
 ‣ P2 artifact.xml, content.xml
‣ 6 updatesites, 2 products, 5 features, 70 plugins




                                                                                           Von Tambako the Jaguar
                                                      Nice leopard portrait
‣ tycho version < 1.0.0
 ‣ 0.15.0 faster, not tested yet
Module structure
       for tycho-versions-plugin
                                                                  parent

         rcpmail
        version 1.0.0
                                     plugin

        modules                     feature


                                   product
                                                  see also:
https://community.jboss.org/en/tools/blog/2011/09/17/coping-with-versions-in-large-multi-module-osgi-projects
Module structure
       for tycho-versions-plugin
                                                                  parent

         rcpmail
        version 1.0.0
                                     plugin
                                                                                     t!
                                                    Version defined by paren
        modules                     feature


                                   product
                                                  see also:
https://community.jboss.org/en/tools/blog/2011/09/17/coping-with-versions-in-large-multi-module-osgi-projects
Our current solution
Our current solution
‣ Using tycho-versions-plugin
Our current solution
‣ Using tycho-versions-plugin
‣ plugin & features dependencies
  with 0.0.0 version
Our current solution
‣ Using tycho-versions-plugin
‣ plugin & features dependencies
  with 0.0.0 version
‣ ant script for updating product version
Our current solution
‣ Using tycho-versions-plugin
‣ plugin & features dependencies
  with 0.0.0 version
‣ ant script for updating product version CK!!
                                         HA
                                         Don‘t try
                                                   !
                                       this at home
Our current solution
‣ Using tycho-versions-plugin
‣ plugin & features dependencies
  with 0.0.0 version
‣ ant script for updating product version CK!!
                                         HA
                                         Don‘t try
‣ Separate modules based               this at home
                                                   !

  on versioning needs
Our current solution
‣ Using tycho-versions-plugin
‣ plugin & features dependencies
  with 0.0.0 version
‣ ant script for updating product version CK!!
                                         HA
                                         Don‘t try
‣ Separate modules based               this at home
                                                   !

  on versioning needs
‣ Linux version schema
  1.0.0 < 1.0.1-SNAPSHOT < 1.0.2
Create native installers
  http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/
Create native installers
  http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/

                                                                        e m o
                                                                       D e
                                                                        T im
Create native installers
   http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/

                                                                         e m o
‣ Reuses metadata from *.product file                                    D e
  (license, version, manufactor)                                         T im
 ‣ on Mac OS X creates dmg installer
 ‣ on Windows creates msi installer
Create native installers
     http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/

                                                                           e m o
‣ Reuses metadata from *.product file                                      D e
  (license, version, manufactor)                                           T im
 ‣ on Mac OS X creates dmg installer
 ‣ on Windows creates msi installer
‣ Adapt application folder layout on
  Mac OS X (fixed in P2/Juno)
 ‣ https://bugs.eclipse.org/bugs/show_bug.cgi?id=57349

 ‣ http://prapicault.blogspot.ca/2012/05/eclipse-based-applications-as-
   standard.html
Q &A
Q &A
‣ Thank you for your attention!
Cloudy Build on
  CloudBees
Cloudy Build on
  CloudBees
Cloudy Build on
  CloudBees
Further improvements
Further improvements
‣ Still not mirroring P2 sites
 ‣ build instability
 ‣ bad open source citizen
 ‣ open sourced nexus
   p2 repository plugin didn‘t work for us
Further improvements
‣ Still not mirroring P2 sites
 ‣ build instability
 ‣ bad open source citizen
 ‣ open sourced nexus
   p2 repository plugin didn‘t work for us




                                             and licensed for reuse under this Creative Commons Licence.
‣ Small bug fix requires
  full product update




                                             © Copyright Christine Matthews

Más contenido relacionado

Último

Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyUXDXConf
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka DoktorováCzechDreamin
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Julian Hyde
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxJennifer Lim
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfFIDO Alliance
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsStefano
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...CzechDreamin
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...FIDO Alliance
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfFIDO Alliance
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
Top 10 Symfony Development Companies 2024
Top 10 Symfony Development Companies 2024Top 10 Symfony Development Companies 2024
Top 10 Symfony Development Companies 2024TopCSSGallery
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...CzechDreamin
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoTAnalytics
 

Último (20)

Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Top 10 Symfony Development Companies 2024
Top 10 Symfony Development Companies 2024Top 10 Symfony Development Companies 2024
Top 10 Symfony Development Companies 2024
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 

Destacado

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 

Destacado (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Release enginnering with tycho and p2

  • 1. Release Engineering with Tycho and P2 Matthias Köster Lead SW Engineer IDE @ NumberFour AG Eclipse DemoCamp Hamburg 14. Jun 2012 by jin.thai on Flickr Some rights reserved.
  • 3. N4 IDE ‣ JavaScript IDE based on eclipse DLTK
  • 4. N4 IDE ‣ JavaScript IDE based on eclipse DLTK ‣ Currently used company wide ‣ Platform team (Berlin) ‣ Application team (Hamburg)
  • 5. N4 IDE ‣ JavaScript IDE based on eclipse DLTK ‣ Currently used company wide ‣ Platform team (Berlin) ‣ Application team (Hamburg) ‣ Released at least after each sprint (every 3 weeks)
  • 6. Being a release engineer
  • 7. Being a release engineer ‣ 10 years part time release engineer picture by Perrenque http://www.flickr.com/photos/perrenque/3289017892
  • 8. Being a release engineer ‣ 10 years part time release engineer ‣ 5 years ant build for Poseidon for UML ‣ Tamed build.xml maintenance nightmare with generator feed from UML model picture by Perrenque http://www.flickr.com/photos/perrenque/3289017892
  • 9. Being a release engineer ‣ 10 years part time release engineer ‣ 5 years ant build for Poseidon for UML ‣ Tamed build.xml maintenance nightmare with generator feed from UML model ‣ PDE ant build for Apollo for UML ‣ Undocumented at that time ‣ One person had all build knowledge picture by Perrenque http://www.flickr.com/photos/perrenque/3289017892
  • 11. Why maven?aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) i (from w
  • 12. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i
  • 13. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i ‣ declarative instead of procedural
  • 14. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks!
  • 15. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks! ‣ transitive dependency resolution
  • 16. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks! te rnet, ‣ transitive dependency resolution c he in e ;-) kup t for m e to ba ates it n‘t lik autom I do aven but m
  • 17. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks! te rnet, ‣ transitive dependency resolution c he in e ;-) kup t for m e to ba ates it n‘t lik autom I do aven ‣ standard build life cycyle but m
  • 18. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks! te rnet, ‣ transitive dependency resolution c he in e ;-) kup t for m e to ba ates it n‘t lik autom I do aven ‣ standard build life cycyle but m ‣ DI container allows easy extension
  • 19. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks! te rnet, ‣ transitive dependency resolution c he in e ;-) kup t for m e to ba ates it n‘t lik autom I do aven ‣ standard build life cycyle but m s aven plugin Writing m ‣ DI container allows easy extension is really ea sy & useful !
  • 20. Why maven? aven ks to p avin uste r t in d expe thers. The w ho ) is a tr dge on to o eans one w (also m ass knowle dm dish, an nowledge. ular a partic ord Am ia Yid h o see e brew, v ulation of k field, w mes from H n accum co a maven nds, based on ta unders kipedia) ‣ I like maven (from w i r till use ant fo ‣ declarative instead of procedural You can s proce dural hacks! te rnet, ‣ transitive dependency resolution c he in e ;-) kup t for m e to ba ates it n‘t lik autom I do aven ‣ standard build life cycyle but m s aven plugin Writing m ‣ DI container allows easy extension is really ea sy & useful ! ‣ de facto standard java build tool
  • 21. Why difficult? photo by huangjiahui on Flickr
  • 22. Why difficult? photo by huangjiahui on Flickr ‣ OSGi vs. Maven versions 1.0.0 < 1.0.0. qualifier 1.0.0-SNAPSH OT < 1.0.0 ‣ WIP @ OSGi alliance
  • 23. Why difficult? photo by huangjiahui on Flickr ‣ OSGi vs. Maven versions 1.0.0 < 1.0.0. qualifier 1.0.0-SNAPSH OT < 1.0.0 ‣ WIP @ OSGi alliance ‣ P2 vs. Maven repositories ‣ tycho unifies them PONTO DE CONVERGÊNCIA (Convergence Point) Von jonycunha
  • 24. Why difficult? photo by huangjiahui on Flickr ‣ OSGi vs. Maven versions 1.0.0 < 1.0.0. qualifier 1.0.0-SNAPSH OT < 1.0.0 ‣ WIP @ OSGi alliance ‣ P2 vs. Maven repositories ‣ tycho unifies them ‣ Eclipse build still very complex ‣ version numbers everywhere ‣ PDE build generates build.xml! PONTO DE CONVERGÊNCIA (Convergence Point) Von jonycunha
  • 26. Why tycho? ‣ active, open and helpful community
  • 27. Why tycho? ‣ active, open and helpful community ‣ easy things easy to do, difficult things possible
  • 28. Why tycho? ‣ active, open and helpful community ‣ easy things easy to do, difficult things possible ‣ can use good PDE tooling
  • 29. Why tycho? ‣ active, open and helpful community ‣ easy things easy to do, difficult things possible ‣ can use good PDE tooling ‣ tycho gains momentum at eclipse ‣ backed by sonatype & SAP
  • 30. Why tycho? ‣ active, open and helpful community ‣ easy things easy to do, difficult things possible ‣ can use good PDE tooling ‣ tycho gains momentum at eclipse ‣ backed by sonatype & SAP ‣ already in use by several projects ‣ CBI, JBoss tools, EGit
  • 31. Why tycho? ‣ active, open and helpful community ‣ easy things easy to do, difficult things possible ‣ can use good PDE tooling ‣ tycho gains momentum at eclipse ‣ backed by sonatype & SAP ‣ already in use by several projects ‣ CBI, JBoss tools, EGit Vintage: Girls on a Donkey Von deflam
  • 32. N4 IDE Build with tycho on jenkins
  • 33. N4 IDE Build with tycho on jenkins ‣ Build with tycho since version 0.9.0 ‣ Tests running on jenkins
  • 34. N4 IDE Build with tycho on jenkins ‣ Build with tycho since version 0.9.0 ‣ Tests running on jenkins ‣ But released manually with PDE export Women on Assembly Line Stamping Hams Von Wisconsin Historical Images
  • 35. N4 IDE Build with tycho on jenkins ‣ Build with tycho since version 0.9.0 ‣ Tests running on jenkins ‣ But released manually with PDE export ‣ Missing features (Mac OS X) ‣ Branding ‣ Native launchers Women on Assembly Line Stamping Hams Von Wisconsin Historical Images
  • 37. Releasing with tycho ‣ Since 09/2011 releasing with tycho 0.13.0 Assembly Line in Detroit Historical Museum Von harry_nl
  • 38. Releasing with tycho ‣ Since 09/2011 releasing with tycho 0.13.0 ‣ Branding and native launchers by using eclipse-repository packaging Assembly Line in Detroit Historical Museum Von harry_nl
  • 39. Releasing with tycho ‣ Since 09/2011 releasing with tycho 0.13.0 ‣ Branding and native launchers by using eclipse-repository packaging ‣ P2 repositories for our IDE, IDL generator & SDK Assembly Line in Detroit Historical Museum Von harry_nl
  • 40. Releasing with tycho ‣ Since 09/2011 releasing with tycho 0.13.0 ‣ Branding and native launchers by using eclipse-repository packaging ‣ P2 repositories for our IDE, IDL generator & SDK ‣ Homemade maven plugin for native installers (msi, dmg) Assembly Line in Detroit Historical Museum Von harry_nl
  • 42. Challenges when releasing with tycho http://www.flickr.com/photos/koenvereeken/2088902012 photo by Koen Vereeken ‣ Version numbers everywhere ‣ Maven pom.xml ‣ Eclipse MANIFEST.MF, feature.xml, .product ‣ P2 artifact.xml, content.xml
  • 43. Challenges when releasing with tycho http://www.flickr.com/photos/koenvereeken/2088902012 photo by Koen Vereeken ‣ Version numbers everywhere ‣ Maven pom.xml ‣ Eclipse MANIFEST.MF, feature.xml, .product ‣ P2 artifact.xml, content.xml ‣ 6 updatesites, 2 products, 5 features, 70 plugins
  • 44. Challenges when releasing with tycho http://www.flickr.com/photos/koenvereeken/2088902012 photo by Koen Vereeken ‣ Version numbers everywhere ‣ Maven pom.xml ‣ Eclipse MANIFEST.MF, feature.xml, .product ‣ P2 artifact.xml, content.xml ‣ 6 updatesites, 2 products, 5 features, 70 plugins ‣ tycho version < 1.0.0 ‣ 0.15.0 faster, not tested yet
  • 45. Challenges when releasing with tycho http://www.flickr.com/photos/koenvereeken/2088902012 photo by Koen Vereeken ‣ Version numbers everywhere ‣ Maven pom.xml ‣ Eclipse MANIFEST.MF, feature.xml, .product ‣ P2 artifact.xml, content.xml ‣ 6 updatesites, 2 products, 5 features, 70 plugins Von Tambako the Jaguar Nice leopard portrait ‣ tycho version < 1.0.0 ‣ 0.15.0 faster, not tested yet
  • 46. Module structure for tycho-versions-plugin parent rcpmail version 1.0.0 plugin modules feature product see also: https://community.jboss.org/en/tools/blog/2011/09/17/coping-with-versions-in-large-multi-module-osgi-projects
  • 47. Module structure for tycho-versions-plugin parent rcpmail version 1.0.0 plugin t! Version defined by paren modules feature product see also: https://community.jboss.org/en/tools/blog/2011/09/17/coping-with-versions-in-large-multi-module-osgi-projects
  • 49. Our current solution ‣ Using tycho-versions-plugin
  • 50. Our current solution ‣ Using tycho-versions-plugin ‣ plugin & features dependencies with 0.0.0 version
  • 51. Our current solution ‣ Using tycho-versions-plugin ‣ plugin & features dependencies with 0.0.0 version ‣ ant script for updating product version
  • 52. Our current solution ‣ Using tycho-versions-plugin ‣ plugin & features dependencies with 0.0.0 version ‣ ant script for updating product version CK!! HA Don‘t try ! this at home
  • 53. Our current solution ‣ Using tycho-versions-plugin ‣ plugin & features dependencies with 0.0.0 version ‣ ant script for updating product version CK!! HA Don‘t try ‣ Separate modules based this at home ! on versioning needs
  • 54. Our current solution ‣ Using tycho-versions-plugin ‣ plugin & features dependencies with 0.0.0 version ‣ ant script for updating product version CK!! HA Don‘t try ‣ Separate modules based this at home ! on versioning needs ‣ Linux version schema 1.0.0 < 1.0.1-SNAPSHOT < 1.0.2
  • 55. Create native installers http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/
  • 56. Create native installers http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/ e m o D e T im
  • 57. Create native installers http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/ e m o ‣ Reuses metadata from *.product file D e (license, version, manufactor) T im ‣ on Mac OS X creates dmg installer ‣ on Windows creates msi installer
  • 58. Create native installers http://code.google.com/a/eclipselabs.org/p/tycho-installer-plugin/ e m o ‣ Reuses metadata from *.product file D e (license, version, manufactor) T im ‣ on Mac OS X creates dmg installer ‣ on Windows creates msi installer ‣ Adapt application folder layout on Mac OS X (fixed in P2/Juno) ‣ https://bugs.eclipse.org/bugs/show_bug.cgi?id=57349 ‣ http://prapicault.blogspot.ca/2012/05/eclipse-based-applications-as- standard.html
  • 59. Q &A
  • 60. Q &A ‣ Thank you for your attention!
  • 61. Cloudy Build on CloudBees
  • 62. Cloudy Build on CloudBees
  • 63. Cloudy Build on CloudBees
  • 65. Further improvements ‣ Still not mirroring P2 sites ‣ build instability ‣ bad open source citizen ‣ open sourced nexus p2 repository plugin didn‘t work for us
  • 66. Further improvements ‣ Still not mirroring P2 sites ‣ build instability ‣ bad open source citizen ‣ open sourced nexus p2 repository plugin didn‘t work for us and licensed for reuse under this Creative Commons Licence. ‣ Small bug fix requires full product update © Copyright Christine Matthews

Notas del editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n