Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
MIQ Code Management and Promotion
with special guests Ansible and Git
Jason Cornell, Daniel Garcia and JD Calder
2
Agenda
• Introductions
• Challenge and Solution
• Design
• Demos
• Current State and Next Steps
3
Who is Cox Automotive?
Our Vision
To transform the way the world
buys, sells and owns cars.
Our Mission
To provide key s...
4
Challenges to Automation Development
• Code (methods, dialogs, buttons, etc) are not in a repository
• Developer must cu...
5
Solution
Introducing the ManageIQ Developer Deployment Toolkit (DDT). The
toolkit includes custom developed helper tools...
6
DDT High Level Overview
Average Automation
Developer
7
What is the Developer Deployment Toolkit?
Quick demo of basic edit and push to developer’s lab appliance
8
What are the benefits of DDT
• Ability to follow software development practices
• Develop local via your favorite IDE
• ...
9
Demo of creating a new branch
• Bring MIQ customizations into code management with Git
• 7 different stores, Datastore (...
10
Rapid Code Promotion or Rollback
• Merge is done at the Git level
• Process is no different from daily dev
• Merge/prom...
11
Review Challenges to Automation Development
• Code (methods, dialogs, buttons, etc) are not in a repository
• Developer...
13
Conclusion
• DDT brings ManageIQ customization components into code
management
• Maintain state with branches
• Code lo...
14
Current and Future State
• Development and testing ~80% completed
• Want to perform unit testing via integration testin...
Thank you!
JD Calder
JD.Calder (at) coxautoinc.com
Jason Cornell
Jason.Cornell (at) coxautoinc.com
Daniel Garcia
Daniel.Ga...
Upcoming SlideShare
Loading in …5
×

Code Management and Promotion (DDT) - Jason Cornell - ManageIQ Design Summit 2016

251 views

Published on

"MIQ Code Management and Promotion with special guests Ansible and Git" by Jason Cornell, Daniel Garcia and JD Calder at ManageIQ Design Summit 2016

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Code Management and Promotion (DDT) - Jason Cornell - ManageIQ Design Summit 2016

  1. 1. MIQ Code Management and Promotion with special guests Ansible and Git Jason Cornell, Daniel Garcia and JD Calder
  2. 2. 2 Agenda • Introductions • Challenge and Solution • Design • Demos • Current State and Next Steps
  3. 3. 3 Who is Cox Automotive? Our Vision To transform the way the world buys, sells and owns cars. Our Mission To provide key solutions that create greater efficiencies in the automotive ecosystem. Our Values Our employees drive the growth of our business and strengthen our leadership position in the industry. Our Heritage A subsidiary of 116-year-old Cox Enterprises Inc., one of the world’s largest privately owned communications, media and automotive services companies.
  4. 4. 4 Challenges to Automation Development • Code (methods, dialogs, buttons, etc) are not in a repository • Developer must cut-n-paste code from IDE into the UI • Difficult to track development • Easy to step on another developer’s changes if not careful • Difficult to keep code synchronized between multiple environments • No easy method to promote code from development into production
  5. 5. 5 Solution Introducing the ManageIQ Developer Deployment Toolkit (DDT). The toolkit includes custom developed helper tools as well as integrations with: • Git: all code/configuration data • Deployment Automation: Ansible • IDE: RubyMine
  6. 6. 6 DDT High Level Overview Average Automation Developer
  7. 7. 7 What is the Developer Deployment Toolkit? Quick demo of basic edit and push to developer’s lab appliance
  8. 8. 8 What are the benefits of DDT • Ability to follow software development practices • Develop local via your favorite IDE • Commit and push your changes • Ruby gem cf_ddt updates the MIQ server on push • Can run unit test right after MIQ updates • Ability to rapidly revert back if issues
  9. 9. 9 Demo of creating a new branch • Bring MIQ customizations into code management with Git • 7 different stores, Datastore (automate), Buttons, Dialogs, Service Catalogs, Customization Templates, Roles
  10. 10. 10 Rapid Code Promotion or Rollback • Merge is done at the Git level • Process is no different from daily dev • Merge/promote/push to master branch • cf_ddt updates MIQ Production server with master branch • Rollback (restore from Git) if needed
  11. 11. 11 Review Challenges to Automation Development • Code (methods, dialogs, buttons, etc) are not in a repository • Developer must cut-n-paste code from IDE into the UI • Difficult to track development • Easy to step on another developer’s changes if not careful • Difficult to keep code synchronized between multiple environments • No easy method to promote code from development into production
  12. 12. 13 Conclusion • DDT brings ManageIQ customization components into code management • Maintain state with branches • Code locally, deploy to targeted ManageIQ server • Code rollback and regression testing • Rapid code promotion with low risk
  13. 13. 14 Current and Future State • Development and testing ~80% completed • Want to perform unit testing via integration testing • Want to enable nightly/weekly automation builds • Plan to publish to the MIQ Depot very soon • How does this align with MIQ vision? • Is anyone interested in helping complete/expand these capabilities? • What else can we enable with this functionality?
  14. 14. Thank you! JD Calder JD.Calder (at) coxautoinc.com Jason Cornell Jason.Cornell (at) coxautoinc.com Daniel Garcia Daniel.Garcia (at) coxautoinc.com 15

×