Hi I’m Dave
Github: davidhalter
Twitter: @jedidjah_ch
Slide 2
Slide 2 text
I work at cloudscale.ch
Give us a try. We have awesome cloud servers.
Slide 3
Slide 3 text
I created jedi/jedi-vim
Awesome Python Autocompletion/Static Analysis
Both have 2.5k stars on github
$ pip install jedi
Slide 4
Slide 4 text
I’m not working in DevOps
Sorry :)
Slide 5
Slide 5 text
The Zen of Python
Beautiful is better than ugly.
Simple is better than complex.
Readability counts.
...
Slide 6
Slide 6 text
What does ansible well?
Modules
Group/Host Variables
Slide 7
Slide 7 text
My Problem with Ansible
YAML
Slide 8
Slide 8 text
Nobody understands YAML
Google: In YAML, how do I break a string over multiple lines?
Slide 9
Slide 9 text
YAML makes things harder
String escaping
YAML leaves room for interpretation
Slide 10
Slide 10 text
Solutions ahead?!
Use Python. YAML is written in Python.
Slide 11
Slide 11 text
from pysible.modules import apt
# Make sure nginx is installed
apt(name=nginx)
An Example
Slide 12
Slide 12 text
Still Declarative
from pysible.modules import apt
# Make sure nginx is installed
apt(name=nginx)
Slide 13
Slide 13 text
Reuse all modules
from pysible.modules import apt
# Make sure nginx is installed
apt(name=nginx)
Slide 14
Slide 14 text
Python is awesome
for loops
define variables
modules/functions
Slide 15
Slide 15 text
Write functions
Absorb complexity with functions instead of files
Slide 16
Slide 16 text
from pysible.modules import apt
from pysible import context
# Make sure nginx is installed
with context(delegate_to=”foo”):
apt(name=nginx)
Context Managers