SlideShare une entreprise Scribd logo
1  sur  36
Automate
Madhu Kanoor, Greg McCullough
Agenda
Recently Added Features
Future Enhancements
Recently Added Features
RBAC
METHOD::
.missing - (instance_name)
RBAC
Automate Methods should only be allowed to see objects that
they can access based on Tenant.
Backward Compatibility
● Enable RBAC $evm.enable_rbac
● Disable RBAC $evm.disable_rbac
● Query RBAC $evm.rbac_enabled?
Default Setting
● Disabled
RBAC
Future Version
● Global Automate configuration
○ Strict (Default)
○ Method controlled
○ Disabled
METHOD::
● Optionally allows a state field to directly contain a method
● Methods can be stored in the same class
Advantages
● Don’t need method instances to accompany each method
● Reduces the number of instances in the Automate
Database
METHOD::
Before: After:
METHOD::
.missing - (instance_name)
The .missing instance contains default values for use when
an instance is not found.
● A new attribute _missing_instance contains the name of
the original instance
● Can be used in substitution e.g ${#_missing_instance}
● This attribute is only available on the .missing instance
.missing - (instance_name)
Advantages
● Reduces the number of instances in Automate
● Can be substituted into any field
_missing_instance
/ConfigurationManagement/AnsibleTower/Operations/JobTemplate/MyTemplate
.missing
If MyTemplate doesn’t exist
_missing_instance = MyTemplate
Future Enhancements
Git integration
Expression Method
Consolidated Email
Enhanced state-machine messaging
State-machine stats
Custom buttons - Multiple Items
Scheduled Automate Tasks
Git Integration
● Import an Automate Domain from Git Repositories
● User can select a Branch or Tag
● Automate Model stored in Postgres DB and shared between
appliances
● Branches and Tags stored in Postgres DB
● Domains are locked
● Sync overwrites existing domain
● A single appliance acts as a Git Owner
● Refresh and Import calls get routed to the Git Owner
Appliance
● Rest API call to initiate domain updates
Git Integration
Git Integration
Appliance1
Appliance 2
Appliance 3
Appliance 4
Repos
Postgres
Repos
Git Integration
Demo
Expression Method
New Automate Method that uses Expressions
● Expression Method runs inside the Automate Engine
● Ideal for Dynamic Dialogs
● Results can be processed as Hash, Array
● RBAC enforced
● Expression stored in Automate model
● Works on a single database object
Advantages:
● Performance - No DRb overhead
Comparison of Expression Method
Engine
DRb (Server)
DRb (Client)
Method
Script
Postgres
Engine
Regular Automate Method
Automate Expression
Method
Editing Expression Methods
Sample
Expression Method
● Demo
Email Consolidation
● Uses a single built-in method
● Define email parameters in instance
● Fetch values from config object
● Default implementation does not require scripts
Model Comparison
Classes Instances External
Methods
Built-in
Methods
Current Model 15 41 39 1
Consolidated 1 61 0 1
New Email Class and Instances
New Email Schema
Sample Email Instance
New features to support Consolidated Email
● Null Coalescing Operator
● Substitution support for methods with arguments
● Accessing VMDB Objects from model
Null Coalescing Operator
● Multiple String values separated by “||”
● Evaluated on new attribute data type “Null Coalescing”
● Order dependent, left to right evaluation
● First non-blank value is used
● Skip and warn about missing objects
e.g.
${/#owner.email} || ${/#miq_request.get_option(:owner_email)} ||
${/#miq_request.requester.email} || ${/#config.to_email_address}
Substitution enhancement
● Support methods with arguments
● ${/#miq_request.get_option(:owner_email)}
Accessing VMDB objects
● Class Schema allows for the following new data types
○ EMS (Provider)
○ Host
○ Policy
○ Provision
○ Request
○ Server
○ Storage
○ User
○ VM (or Template)
Enhanced State Machine Messaging
● Adopted Kevin Morey’s update_provision_status method enhancements
Sample
State Machine Runtime Statistics
● Record the following stats when we execute a state
○ Start Time
○ End Time
○ Number of Retries
○ Status (ok/retry/warn/error)
○ Server IDs where it was executed
● State Machine Visualizer
○ During execution
Additional Items
● Custom Button Multi Select
○ Allow user to select multiple items (vm, host, …)
● Rest Integration
○ RBAC
● Running automate methods inside a docker container
○ Security
● Schedule Automate Tasks
○ Schedule Automate Tasks from UI
Q&A

Contenu connexe

Tendances

Unit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScriptUnit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScript
Rob Myers
 
JavaScript (without DOM)
JavaScript (without DOM)JavaScript (without DOM)
JavaScript (without DOM)
Piyush Katariya
 
9781305078444 ppt ch04
9781305078444 ppt ch049781305078444 ppt ch04
9781305078444 ppt ch04
Terry Yoast
 

Tendances (20)

JavaScript Object Oriented Programming Cheat Sheet
JavaScript Object Oriented Programming Cheat SheetJavaScript Object Oriented Programming Cheat Sheet
JavaScript Object Oriented Programming Cheat Sheet
 
JavaScript Coding Guidelines
JavaScript Coding GuidelinesJavaScript Coding Guidelines
JavaScript Coding Guidelines
 
Javascript
JavascriptJavascript
Javascript
 
How to add Fixtures into your Django app with Mixer
How to add Fixtures into your Django app with MixerHow to add Fixtures into your Django app with Mixer
How to add Fixtures into your Django app with Mixer
 
2014 10 java 8 major new language features
2014 10 java 8 major new language features2014 10 java 8 major new language features
2014 10 java 8 major new language features
 
Unit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScriptUnit-Testing Your Legacy JavaScript
Unit-Testing Your Legacy JavaScript
 
Variables in Pharo5
Variables in Pharo5Variables in Pharo5
Variables in Pharo5
 
Advanced Reflection in Pharo
Advanced Reflection in PharoAdvanced Reflection in Pharo
Advanced Reflection in Pharo
 
JavaScript (without DOM)
JavaScript (without DOM)JavaScript (without DOM)
JavaScript (without DOM)
 
What's new in Java 8
What's new in Java 8What's new in Java 8
What's new in Java 8
 
Scala Code Analysis at Codacy
Scala Code Analysis at CodacyScala Code Analysis at Codacy
Scala Code Analysis at Codacy
 
JavaScript | Introduction
JavaScript | IntroductionJavaScript | Introduction
JavaScript | Introduction
 
9781305078444 ppt ch04
9781305078444 ppt ch049781305078444 ppt ch04
9781305078444 ppt ch04
 
Declarative JavaScript concepts and implemetation
Declarative JavaScript concepts and implemetationDeclarative JavaScript concepts and implemetation
Declarative JavaScript concepts and implemetation
 
Metrics
MetricsMetrics
Metrics
 
Csharp
CsharpCsharp
Csharp
 
Reflection in Pharo5
Reflection in Pharo5Reflection in Pharo5
Reflection in Pharo5
 
QTP AUTOMATION TESTING SYLLABUS
QTP AUTOMATION TESTING SYLLABUSQTP AUTOMATION TESTING SYLLABUS
QTP AUTOMATION TESTING SYLLABUS
 
Command objects
Command objectsCommand objects
Command objects
 
Ajax
AjaxAjax
Ajax
 

En vedette

En vedette (10)

VMware vSphere - Adam Grare - ManageIQ Design Summit 2016
VMware vSphere - Adam Grare - ManageIQ Design Summit 2016VMware vSphere - Adam Grare - ManageIQ Design Summit 2016
VMware vSphere - Adam Grare - ManageIQ Design Summit 2016
 
New Chargeback - Sergio Ocon - ManageIQ Design Summit 2016
New Chargeback - Sergio Ocon - ManageIQ Design Summit 2016New Chargeback - Sergio Ocon - ManageIQ Design Summit 2016
New Chargeback - Sergio Ocon - ManageIQ Design Summit 2016
 
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
Google Cloud Platform - Eric Johnson, Joe Selman - ManageIQ Design Summit 2016
 
VMworld 2013: Storage DRS: Deep Dive and Best Practices to Suit Your Storage ...
VMworld 2013: Storage DRS: Deep Dive and Best Practices to Suit Your Storage ...VMworld 2013: Storage DRS: Deep Dive and Best Practices to Suit Your Storage ...
VMworld 2013: Storage DRS: Deep Dive and Best Practices to Suit Your Storage ...
 
Self-Service UI - Hapreet Kataria, Erik Clarizio - ManageIQ Design Summit 2016
Self-Service UI - Hapreet Kataria, Erik Clarizio - ManageIQ Design Summit 2016Self-Service UI - Hapreet Kataria, Erik Clarizio - ManageIQ Design Summit 2016
Self-Service UI - Hapreet Kataria, Erik Clarizio - ManageIQ Design Summit 2016
 
Sprint 55
Sprint 55Sprint 55
Sprint 55
 
Replication - Nick Carboni - ManageIQ Design Summit 2016
Replication - Nick Carboni - ManageIQ Design Summit 2016Replication - Nick Carboni - ManageIQ Design Summit 2016
Replication - Nick Carboni - ManageIQ Design Summit 2016
 
Managed Services - Mike Hulsman - ManageIQ Design Summit 2016
Managed Services - Mike Hulsman - ManageIQ Design Summit 2016Managed Services - Mike Hulsman - ManageIQ Design Summit 2016
Managed Services - Mike Hulsman - ManageIQ Design Summit 2016
 
High Availability - Brett Thurber - ManageIQ Design Summit 2016
High Availability - Brett Thurber - ManageIQ Design Summit 2016High Availability - Brett Thurber - ManageIQ Design Summit 2016
High Availability - Brett Thurber - ManageIQ Design Summit 2016
 
Sprint 56
Sprint 56Sprint 56
Sprint 56
 

Similaire à Automate - Madhu Kanoor, Greg McCullough - ManageIQ Design Summit 2016

Client Best Practices
Client Best PracticesClient Best Practices
Client Best Practices
Yuval Dagai
 
9781305078444 ppt ch02
9781305078444 ppt ch029781305078444 ppt ch02
9781305078444 ppt ch02
Terry Yoast
 

Similaire à Automate - Madhu Kanoor, Greg McCullough - ManageIQ Design Summit 2016 (20)

Design Summit - Automate roadmap - Madhu Kanoor
Design Summit - Automate roadmap - Madhu KanoorDesign Summit - Automate roadmap - Madhu Kanoor
Design Summit - Automate roadmap - Madhu Kanoor
 
Lambdas in Java 8
Lambdas in Java 8Lambdas in Java 8
Lambdas in Java 8
 
Client Best Practices
Client Best PracticesClient Best Practices
Client Best Practices
 
2011-02-03 LA RubyConf Rails3 TDD Workshop
2011-02-03 LA RubyConf Rails3 TDD Workshop2011-02-03 LA RubyConf Rails3 TDD Workshop
2011-02-03 LA RubyConf Rails3 TDD Workshop
 
Large-Scale Automated Storage on Kubernetes - Matt Schallert OSCON 2019
Large-Scale Automated Storage on Kubernetes - Matt Schallert OSCON 2019Large-Scale Automated Storage on Kubernetes - Matt Schallert OSCON 2019
Large-Scale Automated Storage on Kubernetes - Matt Schallert OSCON 2019
 
Java 8 Features
Java 8 FeaturesJava 8 Features
Java 8 Features
 
Design p atterns
Design p atternsDesign p atterns
Design p atterns
 
PyGrunn 2017 - Django Performance Unchained - slides
PyGrunn 2017 - Django Performance Unchained - slidesPyGrunn 2017 - Django Performance Unchained - slides
PyGrunn 2017 - Django Performance Unchained - slides
 
Automatic Machine Learning, AutoML
Automatic Machine Learning, AutoMLAutomatic Machine Learning, AutoML
Automatic Machine Learning, AutoML
 
Apache MADlib AI/ML
Apache MADlib AI/MLApache MADlib AI/ML
Apache MADlib AI/ML
 
Team AAA Pitch - Deeptech AI Hackathon
Team AAA Pitch - Deeptech AI HackathonTeam AAA Pitch - Deeptech AI Hackathon
Team AAA Pitch - Deeptech AI Hackathon
 
9781305078444 ppt ch02
9781305078444 ppt ch029781305078444 ppt ch02
9781305078444 ppt ch02
 
Productionalizing Spark ML
Productionalizing Spark MLProductionalizing Spark ML
Productionalizing Spark ML
 
OrigoDB - take the red pill
OrigoDB - take the red pillOrigoDB - take the red pill
OrigoDB - take the red pill
 
Rspec
RspecRspec
Rspec
 
Effective PHP. Part 1
Effective PHP. Part 1Effective PHP. Part 1
Effective PHP. Part 1
 
Clean code and refactoring
Clean code and refactoringClean code and refactoring
Clean code and refactoring
 
Extending Node.js using C++
Extending Node.js using C++Extending Node.js using C++
Extending Node.js using C++
 
Cassandra Talk: Austin JUG
Cassandra Talk: Austin JUGCassandra Talk: Austin JUG
Cassandra Talk: Austin JUG
 
Dotnet content
Dotnet contentDotnet content
Dotnet content
 

Plus de ManageIQ

Plus de ManageIQ (20)

ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
ManageIQ - Sprint 235 Review - Slide Deck
ManageIQ - Sprint 235 Review - Slide DeckManageIQ - Sprint 235 Review - Slide Deck
ManageIQ - Sprint 235 Review - Slide Deck
 
ManageIQ - Sprint 234 Review - Slide Deck
ManageIQ - Sprint 234 Review - Slide DeckManageIQ - Sprint 234 Review - Slide Deck
ManageIQ - Sprint 234 Review - Slide Deck
 
ManageIQ - Sprint 233 Review - Slide Deck
ManageIQ - Sprint 233 Review - Slide DeckManageIQ - Sprint 233 Review - Slide Deck
ManageIQ - Sprint 233 Review - Slide Deck
 
ManageIQ - Sprint 232 Review - Slide Deck
ManageIQ - Sprint 232 Review - Slide DeckManageIQ - Sprint 232 Review - Slide Deck
ManageIQ - Sprint 232 Review - Slide Deck
 
ManageIQ - Sprint 231 Review - Slide Deck
ManageIQ - Sprint 231 Review - Slide DeckManageIQ - Sprint 231 Review - Slide Deck
ManageIQ - Sprint 231 Review - Slide Deck
 
ManageIQ - Sprint 230 Review - Slide Deck
ManageIQ - Sprint 230 Review - Slide DeckManageIQ - Sprint 230 Review - Slide Deck
ManageIQ - Sprint 230 Review - Slide Deck
 
ManageIQ - Sprint 229 Review - Slide Deck
ManageIQ - Sprint 229 Review - Slide DeckManageIQ - Sprint 229 Review - Slide Deck
ManageIQ - Sprint 229 Review - Slide Deck
 
ManageIQ - Sprint 228 Review - Slide Deck
ManageIQ - Sprint 228 Review - Slide DeckManageIQ - Sprint 228 Review - Slide Deck
ManageIQ - Sprint 228 Review - Slide Deck
 
Sprint 227
Sprint 227Sprint 227
Sprint 227
 
Sprint 226
Sprint 226Sprint 226
Sprint 226
 
Sprint 225
Sprint 225Sprint 225
Sprint 225
 
Sprint 224
Sprint 224Sprint 224
Sprint 224
 
Sprint 223
Sprint 223Sprint 223
Sprint 223
 
Sprint 222
Sprint 222Sprint 222
Sprint 222
 
Sprint 221
Sprint 221Sprint 221
Sprint 221
 
Sprint 220
Sprint 220Sprint 220
Sprint 220
 
Sprint 219
Sprint 219Sprint 219
Sprint 219
 
Sprint 218
Sprint 218Sprint 218
Sprint 218
 
Sprint 217
Sprint 217Sprint 217
Sprint 217
 

Dernier

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

Automate - Madhu Kanoor, Greg McCullough - ManageIQ Design Summit 2016

Notes de l'éditeur

  1. No support for impersonation
  2. No support for impersonation
  3. All the newer models use the METHOD:: syntax and bundle the methods and instances into the same class as the state machines.
  4. Turn into better example
  5. Removd: Consolidated Approval
  6. Works with Import/Export
  7. /ManageIQ/Infrastructure/Configured_System/Provisioning/Email/ - 4 instances and 2 methods
  8. Test with Service Bundle with multiple VMs