SlideShare a Scribd company logo
1 of 38
Extending Ansible
When you want some more of your favorite tool
Ansible Benelux meetup, 11-02-2016
Amsterdam, Sentia
Pavel Chunyayev
@PavelChunyayev
Amsterdam
Levi9 HQ
Amsterdam – 2005
25 people
Novi Sad
Serbia
Novi Sad – 2005
320+ people
Zrenjanin
Serbia
Zrenjanin– 2014
30+ people
Iasi
Romania
Iasi – 2007
80+ people
Kiev
Ukraine
Kiev – 2008
130+ people
@PavelChunyayev
Electronic
Retail
Digital
Marketing
Traffic and
Transport
Software
Services
@PavelChunyayev
Customer satisfaction 2015
• 4th year great results in Outsourcing Performance study
• 2015: 100% customer recommendation score
Excellent trust score
@PavelChunyayev
About me
• 12 years of IT experience
• Lived and worked in Ukraine and Estonia
• Moved a year and half ago to the Netherlands
• Learning Dutch
• Love cycling
• De Hollandse 100 - https://www.dehollandse100.nl/actie/pavel-chunyayev
• Alpe d’HuZes - http://deelnemers.opgevenisgeenoptie.nl/levi9
Continuous Delivery
* I had to talk about Continuous Delivery shortly.
I’m Continuous Delivery Architect after all.
Safely, rapidly and predictably deliver
new features to production
@PavelChunyayev
Continuous Delivery
• Faster time to market
• How many deployments a day?
• Time between committing line of code and running in
production
It’s not only about speed
@PavelChunyayev
It’s not only about speed
• Right process to support continuous feature delivery,
improvements and learning.
• Proper testing to be able to deliver at high speed.
Quality > Speed
Continuous Delivery
Build • Test • Deploy
Ansible is perfect for Continuous Delivery
Especially with immutable infrastructure
Ansible is powerful out of the box
Extremely easy to extend
@PavelChunyayev
Plenty of information on the internet
• Most covers Ansible pre 2.0, but perfect to start with
• http://slides.com/alejandroguiraorodriguez/ee-ansible-with-python
• http://tylerturk.com/extending-ansible/
• http://www.slideshare.net/YanKurniawan1/extending-ansible
• http://www.llabs.io/ansible-action-plugins
• http://docs.ansible.com/ansible/developing.html
@PavelChunyayev
Extending Ansible
• Dynamic inventory
• Plugins
• Modules
• Python API
Dynamic inventory
@PavelChunyayev
Dynamic inventory
• http://docs.ansible.com/ansible/developing_inventory.html
• http://docs.ansible.com/ansible/intro_dynamic_inventory.html
• Just a script that returns JSON dictionary of all the groups
• Numerous dynamic inventory scripts:
https://github.com/ansible/ansible/tree/devel/contrib/inventory
• AWS, Azure, GCE, Digital Ocean, Docker, Openstack, Jails, Zabbix
• VMware, Virtualbox, Nagios, oVirt, Consul, etc.
@PavelChunyayev
More dynamic inventories?
• Combining several service providers
• SNMP
• LDAP
• Sentia :)
@PavelChunyayev
Ideas for dynamic inventories generated
during meetup
• SIDN
• CMDB
• nmap
• DNS (scan to identify inventory)
• Network inventory
• Ssh host config (from files)
• Bonjour / ZeroConf
• DHCP server
• Racktables (or similar services)
Plugins
@PavelChunyayev
Plugins
• http://docs.ansible.com/ansible/developing_plugins.html
• https://github.com/ansible/ansible/tree/devel/lib/ansible/plugins
• callback
• connection
• filter
• lookup
• strategy
@PavelChunyayev
Callback plugins
• React on certain events during
Ansible execution
• Some existing:
• OS X say
• HipChat
• Mail
• Syslog JSON
• Timer
• More?
• Send logs to ELK
• Send metrics to Grafana
• Leave audit trails
• Slack
• IRC
@PavelChunyayev
Ideas for callback plugins generated during
meetup
• Tags (assign tags based on execution)
• Backup (additional step before changing something)
• Change output
• Nagios (or general notification to monitoring systems)
@PavelChunyayev
Connection plugins
• More ways to connect to remote
systems
• Some existing:
• Docker
• chroot
• WinRM
• Jail
• LXC
• More?
• Someone using anything besides
SSH? :)
• SNMP
• SSH gateway
• Multifactor authentication
@PavelChunyayev
Filter plugins
• Jinja2 filters to use
• Some existing:
• Various sets manipulations (math)
• IP addresses manipulations
• String manipulations
• to / from JSON
• More?
• Test is the string is a valid
running AWS EC2 instance
• Convert AWS instance id into
instance name (IP, DNS name,
etc)
@PavelChunyayev
Ideas for connection plugins generated during
meetup
• telnet
• RADIUS
• WebDAV / HTTP
• mosh
• Serial
• IPMI
@PavelChunyayev
Lookup plugins
• Constructs like with_items:
• Some interesting existing
• consul
• dict
• dig
• etcd
• redis
• etc.
• More?
• RDBMS
• LDAP
• DNS (IN SRV)
@PavelChunyayev
Ideas for lookup plugins generated during
meetup
• Mongo
• Monitoring (e.g. top 10 hosts with problems)
• ElasticSearch
• Netstat (services or routing tables)
• Multicast
• IPtables / other firewalls
• Vnstat
• /etc/password (not a generic file lookup)
@PavelChunyayev
Strategy plugins
• How to execute tasks in
playbook
• Existing:
• Linear
• Free
• More?
• Random
• Some tasks free, some linear
@PavelChunyayev
Ideas for strategy plugins generated during
meetup
• One host, one task at a time
• Scoring (calculate the sequence based on the score)
Modules
@PavelChunyayev
Modules
• http://docs.ansible.com/ansible/developing_modules.html
• Reusable units of magic that can be used by the Ansible API, or by the
ansible or ansible-playbook programs.
• Reading official modules is a good way to start
• Test your module with hacking/test-module script
• Create pull request to modules-extra
@PavelChunyayev
Modules?
• Deploying your applications
• Configuring running applications
• Maven (manage artifacts)
• Usage of less popular applications
• LDAP manipulation / credentials checking
• All those AWS services that are not yet covered by modules
• Custom backup
• Pipelines as code
Ansible API
@PavelChunyayev
Execute Ansible programmatically
• Trigger Ansible run or Ansible-playbook from your application!
• React to some events with running Ansible playbook
• Get facts about infrastructure directly from an application
• Your own Infrastructure as a Service
@PavelChunyayev
Extending Ansible
• Dynamic inventory
• Plugins
• Modules
• Python API
@PavelChunyayev
Takeaways
• Ansible is a perfect tool
• Easily extendable when needed
• Don’t be afraid to extend Ansible
• Don’t forget to return code to community
• Participate in Ansible Coder’s Dojo
pavel@levi9.com
Any questions?

