SlideShare uma empresa Scribd logo
1 de 35
Triple-E’ class DevOps 
with Hudson, Maven, Kokki 
Multiconf & PyDev 
Werner Keil 
PyUGAT 
15th October 2014
Images © 2 © 2012-2013 Creative Arts & Technologies Maersk Line and Others
Overview 
• Introduction 
• Kokki 
• Configuration 
• Multiconf 
• PyDev 
• Development 
• Maven 
• Build 
• Hudson 
• Automation 
• Demo 
•Q&A 
3 © 2012-2013 Creative Arts & Technologies
Who am I? 
Werner Keil 
• Consultant – Coach 
• Creative Cosmopolitan 
• Open Source Evangelist 
• Software Architect 
• Java Godfather 
• UOMo Project Lead 
• Mærsk DevOps Guy 
… 
Email werner@catmedia.us 
4 © 2012-2013 Creative Arts & Technologies 
Twitter @wernerkeil
Kokki 
• Infrastructure Automation → Configuration 
Management 
• Part of Provisioning 
• Library and simple command line tool 
• Currently no client/server component 
• Can use GitHub in place of client/server 
• Alternative to Puppet/Chef/Cfengine 
• Implemented in Python 
5 © 2012 Creative Arts & Technologies
Kokki | Terms 
• Kokki is a configuration management framework. 
• It can be used standalone or as a part of a more complex system. 
• It means “cook” in Finnish 
• Environment: Execution environment 
• Resource: Describes a file, service, package, etc.. 
• Provider: Knows how to execute a resource 
• Kitchen: Container for cookbooks 
• Cookbook: Container for recipes and libraries 
• Recipe: group of resource definitions 
• Library: utility methods, resources, and providers 
6 © 2012 Creative Arts & Technologies
Kokki | Quick Example 
from kokki import * 
with Environment() as env: 
Package("vim", action="upgrade") 
File("/etc/hosts", 
owner = "root", 
group = "root", 
content = "127.0.0.1 localhostn" 
"255.255.255.255 broadcasthostn" 
"::1 localhostn" 
"fe80::1%lo0 localhostn") 
env.run() 
7 © 2012 Creative Arts & Technologies
Kokki++ | Multiconf 
•Multiconf is a framework for describing complex 
environments using Python. 
•Why 
• It started from a simple need of continuous deployment of Java EE projects. 
• Using a bunch of Python scripts, and a bunch of plain text property files. 
• When number of property files increased number of scripts increased, too… 
• Out of this dilemma Multiconf was born. 
8 © 2012 Creative Arts & Technologies
Multiconf 
•How 
• Imagine a project, using multiple servers like Tomcat, Jetty, JBoss, Glassfish 
or Weblogic. 
• You are going to use database connections and four environments: 
• Local (for developer's local machine) 
• Dev 
• Test 
• Prod 
• Project configuration will be similar on different environments, but something 
will be different (databases and ports, for example). 
9 © 2012 Creative Arts & Technologies
Multiconf (2) 
•What Multiconf is not 
• Multiconf itself doesn't know how to create environments. 
• Multiconf doesn't know how to create any of the environment's components 
• Multiconf has nothing to execute 
• Perfect match for a system such as Kokki 
• Same language 
• Pluggable recipes and Libraries make Kokki open to such Extensions 
•What Multiconf is 
• Multiconf allows you to define your software stack and get early warning that 
something within your definition is wrong. Other tools use YAML or JSON to 
define settings of the components, but then you need something to validate 
those settings. Multiconf is both - definition and validation. 
10 © 2012 Creative Arts & Technologies
Multiconf | JSF Example 
from javax_faces import ProjectStage 
from valid_envs import local, dev, test, pp, prod 
def jsf_stages(): 
with ProjectStage() as ps: 
ps.name(local=”Development”, 
dev=”Development”, 
test=”UnitTest”, 
pp=”SystemTest”, 
prod=”Production”) 
11 © 2012 Creative Arts & Technologies
Multiconf | Inspired... 
Apache Tamaya 
• Started by 
• Anatole Tresch 
(Crédit Suisse) 
• Mit etwas Hilfe 
u.a. durch den 
„Java Godfather“ 
•Proposal for 
• An Apache Incubator Project 
• See.: https://github.com/java-config 
© 2012-2014 Creative Arts & Technologies
Multiconf | ”at Apache” 
Apache Tamaya 
•Scope 
• Provide type-safe enterprise-ready configuration standard for SE and EE 
(optionally also ME?) 
• Ensure it is a simple but extensible 
• Ready for complex scenarios like Java EE, Multi-Tenancy etc. 
• Ensure interoperability with existing solutions 
• Align Configuration Aspects with EE8 and the Java Platform 
• Other languages (as Apache is rather polyglot) 
© 2012-2014 Creative Arts & Technologies
Multiconf | ”at Apache” 
Apache Tamaya 
• State 
• Already running code base 
• Large support in User Groups around the world 
• Supported by leading industry experts 
© 2012-2014 Creative Arts & Technologies
PyDev 
•PyDev is a product of Appcelerator, a platform 
and services company that is enabling Web 
developers to build cross-platform / native 
applications for Mobile, Tablet and Desktop 
platforms 
Winner of 2011 Eclipse Award 
for Best Developer Tool 
Appcelerator also makes Aptana Studio and 
Titanium Studio, Eclipse-based IDEs targeting 
Web and Mobile platforms. 
15 © 2012 Creative Arts & Technologies
PyDev Now 
•PyDev ist now Open Source Project, 
lead by Fabio Zadrozny in Florianópolis, Brasil: 
www.pydev.org 
© 2012-2014 Creative Arts & Technologies Bilder © FIFA
PyDev | Code Completion 
17 © 2012 Creative Arts & Technologies
PyDev | Code Navigation 
18 © 2012 Creative Arts & Technologies
PyDev | Code Coverage 
19 © 2012 Creative Arts & Technologies
PyDev | Debugging 
20 © 2012 Creative Arts & Technologies
PyDev | Unit Tests 
21 © 2012 Creative Arts & Technologies
PyDev 
DEMO
Maven 
The evolution of build systems 
23 © 2012 Creative Arts & Technologies
Maven 
“Lean” Usage 
• Using Maven for what it’s Best at 
• Dependency Management 
• Nexus 
•Managed Environment 
• Generated / Called by Kokki 
• Hudson Plugins 
24 © 2012 Creative Arts & Technologies
Hudson 
•Hudson is a powerful and widely used open source 
continuous integration server providing 
development teams with a reliable way to monitor 
changes in source control and trigger a variety of 
builds. 
(The Hudson Book) 
25 © 2012 Creative Arts & Technologies
Hudson | Downloads 
26 © 2012 Creative Arts & Technologies
Hudson | Commits 
27 © 2012 Creative Arts & Technologies
Hudson | Job Coordination 
28 © 2012 Creative Arts & Technologies
Hudson | Job Coordination Triple-E size 
29 © 2012 Creative Arts & Technologies
Hudson | Promoted Builds 
30 © 2012 Creative Arts & Technologies
The Price of Continuous Integration 
32 © 2012 Creative Arts & Technologies
Let‘s talk 
Q & A
Links 
Kokki 
https://github.com/samuel/kokki 
Multiconf 
https://github.com/lhupfeldt/multiconf 
PyDev 
http://www.pydev.org
Links (2) 
Eclipse – Hudson 
http://www.eclipse.org/hudson/ 
Apache Maven 
http://www.apache.org/maven/
Twitter @wernerkeil 
Thank you Email werner@catmedia.us 
36 © 2012 Creative Arts & Technologies Images © Maersk Line

Mais conteúdo relacionado

Mais procurados (20)

Introduction to Maven
Introduction to MavenIntroduction to Maven
Introduction to Maven
 
Maven Overview
Maven OverviewMaven Overview
Maven Overview
 
Introduction to Apache Maven
Introduction to Apache MavenIntroduction to Apache Maven
Introduction to Apache Maven
 
Apache maven 2 overview
Apache maven 2 overviewApache maven 2 overview
Apache maven 2 overview
 
Apache Maven In 10 Slides
Apache Maven In 10 SlidesApache Maven In 10 Slides
Apache Maven In 10 Slides
 
Hands On with Maven
Hands On with MavenHands On with Maven
Hands On with Maven
 
Development Tools - Maven
Development Tools - MavenDevelopment Tools - Maven
Development Tools - Maven
 
Introduction to maven
Introduction to mavenIntroduction to maven
Introduction to maven
 
Demystifying Maven
Demystifying MavenDemystifying Maven
Demystifying Maven
 
Maven
MavenMaven
Maven
 
Maven 2 Introduction
Maven 2 IntroductionMaven 2 Introduction
Maven 2 Introduction
 
Maven 3 Overview
Maven 3  OverviewMaven 3  Overview
Maven 3 Overview
 
Maven
MavenMaven
Maven
 
Maven tutorial for beginners
Maven tutorial for beginnersMaven tutorial for beginners
Maven tutorial for beginners
 
Liferay maven sdk
Liferay maven sdkLiferay maven sdk
Liferay maven sdk
 
Maven plugins, properties en profiles: Advanced concepts in Maven
Maven plugins, properties en profiles: Advanced concepts in MavenMaven plugins, properties en profiles: Advanced concepts in Maven
Maven plugins, properties en profiles: Advanced concepts in Maven
 
Maven Presentation - SureFire vs FailSafe
Maven Presentation - SureFire vs FailSafeMaven Presentation - SureFire vs FailSafe
Maven Presentation - SureFire vs FailSafe
 
Maven
MavenMaven
Maven
 
(Re)-Introduction to Maven
(Re)-Introduction to Maven(Re)-Introduction to Maven
(Re)-Introduction to Maven
 
Maven
MavenMaven
Maven
 

Destaque

Correo institucional_Escuela de Verano
Correo institucional_Escuela de VeranoCorreo institucional_Escuela de Verano
Correo institucional_Escuela de VeranoElena Moreno
 
BAU International Executive MBA Webinar
BAU International Executive MBA WebinarBAU International Executive MBA Webinar
BAU International Executive MBA Webinarbauinternational
 
Ice Presentacio
Ice PresentacioIce Presentacio
Ice Presentacioaaupcfira
 
Elaboració del whisky de malta
Elaboració del whisky de maltaElaboració del whisky de malta
Elaboració del whisky de maltaJoan Mitjavila
 
iPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im VertriebiPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im Vertriebexcelsis
 
Biologie de synthèse
Biologie de synthèseBiologie de synthèse
Biologie de synthèseGreenFacts
 
Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"
Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"
Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"sosracismo
 
El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8Ymbra
 
Relaciones sociales en la Empresa - Sesion MasterUp
Relaciones sociales en la Empresa - Sesion MasterUpRelaciones sociales en la Empresa - Sesion MasterUp
Relaciones sociales en la Empresa - Sesion MasterUpJorge Galindo Cruces
 
Module 1 bilingual glossary
Module 1 bilingual glossaryModule 1 bilingual glossary
Module 1 bilingual glossaryFifthgrademiss
 
Información, Trucos y Consejos de impresión
Información, Trucos y Consejos de impresiónInformación, Trucos y Consejos de impresión
Información, Trucos y Consejos de impresiónimpresum
 
Arquitectura API Rest.
Arquitectura API Rest.Arquitectura API Rest.
Arquitectura API Rest.melidevelopers
 

Destaque (20)

Correo institucional_Escuela de Verano
Correo institucional_Escuela de VeranoCorreo institucional_Escuela de Verano
Correo institucional_Escuela de Verano
 
Social Media Marketing: mucho más que redes sociales
Social Media Marketing: mucho más que redes socialesSocial Media Marketing: mucho más que redes sociales
Social Media Marketing: mucho más que redes sociales
 
BAU International Executive MBA Webinar
BAU International Executive MBA WebinarBAU International Executive MBA Webinar
BAU International Executive MBA Webinar
 
Ice Presentacio
Ice PresentacioIce Presentacio
Ice Presentacio
 
Elaboració del whisky de malta
Elaboració del whisky de maltaElaboració del whisky de malta
Elaboració del whisky de malta
 
iPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im VertriebiPad sales app - Professionelles Präsentieren im Vertrieb
iPad sales app - Professionelles Präsentieren im Vertrieb
 
Le client au centre
Le client au centreLe client au centre
Le client au centre
 
Manual divulgativo life_urogallo
Manual divulgativo life_urogalloManual divulgativo life_urogallo
Manual divulgativo life_urogallo
 
Biologie de synthèse
Biologie de synthèseBiologie de synthèse
Biologie de synthèse
 
Qui acd alyr
Qui acd alyrQui acd alyr
Qui acd alyr
 
Bahamonde pereira
Bahamonde   pereiraBahamonde   pereira
Bahamonde pereira
 
Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"
Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"
Obras presentadas al Concurso "Arte por la Igualdad y contra el Racismo 2011"
 
El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8El universo JavaScript en Drupal 8
El universo JavaScript en Drupal 8
 
Problems in mathematical analysis
Problems in mathematical analysisProblems in mathematical analysis
Problems in mathematical analysis
 
Relaciones sociales en la Empresa - Sesion MasterUp
Relaciones sociales en la Empresa - Sesion MasterUpRelaciones sociales en la Empresa - Sesion MasterUp
Relaciones sociales en la Empresa - Sesion MasterUp
 
Module 1 bilingual glossary
Module 1 bilingual glossaryModule 1 bilingual glossary
Module 1 bilingual glossary
 
Información, Trucos y Consejos de impresión
Información, Trucos y Consejos de impresiónInformación, Trucos y Consejos de impresión
Información, Trucos y Consejos de impresión
 
Central Asia
Central AsiaCentral Asia
Central Asia
 
Consommer, S'engager
Consommer, S'engagerConsommer, S'engager
Consommer, S'engager
 
Arquitectura API Rest.
Arquitectura API Rest.Arquitectura API Rest.
Arquitectura API Rest.
 

Semelhante a Triple-E DevOps with Hudson, Maven, Kokki Multiconf & PyDev

Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDevTriple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDevWerner Keil
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for RealistsOracle Developers
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realistsKarthik Gaekwad
 
Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...
Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...
Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...Red Hat Developers
 
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentEclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentDevOps.com
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2Docker, Inc.
 
Docker and OpenStack Boston Meetup
Docker and OpenStack Boston MeetupDocker and OpenStack Boston Meetup
Docker and OpenStack Boston MeetupKamesh Pemmaraju
 
DEEP: a user success story
DEEP: a user success storyDEEP: a user success story
DEEP: a user success storyEOSC-hub project
 
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”Cisco DevNet
 
DockerPenang Meetup#1
DockerPenang Meetup#1DockerPenang Meetup#1
DockerPenang Meetup#1Sujay Pillai
 
SwissJUG_Bringing the cloud back down to earth.pptx
SwissJUG_Bringing the cloud back down to earth.pptxSwissJUG_Bringing the cloud back down to earth.pptx
SwissJUG_Bringing the cloud back down to earth.pptxGrace Jansen
 
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyAjeet Singh Raina
 
Developer Experience Overview
Developer Experience OverviewDeveloper Experience Overview
Developer Experience OverviewRoss Jimenez
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realistsKarthik Gaekwad
 
Introduction of CCE and DevCloud
Introduction of CCE and DevCloudIntroduction of CCE and DevCloud
Introduction of CCE and DevCloudOpsta
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT CampusAjeet Singh Raina
 
Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...Barton George
 
Docker open stack boston
Docker open stack bostonDocker open stack boston
Docker open stack bostondotCloud
 

Semelhante a Triple-E DevOps with Hudson, Maven, Kokki Multiconf & PyDev (20)

Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDevTriple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for Realists
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...
Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...
Developer joy for distributed teams with CodeReady Workspaces | DevNation Tec...
 
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentEclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe Development
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2
 
Docker and OpenStack Boston Meetup
Docker and OpenStack Boston MeetupDocker and OpenStack Boston Meetup
Docker and OpenStack Boston Meetup
 
DEEP: a user success story
DEEP: a user success storyDEEP: a user success story
DEEP: a user success story
 
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”DEVNET-1125	Partner Case Study - “Project Hybrid Engineer”
DEVNET-1125 Partner Case Study - “Project Hybrid Engineer”
 
DockerPenang Meetup#1
DockerPenang Meetup#1DockerPenang Meetup#1
DockerPenang Meetup#1
 
SwissJUG_Bringing the cloud back down to earth.pptx
SwissJUG_Bringing the cloud back down to earth.pptxSwissJUG_Bringing the cloud back down to earth.pptx
SwissJUG_Bringing the cloud back down to earth.pptx
 
Introduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of TechnologyIntroduction to Docker - Vellore Institute of Technology
Introduction to Docker - Vellore Institute of Technology
 
Developer Experience Overview
Developer Experience OverviewDeveloper Experience Overview
Developer Experience Overview
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
Why to docker
Why to dockerWhy to docker
Why to docker
 
Introduction of CCE and DevCloud
Introduction of CCE and DevCloudIntroduction of CCE and DevCloud
Introduction of CCE and DevCloud
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
 
Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...Implementing DevOps – How it came to the fore, its key elements and example d...
Implementing DevOps – How it came to the fore, its key elements and example d...
 
Docker open stack boston
Docker open stack bostonDocker open stack boston
Docker open stack boston
 
OpenStack Boston
OpenStack BostonOpenStack Boston
OpenStack Boston
 

Mais de Werner Keil

Securing eHealth, eGovernment and eBanking with Java - DWX '21
Securing eHealth, eGovernment and eBanking with Java - DWX '21Securing eHealth, eGovernment and eBanking with Java - DWX '21
Securing eHealth, eGovernment and eBanking with Java - DWX '21Werner Keil
 
OpenDDR and Jakarta MVC - JavaLand 2021
OpenDDR and Jakarta MVC - JavaLand 2021OpenDDR and Jakarta MVC - JavaLand 2021
OpenDDR and Jakarta MVC - JavaLand 2021Werner Keil
 
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021Werner Keil
 
OpenDDR and Jakarta MVC - Java2Days 2020 Virtual
OpenDDR and Jakarta MVC - Java2Days 2020 VirtualOpenDDR and Jakarta MVC - Java2Days 2020 Virtual
OpenDDR and Jakarta MVC - Java2Days 2020 VirtualWerner Keil
 
NoSQL Endgame - Java2Days 2020 Virtual
NoSQL Endgame - Java2Days 2020 VirtualNoSQL Endgame - Java2Days 2020 Virtual
NoSQL Endgame - Java2Days 2020 VirtualWerner Keil
 
JCON 2020: Mobile Java Web Applications with MVC and OpenDDR
JCON 2020: Mobile Java Web Applications with MVC and OpenDDRJCON 2020: Mobile Java Web Applications with MVC and OpenDDR
JCON 2020: Mobile Java Web Applications with MVC and OpenDDRWerner Keil
 
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020Werner Keil
 
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)Werner Keil
 
