Extending and Embedding Ansible with Python
Offered By: EuroPython Conference via YouTube
Course Description
Overview
Discover how to extend and embed Ansible with Python in this informative conference talk from EuroPython 2015. Begin with a rapid introduction to Ansible for newcomers, then delve into advanced techniques for Pythonistas. Learn to leverage Ansible's Python API for embedding, and explore methods to extend its functionality through custom modules, dynamic inventory scripts, and plugins. Gain insights into creating Ansible modules, understanding their structure, and implementing best practices. Explore practical examples, including a Flask Facter and a Taiga issue module. Dive into dynamic inventory scripts, callback plugins, lookup plugins, filter plugins, action plugins, vars plugins, and cache plugins. While prior Ansible experience is beneficial, beginners will also gain valuable insights into the tool's integration capabilities.
Syllabus
Intro
WHAT ANSIBLE IS
ARCHITECTURE OVERVIEW
HOST FILE (INVENTORY)
AD HOC COMMANDS
HELLO WORLD!: PING
PLAYBOOKS
A PLAYBOOK TO DEPLOY NGINX
EMBEDDING?
ABOUT FACTS
EXAMPLE: FLASK FACTER
EXAMPLE: INSTALLER
EXTENDING?
AN ANSIBLE MODULE ..
STRUCTURE OF THE MODULE
DOCUMENTATION AND EXAMPLES
THE PYTHONIC PART
THE MAIN() FUNCTION
BOILERPLATE CODE
MODULE CREATION TIPS
MODULE EXAMPLE: TAIGA_ISSUE
DYNAMIC INVENTORY SCRIPTS
EXAMPLE: SHELVE_INVENTORY
CALLBACK PLUGINS
LOOKUP PLUGINS
LOOKUP PLUGIN BASICS
FILTER PLUGINS
FILTER PLUGIN BASICS
EXAMPLE: ROT13
ACTION PLUGINS
VARS PLUGINS
VARS PLUGIN TEMPLATE CODE
CACHE PLUGINS
CACHE PLUGIN TEMPLATE CODE
REFERENCES
Taught by
EuroPython Conference
Related Courses
A Brief History of Data StorageEuroPython Conference via YouTube Breaking the Stereotype - Evolution & Persistence of Gender Bias in Tech
EuroPython Conference via YouTube We Can Get More from Spatial, GIS, and Public Domain Datasets
EuroPython Conference via YouTube Using NLP to Detect Knots in Protein Structures
EuroPython Conference via YouTube The Challenges of Doing Infra-As-Code Without "The Cloud"
EuroPython Conference via YouTube