More Related Content

What's hot

The Need For Speed - NxtGen Cambridge
The Need For Speed - NxtGen CambridgeThe Need For Speed - NxtGen Cambridge
The Need For Speed - NxtGen Cambridge
Phil Pursglove
 
PowerShell for SharePoint Admins
PowerShell for SharePoint AdminsPowerShell for SharePoint Admins
PowerShell for SharePoint Admins
Rick Taylor
 

What's hot (20)

Ansible 101 - Presentation at Ansible STL Meetup
Ansible 101 - Presentation at Ansible STL MeetupAnsible 101 - Presentation at Ansible STL Meetup
Ansible 101 - Presentation at Ansible STL Meetup
 
Ansible - Hands on Training
Ansible - Hands on TrainingAnsible - Hands on Training
Ansible - Hands on Training
 
Integration-Monday-Terraform-Serverless
Integration-Monday-Terraform-ServerlessIntegration-Monday-Terraform-Serverless
Integration-Monday-Terraform-Serverless
 
How Ansible Makes Automation Easy
How Ansible Makes Automation EasyHow Ansible Makes Automation Easy
How Ansible Makes Automation Easy
 
Ansible
AnsibleAnsible
Ansible
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
ELK Stack
ELK StackELK Stack
ELK Stack
 
Introduction to Ansible - Jan 28 - Austin MeetUp
Introduction to Ansible - Jan 28 - Austin MeetUpIntroduction to Ansible - Jan 28 - Austin MeetUp
Introduction to Ansible - Jan 28 - Austin MeetUp
 
Ansible for large scale deployment
Ansible for large scale deploymentAnsible for large scale deployment
Ansible for large scale deployment
 
Ansible Best Practices - July 30
Ansible Best Practices - July 30Ansible Best Practices - July 30
Ansible Best Practices - July 30
 