Money, Money, Money, can be funny with JSR 354 (DWX 2019)
Money, Money, Money, can be funny with JSR 354 (DWX 2019)Money, Money, Money, can be funny with JSR 354 (DWX 2019)
Money, Money, Money, can be funny with JSR 354 (DWX 2019)Werner Keil
 
NoSQL: The first New Jakarta EE Specification (DWX 2019)
NoSQL: The first New Jakarta EE Specification (DWX 2019)NoSQL: The first New Jakarta EE Specification (DWX 2019)
NoSQL: The first New Jakarta EE Specification (DWX 2019)Werner Keil
 
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR DayHow JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR DayWerner Keil
 
JNoSQL: The Definitive Solution for Java and NoSQL Databases
JNoSQL: The Definitive Solution for Java and NoSQL DatabasesJNoSQL: The Definitive Solution for Java and NoSQL Databases
JNoSQL: The Definitive Solution for Java and NoSQL DatabasesWerner Keil
 
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabasesEclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabasesWerner Keil
 
Physikal - Using Kotlin for Clean Energy - KUG Munich
Physikal - Using Kotlin for Clean Energy - KUG MunichPhysikal - Using Kotlin for Clean Energy - KUG Munich
Physikal - Using Kotlin for Clean Energy - KUG MunichWerner Keil
 
Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017
Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017
Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017Werner Keil
 
Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017Werner Keil
 
