Slide 1

Slide 1 text

DEVOPS JAVA Continuous Integration with Jenkins Bruno Tinoco 07.07.2016

Slide 2

Slide 2 text

AGENDA 1. Introduction 2. CI Strategy 3. Jenkins setup 4. Demo

Slide 3

Slide 3 text

GFT Group 03.09.2015 3 Who I am and What I do INTRODUCTION GFT Group is a business change and technology consultancy trusted by the world’s leading financial services institutions bringing together advisory, creative and technology capabilities with innovation culture and specialist knowledge of the finance sector. Bruno Tinoco §  Father and Java Developer with more than 15 years of software development experience using the JavaEE platform for different companies from Financial to Travel and Distribution industries. §  Currently working as a Software Engineer at GFT Group for DeustcheBank projects. Previously I worked as IT Architect at IBM GBS projects. §  Almost 5 years working with continuous integration automation for projects using tools like Teamcity, Continuum, Harvest and Jenkins. §  Follow us §  https://twitter.com/gft_br §  https://twitter.com/brunocrt

Slide 4

Slide 4 text

GFT Group 03.09.2015 4 CI is about Software Quality INTRODUCTION §  Improved Software Quality Process (SDLC) §  Automation (Software building) §  Integration (Process, People and Support Softwares) §  Standardization §  Agile §  Devops culture

Slide 5

Slide 5 text

GFT Group 03.09.2015 5 Plan your builds §  Build organization §  How many build configurations (Project, Module, User defined) §  Build types (Snapshots/Release) §  Access control (Devops team, Developers) §  Notification (Email, Instant message, Dashboard) §  Build Configuration §  Repositories (SVN, Git, Nexus) §  Build dependencies (Compilers, Utilities, Code analysis) §  Third party tools (Sonar, uDeploy, Octopus, Docker) §  Deployment machines (Unix, windows, cloud) §  Build Times §  Build triggers (commit, hour, nightly, manually) §  Deploy conditions (Tests passing, Promote) CI STRATEGY

Slide 6

Slide 6 text

GFT Group 03.09.2015 6 What is Jenkins? JENKINS SETUP Open Source Continuous Integration/Delivery platform (former Hudson) §  Developed in Java but supports different build languages (Java, .NET, PHP...) §  Runs in Unix and Windows operating systems, also on Cloud §  More than 1k plugins (build, test, integration, deploy, reports) §  Extensible/Customisable (build your own plugins) §  Large and active community §  Used by many large companies

Slide 7

Slide 7 text

GFT Group 03.09.2015 7 Operational Model JENKINS SETUP SOURCE CODE SERVER

Slide 8

Slide 8 text

GFT Group 03.09.2015 8 Build Status JENKINS SETUP Build Status icons used by jenkins to measure build stability

Slide 9

Slide 9 text

DEMO Jenkins in Action

Slide 10

Slide 10 text

GFT Group 03.09.2015 10 Jenkins Main Screen DEMO

Slide 11

Slide 11 text

GFT Group 03.09.2015 11 Jenkins Setup DEMO

Slide 12

Slide 12 text

GFT Group 03.09.2015 12 Jenkins Configuration (System) DEMO

Slide 13

Slide 13 text

GFT Group 03.09.2015 13 Create new Project (Job) DEMO

Slide 14

Slide 14 text

GFT Group 03.09.2015 14 Project Configuration (Job) DEMO

Slide 15

Slide 15 text

GFT Group 03.09.2015 15 Main Project Screen (Job) DEMO

Slide 16

Slide 16 text

GFT Group 03.09.2015 16 Build Console Output (Logs) DEMO

Slide 17

Slide 17 text

GFT Group 03.09.2015 17 Build History and Last Results DEMO

Slide 18

Slide 18 text

GFT Group 03.09.2015 18 Build Changes (Commits) DEMO

Slide 19

Slide 19 text

GFT Group 03.09.2015 19 Build Status (All projects) DEMO

Slide 20

Slide 20 text

Thank you [email protected] Senior Software Engineer GFT Brasil