Hadoop Demystified + Automation Smackdown! Austin JUG June 24 2014
Hadoop Demystified + Automation Smackdown!  Austin JUG June 24 2014Hadoop Demystified + Automation Smackdown!  Austin JUG June 24 2014
Hadoop Demystified + Automation Smackdown! Austin JUG June 24 2014
 
CI/CD and Asset Serving for Single Page Apps
CI/CD and Asset Serving for Single Page AppsCI/CD and Asset Serving for Single Page Apps
CI/CD and Asset Serving for Single Page Apps
 
The Need For Speed - NxtGen Cambridge
The Need For Speed - NxtGen CambridgeThe Need For Speed - NxtGen Cambridge
The Need For Speed - NxtGen Cambridge
 
PowerShell for SharePoint Admins
PowerShell for SharePoint AdminsPowerShell for SharePoint Admins
PowerShell for SharePoint Admins
 
Implementing your own Google App Engine
Implementing your own Google App Engine Implementing your own Google App Engine
Implementing your own Google App Engine
 
Everything as Code with Azure DevOps
Everything as Code with Azure DevOpsEverything as Code with Azure DevOps
Everything as Code with Azure DevOps
 
Frameworks and webcomponents
Frameworks and webcomponentsFrameworks and webcomponents
Frameworks and webcomponents
 
NC Wisconsin SuperVMUG 2019 Tools and Tips
NC Wisconsin SuperVMUG 2019 Tools and TipsNC Wisconsin SuperVMUG 2019 Tools and Tips
NC Wisconsin SuperVMUG 2019 Tools and Tips
 
Webcomponents are your frameworks best friend
Webcomponents are your frameworks best friendWebcomponents are your frameworks best friend
Webcomponents are your frameworks best friend
 
Serverless with Azure Functions
Serverless with Azure FunctionsServerless with Azure Functions
Serverless with Azure Functions
 

Viewers also liked

Viewers also liked (6)

Continuous Feedback from Testing - Continuous Delivery meetup - Amsterdam, 14...
Continuous Feedback from Testing - Continuous Delivery meetup - Amsterdam, 14...Continuous Feedback from Testing - Continuous Delivery meetup - Amsterdam, 14...
Continuous Feedback from Testing - Continuous Delivery meetup - Amsterdam, 14...
 
AnsibleFest London 2016 - managing your cisco datacenter network with ansible
AnsibleFest London 2016 - managing your cisco datacenter network with ansibleAnsibleFest London 2016 - managing your cisco datacenter network with ansible
AnsibleFest London 2016 - managing your cisco datacenter network with ansible
 
#nostaging - Software Circus - Amsterdam, 2-9-2016
#nostaging - Software Circus - Amsterdam, 2-9-2016#nostaging - Software Circus - Amsterdam, 2-9-2016
#nostaging - Software Circus - Amsterdam, 2-9-2016
 
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
CodeTalks Vortrag: Automatisierung mit Ansible & Jenkins @ LeanIX Enterprise ...
 
Lean part of DevOps - DevOps Amsterdam meetup - 17-8-2016
Lean part of DevOps - DevOps Amsterdam meetup - 17-8-2016Lean part of DevOps - DevOps Amsterdam meetup - 17-8-2016
Lean part of DevOps - DevOps Amsterdam meetup - 17-8-2016
 
One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000
 

Similar to Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016

Geek Sync | Deployment and Management of Complex Azure Environments
Geek Sync | Deployment and Management of Complex Azure EnvironmentsGeek Sync | Deployment and Management of Complex Azure Environments
Geek Sync | Deployment and Management of Complex Azure Environments
IDERA Software
 

Similar to Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016 (20)

Versioning schemes and branching models for Continuous Delivery - Continuous ...
Versioning schemes and branching models for Continuous Delivery - Continuous ...Versioning schemes and branching models for Continuous Delivery - Continuous ...
Versioning schemes and branching models for Continuous Delivery - Continuous ...
 
Developing Cross-Platform Web Apps with ASP.NET Core1.0
Developing Cross-Platform Web Apps with ASP.NET Core1.0Developing Cross-Platform Web Apps with ASP.NET Core1.0
Developing Cross-Platform Web Apps with ASP.NET Core1.0
 
Application Lifecycle Management on AWS
Application Lifecycle Management on AWSApplication Lifecycle Management on AWS
Application Lifecycle Management on AWS
 
Campus days Azure HDInsight automation
Campus days Azure HDInsight automationCampus days Azure HDInsight automation
Campus days Azure HDInsight automation
 
The Power of Azure DevOps
The Power of Azure DevOpsThe Power of Azure DevOps
The Power of Azure DevOps
 