Eclipse Science F2F 2016 - JSR 363
Eclipse Science F2F 2016 - JSR 363Eclipse Science F2F 2016 - JSR 363
Eclipse Science F2F 2016 - JSR 363Werner Keil
 
Java2Days - Security for JavaEE and the Cloud
Java2Days - Security for JavaEE and the CloudJava2Days - Security for JavaEE and the Cloud
Java2Days - Security for JavaEE and the CloudWerner Keil
 
Apache DeviceMap - Web-Dev-BBQ Stuttgart
Apache DeviceMap - Web-Dev-BBQ StuttgartApache DeviceMap - Web-Dev-BBQ Stuttgart
Apache DeviceMap - Web-Dev-BBQ StuttgartWerner Keil
 
The First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
The First IoT JSR: Units of Measurement - JUG Berlin-BrandenburgThe First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
The First IoT JSR: Units of Measurement - JUG Berlin-BrandenburgWerner Keil
 

Mais de Werner Keil (20)

Securing eHealth, eGovernment and eBanking with Java - DWX '21
Securing eHealth, eGovernment and eBanking with Java - DWX '21Securing eHealth, eGovernment and eBanking with Java - DWX '21
Securing eHealth, eGovernment and eBanking with Java - DWX '21
 
OpenDDR and Jakarta MVC - JavaLand 2021
OpenDDR and Jakarta MVC - JavaLand 2021OpenDDR and Jakarta MVC - JavaLand 2021
OpenDDR and Jakarta MVC - JavaLand 2021
 
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
How JSR 385 could have Saved the Mars Climate Orbiter - Zurich IoT Day 2021
 
