An Ansible kernel for Jupyter
Project description
Ansible Jupyter Kernel
The Ansible Jupyter Kernel adds a kernel backend for Jupyter to interface directly with Ansible and construct plays and tasks and execute them on the fly.
Table of Contents
Installation:
ansible-kernel
is available to be installed from pypi but you can also install it locally. The setup package itself will register the kernel
with Jupyter
automatically.
From pypi
pip install ansible-kernel
From a local checkout
pip install -e .
Usage
jupyter notebook
# In the notebook interface, select Ansible from the 'New' menu
Using the Cells
Normally Ansible
brings together various components in different files and locations to launch a playbook and performs automation tasks. For this
jupyter
interface you need to provide this information in cells by denoting what the cell contains and then finally writing your tasks that will make
use of them. There are Examples available to help you, in this section we'll go over the currently supported cell types.
In order to denote what the cell contains you should prefix it with a pound/hash symbol (#) and the type as listed here as the first line as shown in the examples below.
#inventory
The inventory that your tasks will use
#inventory
[all]
ahost ansible_connection=local
anotherhost examplevar=val
#play
This represents the opening block of a typical Ansible
play
#play
name: Hello World
hosts: all
gather_facts: false
#task
This is the default cell type if no type is given for the first line
#task
debug:
#task
shell: cat /tmp/afile
register: output
#host_vars
#group_vars
#vars
This takes an argument that represents the filename for use in later cells
#vars example_vars
message hello vars
#play
name: hello world
hosts: localhost
gather_facts: false
vars_files:
- example_vars
#template
This takes an argument in order to create a templated file that can be used in later cells
#template hello.j2
{{ message }}
#task
template:
src: hello.j2
dest: /tmp/hello
#ansible.cfg
Provides overrides typically found in ansible.cfg
#ansible.cfg
[defaults]
host_key_checking=False
Examples
You can find various example notebooks in the repository
Using the development environment
It's possible to use whatever python development process you feel comfortable with. The repository itself includes mechanisms for using pipenv
pipenv install
...
pipenv shell
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ansible_kernel-0.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ef795c396e0ddeaec1f57a26ffce9f5c56d06bc62642a2b9ebfea4f733f82bdb |
|
MD5 | b5dd3d864dd234f67ec3105d93be78d7 |
|
BLAKE2b-256 | 81bd09aa010a07c56fcbc94c6bd64c330da44043499f8e6a08aa4717bfe0915a |