DEVOPS JAVA
Continuous Integration with JenkinsBruno Tinoco07.07.2016
AGENDA
1. Introduction2. CI Strategy3. Jenkins setup4. Demo
GFT Group 03.09.2015 3
Who I am and What I doINTRODUCT ION
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
GFT Group 03.09.2015 4
CI is about Software QualityINTRODUCT ION
Improved Software Quality Process (SDLC) Automation (Software building) Integration (Process, People and Support Softwares) Standardization Agile Devops culture
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 S TRATEGY
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
GFT Group 03.09.2015 7
Operational ModelJENKINS SETUP
SOURCE CODESERVER
GFT Group 03.09.2015 8
Build StatusJENKINS SETUP
Build Status icons used by jenkins to measurebuild stability
DEMO
Jenkins in Action
GFT Group 03.09.2015 10
Jenkins Main ScreenDE MO
GFT Group 03.09.2015 11
Jenkins SetupDE MO
GFT Group 03.09.2015 12
Jenkins Configuration (System)DE MO
GFT Group 03.09.2015 13
Create new Project (Job)DE MO
GFT Group 03.09.2015 14
Project Configuration (Job)DE MO
GFT Group 03.09.2015 15
Main Project Screen (Job)DE MO
GFT Group 03.09.2015 16
Build Console Output (Logs)DE MO
GFT Group 03.09.2015 17
Build History and Last ResultsDE MO
GFT Group 03.09.2015 18
Build Changes (Commits)DE MO
GFT Group 03.09.2015 19
Build Status (All projects)DE MO
Thank [email protected] Software EngineerGFT Brasil