OpenDDR and Jakarta MVC - Java2Days 2020 Virtual
OpenDDR and Jakarta MVC - Java2Days 2020 VirtualOpenDDR and Jakarta MVC - Java2Days 2020 Virtual
OpenDDR and Jakarta MVC - Java2Days 2020 Virtual
 
NoSQL Endgame - Java2Days 2020 Virtual
NoSQL Endgame - Java2Days 2020 VirtualNoSQL Endgame - Java2Days 2020 Virtual
NoSQL Endgame - Java2Days 2020 Virtual
 
JCON 2020: Mobile Java Web Applications with MVC and OpenDDR
JCON 2020: Mobile Java Web Applications with MVC and OpenDDRJCON 2020: Mobile Java Web Applications with MVC and OpenDDR
JCON 2020: Mobile Java Web Applications with MVC and OpenDDR
 
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
How JSR 385 could have Saved the Mars Climate Orbiter - JFokus 2020
 
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
Money, Money, Money, can be funny with JSR 354 (Devoxx BE)
 
Money, Money, Money, can be funny with JSR 354 (DWX 2019)
Money, Money, Money, can be funny with JSR 354 (DWX 2019)Money, Money, Money, can be funny with JSR 354 (DWX 2019)
Money, Money, Money, can be funny with JSR 354 (DWX 2019)
 