Application Delivery Patterns
Application Delivery PatternsApplication Delivery Patterns
Application Delivery Patterns
 
API City 2019 Presentation - Delivering Developer Tools at Scale: Microsoft A...
API City 2019 Presentation - Delivering Developer Tools at Scale: Microsoft A...API City 2019 Presentation - Delivering Developer Tools at Scale: Microsoft A...
API City 2019 Presentation - Delivering Developer Tools at Scale: Microsoft A...
 
DevOps by examples @ devopsheroes 2016
DevOps by examples @ devopsheroes 2016DevOps by examples @ devopsheroes 2016
DevOps by examples @ devopsheroes 2016
 
Graph Databases for SQL Server Professionals
Graph Databases for SQL Server ProfessionalsGraph Databases for SQL Server Professionals
Graph Databases for SQL Server Professionals
 
Geek Sync | Deployment and Management of Complex Azure Environments
Geek Sync | Deployment and Management of Complex Azure EnvironmentsGeek Sync | Deployment and Management of Complex Azure Environments
Geek Sync | Deployment and Management of Complex Azure Environments
 
Rootconf 2017 - State of the Open Source monitoring landscape
Rootconf 2017 - State of the Open Source monitoring landscape Rootconf 2017 - State of the Open Source monitoring landscape
Rootconf 2017 - State of the Open Source monitoring landscape
 
Cloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and BenefitsCloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and Benefits
 
Honest performance testing with NDBench
Honest performance testing with NDBenchHonest performance testing with NDBench
Honest performance testing with NDBench
 
Migrare Applicazioni Web su Azure
Migrare Applicazioni Web su AzureMigrare Applicazioni Web su Azure
Migrare Applicazioni Web su Azure
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
 
Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011
 
Getting a Neural Network Up and Running with OpenLab
Getting a Neural Network Up and Running with OpenLabGetting a Neural Network Up and Running with OpenLab
Getting a Neural Network Up and Running with OpenLab
 
Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?Beyond DevOps: How Netflix Bridges the Gap?
Beyond DevOps: How Netflix Bridges the Gap?
 
6. Apache Kylin Roadmap and Community - Apache Kylin Meetup @Shanghai
6. Apache Kylin Roadmap and Community - Apache Kylin Meetup @Shanghai6. Apache Kylin Roadmap and Community - Apache Kylin Meetup @Shanghai
6. Apache Kylin Roadmap and Community - Apache Kylin Meetup @Shanghai
 
Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401
 

More from Pavel Chunyayev

More from Pavel Chunyayev (6)

Experiment and validate business ideas - Talk outline at DevOps Showcase Amst...
Experiment and validate business ideas - Talk outline at DevOps Showcase Amst...Experiment and validate business ideas - Talk outline at DevOps Showcase Amst...
Experiment and validate business ideas - Talk outline at DevOps Showcase Amst...
 
Lifecycle of a microservices application - Iasi, Levi9 meetup - 28-6-2017
Lifecycle of a microservices application - Iasi, Levi9 meetup - 28-6-2017Lifecycle of a microservices application - Iasi, Levi9 meetup - 28-6-2017
Lifecycle of a microservices application - Iasi, Levi9 meetup - 28-6-2017
 
Want Continuous Delivery? Give testing a priority! 16-6-2016, Friss, Utrecht
Want Continuous Delivery? Give testing a priority! 16-6-2016, Friss, UtrechtWant Continuous Delivery? Give testing a priority! 16-6-2016, Friss, Utrecht
Want Continuous Delivery? Give testing a priority! 16-6-2016, Friss, Utrecht
 
DevOpsDays Ignite - Immutable infrastructure - Amsterdam 24-5-2015
DevOpsDays Ignite - Immutable infrastructure - Amsterdam 24-5-2015DevOpsDays Ignite - Immutable infrastructure - Amsterdam 24-5-2015
DevOpsDays Ignite - Immutable infrastructure - Amsterdam 24-5-2015
 
Arch9 - A cloud based continuous delivery implementation
Arch9 - A cloud based continuous delivery implementationArch9 - A cloud based continuous delivery implementation
Arch9 - A cloud based continuous delivery implementation
 
State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015State of continuous delivery in 2015 - Minsk 15-5-2015
State of continuous delivery in 2015 - Minsk 15-5-2015
 

Recently uploaded

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Recently uploaded (20)

%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 

Extending Ansible - Ansible Benelux meetup - Amsterdam 11-02-2016