INTEL® CLOUD
OpenStack* CI/CD for
Everyone Else
Victor Morales
INTEL® CLOUD 2
• Work for Intel since 2011
• OSIC Cloud engineer
• OpenStackGDL co-founder
• Passionate programmer
Victor Morales
https://about.me/electrocucaracha
INTEL® CLOUD
Solution
and/or
Idea
INTEL® CLOUD 4
Journey to production
InfrastructureSolution/Idea
https://twitter.com/emaganap/status/775095436830834688
to
INTEL® CLOUD
https://twitter.com/dfflanders/status/774642825451409408
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
INTEL® CLOUD 7
Development Infrastructure
INTEL® CLOUD
Put an idea in production in less than one day…
that can be maintainable through application lifecycle.
8
INTEL® CLOUD 9
Components
Implementation
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
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*
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
INTEL® CLOUD 13
Version Control Software
 License GPLv2
 Features:
– Branching and Merging model
– Small and Fast
– Distributed
– Data Assurance
– Staging Area
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*
INTEL® CLOUD 15
Architecture
cicd-router
Hostname: gerrit
Floating IP: ${gerrit_floatingip}
Hostname: jenkins
Floating IP: ${jenkins_floatingip}
Hostname: redmine
Floating IP: ${redmine_floatingip}
Hostname: redmine-db
Network: cicd-private
Subnet: cicd-subnet(192.168.50.0/24)
External Gateway(${var.external_gateway})
INTEL® CLOUD 16
Deployment
Implementation
INTEL® CLOUD 17
Deployment tool
Terraform
 License Mozilla Public License v2.0
 Features:
– Execution Plans
– Resource Graph
– Focused on bootstrapping and initializing resources
– Cloud-agnostic (e.g. AWS, GCP, Microsoft Azure, OpenStack)
– Provides a simple, unified syntax,
INTEL® CLOUD 18
Setup
INTEL® CLOUD 19
Demo
INTEL® CLOUD
Future plans
 High Availability (Load balancers, Clusters, etc.)
 Security Improvements
 Support more Cloud Providers
 ImmutableServer (http://martinfowler.com/bliki/ImmutableServer.html)
INTEL® CLOUD 21
https://github.com/openstack/osops-tools-contrib/tree/master/terraform/cicd
Thanks 
Intel technologies’ features and benefits depend on system configuration and may require
enabled hardware, software or service activation. Learn more at intel.com, or from the OEM or
retailer.
No computer system can be absolutely secure.
Tests document performance of components on a particular test, in specific systems. Differences
in hardware, software, or configuration will affect actual performance. Consult other sources of
information to evaluate performance as you consider your purchase. For more complete
information about performance and benchmark results, visit http://www.intel.com/performance.
Intel, the Intel logo and others are trademarks of Intel Corporation in the U.S. and/or other
countries. *Other names and brands may be claimed as the property of others.
© 2016 Intel Corporation.
Legal notices and disclaimers
CI/CD for everyone else

CI/CD for everyone else

  • 1.
    INTEL® CLOUD OpenStack* CI/CDfor Everyone Else Victor Morales
  • 2.
    INTEL® CLOUD 2 •Work for Intel since 2011 • OSIC Cloud engineer • OpenStackGDL co-founder • Passionate programmer Victor Morales https://about.me/electrocucaracha
  • 3.
  • 4.
    INTEL® CLOUD 4 Journeyto production InfrastructureSolution/Idea https://twitter.com/emaganap/status/775095436830834688 to
  • 5.
  • 6.
    INTEL® CLOUD 6 ContinuousIntegration 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
  • 7.
  • 8.
    INTEL® CLOUD Put anidea in production in less than one day… that can be maintainable through application lifecycle. 8
  • 9.
  • 10.
    INTEL® CLOUD 10 ComponentsEvaluation 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 AutomationServer  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 BugTracking 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 VersionControl Software  License GPLv2  Features: – Branching and Merging model – Small and Fast – Distributed – Data Assurance – Staging Area
  • 14.
    INTEL® CLOUD 14 VersionControl 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*
  • 15.
    INTEL® CLOUD 15 Architecture cicd-router Hostname:gerrit Floating IP: ${gerrit_floatingip} Hostname: jenkins Floating IP: ${jenkins_floatingip} Hostname: redmine Floating IP: ${redmine_floatingip} Hostname: redmine-db Network: cicd-private Subnet: cicd-subnet(192.168.50.0/24) External Gateway(${var.external_gateway})
  • 16.
  • 17.
    INTEL® CLOUD 17 Deploymenttool Terraform  License Mozilla Public License v2.0  Features: – Execution Plans – Resource Graph – Focused on bootstrapping and initializing resources – Cloud-agnostic (e.g. AWS, GCP, Microsoft Azure, OpenStack) – Provides a simple, unified syntax,
  • 18.
  • 19.
  • 20.
    INTEL® CLOUD Future plans High Availability (Load balancers, Clusters, etc.)  Security Improvements  Support more Cloud Providers  ImmutableServer (http://martinfowler.com/bliki/ImmutableServer.html)
  • 21.
  • 22.
    Intel technologies’ featuresand benefits depend on system configuration and may require enabled hardware, software or service activation. Learn more at intel.com, or from the OEM or retailer. No computer system can be absolutely secure. Tests document performance of components on a particular test, in specific systems. Differences in hardware, software, or configuration will affect actual performance. Consult other sources of information to evaluate performance as you consider your purchase. For more complete information about performance and benchmark results, visit http://www.intel.com/performance. Intel, the Intel logo and others are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others. © 2016 Intel Corporation. Legal notices and disclaimers

Editor's Notes

  • #3 Different companies have something in common
  • #4 Highlight the importance to start from scratch
  • #6 Adding new features, fix some bugs, without breaking anything else?
  • #7 Remember to mention the benefits for using these software development practices
  • #8 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
  • #9 With this in mind we started this project to offer a common solution, I’m going to walkthrough the different phases of this project
  • #11 Try to explain every single of them
  • #14 https://git-scm.com/about
  • #15 https://git-scm.com/about