NoSQL: The first New Jakarta EE Specification (DWX 2019)
NoSQL: The first New Jakarta EE Specification (DWX 2019)NoSQL: The first New Jakarta EE Specification (DWX 2019)
NoSQL: The first New Jakarta EE Specification (DWX 2019)
 
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR DayHow JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
How JSR 385 could have Saved the Mars Climate Orbiter - Adopt-a-JSR Day
 
JNoSQL: The Definitive Solution for Java and NoSQL Databases
JNoSQL: The Definitive Solution for Java and NoSQL DatabasesJNoSQL: The Definitive Solution for Java and NoSQL Databases
JNoSQL: The Definitive Solution for Java and NoSQL Databases
 
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabasesEclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Databases
 
Physikal - Using Kotlin for Clean Energy - KUG Munich
Physikal - Using Kotlin for Clean Energy - KUG MunichPhysikal - Using Kotlin for Clean Energy - KUG Munich
Physikal - Using Kotlin for Clean Energy - KUG Munich
 
Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017
Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017
Physikal - JSR 363 and Kotlin for Clean Energy - Java2Days 2017
 
Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017Performance Monitoring for the Cloud - Java2Days 2017
Performance Monitoring for the Cloud - Java2Days 2017
 
Eclipse Science F2F 2016 - JSR 363
Eclipse Science F2F 2016 - JSR 363Eclipse Science F2F 2016 - JSR 363
Eclipse Science F2F 2016 - JSR 363
 
