6. INTEL® CLOUD 6
Continuous Integration is a software development practice where
members of a team integrate their work frequently...
• http://martinfowler.com/articles/continuousIntegration.html
CI/CD
Continuous Delivery is about keeping your application in a state where it is
always able to deploy into production. Continuous Deployment is actually
deploying every change into production, every day or more frequently.
• http://martinfowler.com/delivery.html
10. INTEL® CLOUD 10
Components Evaluation
CI/CD components
Automation server
Version Control Software
Build System
Bug Tracking System
Notifications System
Code Analysis Reports
• Points to consider
• License
• Features
• Level of integration
• Installable
11. INTEL® CLOUD 11
Automation Server
License MIT
Features:
– Easy installation (java –jar jenkins.war)
– Easy configuration
– Rich plugin ecosystem
– Extensibility
– Distributed builds
Email Notifications and publishing reports.
Revision Control System Integration (Git*, CVS*, Subversion*)
Authentication (Jenkins User Database, LDAP, Unix database)Jenkins*
12. INTEL® CLOUD 12
Bug Tracking System
License GPLv2
Features:
– Customizable workflow/fields
– Plugin API
– Multiple Projects
– Full-text search
– Test planning integration
Notification Interfaces (Email, RSS, Atom, XMPP, Twitter)
Revision Control System Integration (Git, Mercurial, Bazaar,
CVS, Subversion, Perforce, Darcs)
https://en.wikipedia.org/wiki/Comparison_of_issue-tracking_systems
13. INTEL® CLOUD 13
Version Control Software
License GPLv2
Features:
– Branching and Merging model
– Small and Fast
– Distributed
– Data Assurance
– Staging Area
14. INTEL® CLOUD 14
Version Control Software II
License Apache License 2.0
Features:
– Git* integration
– User interfaces (Web, CLI)
– Support different databases
– Authentication methods
It’s based on the assumption that each commit
is reviewed separately
Gerrit*
Adding new features, fix some bugs, without breaking anything else?
Remember to mention the benefits for using these software development practices
Things to highlight:
Many solutions
Many possible configurations
Spending valuable time to install, configure and maintain
https://opensource.com/business/15/7/six-continuous-integration-tools
With this in mind we started this project to offer a common solution, I’m going to walkthrough the different phases of this project