Skip to main content

Python powered CLI for dynamic plugins management

Browse through a range of available CLI applications a.k.a plugins or create new ones using a Python based framework allowing for creation and loading of dynamic CLI applications at runtime

pip install provisioner-runtime
Read the docs

Currently v0.1.9 · Download · Docs · All Releases

Use any available CLI plugins or contribute new ones

Search for existing plugins that are available for use or contribute new ones using a Python based framework in a no-brainer manner, simple and quick.

Read installation docs

Install using several options

Install provisioner from PyPi via pip, pre-built release or from sources. Package managed installs contains only the bare minimum without documentation / site / dev-scripts etc...

For additional information check the download section.

Browse through available plugins

Browsing through the available plugins is as simple as running the following command:

provisioner plugins install

For the full list of available plugins check the following section.

Built-in capabilities out of the box

Provisioner Python CLI framework supports a wide range of common utilities, interactive terminal and core capabilities such as config-management, flag modifiers (verbose, dry-run, auto-prompt) and much more...

Learn more about the provisioner Python framework

Commonly used CLI plugins

Those are the common and highly used provisioner plugins.

Learn more about available plugins

Installers Plugin

Install anything anywhere on any OS/Arch either on a local or remote machine.

This plugin is designed to install any type of software, package, or application quickly and easily in a one-liner command.

Remove the hassle of going through multiple READMEs and/or documentation sites just to get the software installed.

For additional information please head to the Plugin: Installers section.

# Print a list of available installables
$ provisioner install 

# Install Helm CLI interactively (prompt for Local/Remote)
$ provisioner install cli helm

# Install Helm CLI locally (Non-interactive)
$ provisioner install --environment=Local cli helm

# Install K3s server remotely (Non-interactive)
$ provisioner install \
  --environment Remote \
  --hostname rpi-01 \
  --ip-address \
  --node-username pi \
  --ssh-private-key-file-path /path/to/pkey \
  cli helm

Single Board Plugin

Single boards management as simple as it gets.

Manage small single-board computers such as Raspberry Pi using interactive CLI commands.

Focus on safe, secure and remotely possible provisioning, starting from the initial OS/Network set-up and configuration towards on-going maintenance.

For additional information please head to the Plugin: Single Board section.

# Select an available local block device to burn a Raspbian OS image (SD-Card / HDD)
$ provisioner single-board raspberry-pi os burn-image

# Select a remote Raspberry Pi node to configure Raspbian OS software and hardware settings
$ provisioner single-board raspberry-pi node configure

# Select a remote Raspberry Pi node on the ethernet network to configure a static IP address
$ provisioner single-board raspberry-pi node network

Provisioner motto

The goal for provisioner is to have the ability to install or use anything either locally or on a remote machine with the focus of making the process as simple as possible, one stop shop for your needs.

It could be summarized into the following phrase:
"Provision everything anywhere"

Try the playground

Take provisioner for a spin by using the provisioner-examples-plugin.

$ pip install provisioner-examples-plugin

# Print examples plugin commands
$ provisioner examples

# Run a no-op Ansible command
$ provisioner examples ansible hello

See playground walkthrough