Java2Days - Security for JavaEE and the Cloud
Java2Days - Security for JavaEE and the CloudJava2Days - Security for JavaEE and the Cloud
Java2Days - Security for JavaEE and the Cloud
 
Apache DeviceMap - Web-Dev-BBQ Stuttgart
Apache DeviceMap - Web-Dev-BBQ StuttgartApache DeviceMap - Web-Dev-BBQ Stuttgart
Apache DeviceMap - Web-Dev-BBQ Stuttgart
 
The First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
The First IoT JSR: Units of Measurement - JUG Berlin-BrandenburgThe First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
The First IoT JSR: Units of Measurement - JUG Berlin-Brandenburg
 

Último

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Último (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

Triple-E DevOps with Hudson, Maven, Kokki Multiconf & PyDev

  • 1. Triple-E’ class DevOps with Hudson, Maven, Kokki Multiconf & PyDev Werner Keil PyUGAT 15th October 2014
  • 2. Images © 2 © 2012-2013 Creative Arts & Technologies Maersk Line and Others
  • 3. Overview • Introduction • Kokki • Configuration • Multiconf • PyDev • Development • Maven • Build • Hudson • Automation • Demo •Q&A 3 © 2012-2013 Creative Arts & Technologies
  • 4. Who am I? Werner Keil • Consultant – Coach • Creative Cosmopolitan • Open Source Evangelist • Software Architect • Java Godfather • UOMo Project Lead • Mærsk DevOps Guy … Email werner@catmedia.us 4 © 2012-2013 Creative Arts & Technologies Twitter @wernerkeil
  • 5. Kokki • Infrastructure Automation → Configuration Management • Part of Provisioning • Library and simple command line tool • Currently no client/server component • Can use GitHub in place of client/server • Alternative to Puppet/Chef/Cfengine • Implemented in Python 5 © 2012 Creative Arts & Technologies
  • 6. Kokki | Terms • Kokki is a configuration management framework. • It can be used standalone or as a part of a more complex system. • It means “cook” in Finnish • Environment: Execution environment • Resource: Describes a file, service, package, etc.. • Provider: Knows how to execute a resource • Kitchen: Container for cookbooks • Cookbook: Container for recipes and libraries • Recipe: group of resource definitions • Library: utility methods, resources, and providers 6 © 2012 Creative Arts & Technologies
  • 7. Kokki | Quick Example from kokki import * with Environment() as env: Package("vim", action="upgrade") File("/etc/hosts", owner = "root", group = "root", content = "127.0.0.1 localhostn" "255.255.255.255 broadcasthostn" "::1 localhostn" "fe80::1%lo0 localhostn") env.run() 7 © 2012 Creative Arts & Technologies
  • 8. Kokki++ | Multiconf •Multiconf is a framework for describing complex environments using Python. •Why • It started from a simple need of continuous deployment of Java EE projects. • Using a bunch of Python scripts, and a bunch of plain text property files. • When number of property files increased number of scripts increased, too… • Out of this dilemma Multiconf was born. 8 © 2012 Creative Arts & Technologies
  • 9. Multiconf •How • Imagine a project, using multiple servers like Tomcat, Jetty, JBoss, Glassfish or Weblogic. • You are going to use database connections and four environments: • Local (for developer's local machine) • Dev • Test • Prod • Project configuration will be similar on different environments, but something will be different (databases and ports, for example). 9 © 2012 Creative Arts & Technologies
  • 10. Multiconf (2) •What Multiconf is not • Multiconf itself doesn't know how to create environments. • Multiconf doesn't know how to create any of the environment's components • Multiconf has nothing to execute • Perfect match for a system such as Kokki • Same language • Pluggable recipes and Libraries make Kokki open to such Extensions •What Multiconf is • Multiconf allows you to define your software stack and get early warning that something within your definition is wrong. Other tools use YAML or JSON to define settings of the components, but then you need something to validate those settings. Multiconf is both - definition and validation. 10 © 2012 Creative Arts & Technologies
  • 11. Multiconf | JSF Example from javax_faces import ProjectStage from valid_envs import local, dev, test, pp, prod def jsf_stages(): with ProjectStage() as ps: ps.name(local=”Development”, dev=”Development”, test=”UnitTest”, pp=”SystemTest”, prod=”Production”) 11 © 2012 Creative Arts & Technologies
  • 12. Multiconf | Inspired... Apache Tamaya • Started by • Anatole Tresch (Crédit Suisse) • Mit etwas Hilfe u.a. durch den „Java Godfather“ •Proposal for • An Apache Incubator Project • See.: https://github.com/java-config © 2012-2014 Creative Arts & Technologies
  • 13. Multiconf | ”at Apache” Apache Tamaya •Scope • Provide type-safe enterprise-ready configuration standard for SE and EE (optionally also ME?) • Ensure it is a simple but extensible • Ready for complex scenarios like Java EE, Multi-Tenancy etc. • Ensure interoperability with existing solutions • Align Configuration Aspects with EE8 and the Java Platform • Other languages (as Apache is rather polyglot) © 2012-2014 Creative Arts & Technologies
  • 14. Multiconf | ”at Apache” Apache Tamaya • State • Already running code base • Large support in User Groups around the world • Supported by leading industry experts © 2012-2014 Creative Arts & Technologies
  • 15. PyDev •PyDev is a product of Appcelerator, a platform and services company that is enabling Web developers to build cross-platform / native applications for Mobile, Tablet and Desktop platforms Winner of 2011 Eclipse Award for Best Developer Tool Appcelerator also makes Aptana Studio and Titanium Studio, Eclipse-based IDEs targeting Web and Mobile platforms. 15 © 2012 Creative Arts & Technologies
  • 16. PyDev Now •PyDev ist now Open Source Project, lead by Fabio Zadrozny in Florianópolis, Brasil: www.pydev.org © 2012-2014 Creative Arts & Technologies Bilder © FIFA
  • 17. PyDev | Code Completion 17 © 2012 Creative Arts & Technologies
  • 18. PyDev | Code Navigation 18 © 2012 Creative Arts & Technologies
  • 19. PyDev | Code Coverage 19 © 2012 Creative Arts & Technologies
  • 20. PyDev | Debugging 20 © 2012 Creative Arts & Technologies
  • 21. PyDev | Unit Tests 21 © 2012 Creative Arts & Technologies
  • 23. Maven The evolution of build systems 23 © 2012 Creative Arts & Technologies
  • 24. Maven “Lean” Usage • Using Maven for what it’s Best at • Dependency Management • Nexus •Managed Environment • Generated / Called by Kokki • Hudson Plugins 24 © 2012 Creative Arts & Technologies
  • 25. Hudson •Hudson is a powerful and widely used open source continuous integration server providing development teams with a reliable way to monitor changes in source control and trigger a variety of builds. (The Hudson Book) 25 © 2012 Creative Arts & Technologies
  • 26. Hudson | Downloads 26 © 2012 Creative Arts & Technologies
  • 27. Hudson | Commits 27 © 2012 Creative Arts & Technologies
  • 28. Hudson | Job Coordination 28 © 2012 Creative Arts & Technologies
  • 29. Hudson | Job Coordination Triple-E size 29 © 2012 Creative Arts & Technologies
  • 30. Hudson | Promoted Builds 30 © 2012 Creative Arts & Technologies
  • 31. The Price of Continuous Integration 32 © 2012 Creative Arts & Technologies
  • 33. Links Kokki https://github.com/samuel/kokki Multiconf https://github.com/lhupfeldt/multiconf PyDev http://www.pydev.org
  • 34. Links (2) Eclipse – Hudson http://www.eclipse.org/hudson/ Apache Maven http://www.apache.org/maven/
  • 35. Twitter @wernerkeil Thank you Email werner@catmedia.us 36 © 2012 Creative Arts & Technologies Images © Maersk Line