mirekdlugosz / broker

The infrastructure middleman

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Broker

The infrastrucure middleman

Description

Broker is a tool designed to provide a common interface between one or many services that provision virtual machines. It is an abstraction layer that allows you to ignore (most) of the implementation details and just get what you need.

Installation

dnf install cmake
cd <broker root directory>
pip install .
cp setting.yaml.example settings.yaml

Then edit the settings.yaml file

Usage

Checking out a VM

broker checkout --workflow "workflow-name" --workflow-arg1 something --workflow-arg2 else

You can pass in any arbitrary arguments you want

Nicks

Broker allows you to define configurable nicknames for checking out vms. Just add yours to setting.yaml and call with the --nick option

broker checkout --nick rhel7

Duplicating a VM

Broker offers another shortcut for checking out a VM with the same recipe as one already checked out by Broker. This is via the duplicate command.

broker duplicate my.awesome.vm.com
broker duplicate 0
broker duplicate 1 3

Listing your VMs

Broker maintains a local inventory of the VMs you've checked out. You can see these with the inventory command.

broker inventory

Checking in VMs You can also return a VM to its provider with the checkin command. You may use either the local id (broker inventory), the hostname, or "all" to checkin everything.

broker checkin my.host.fqdn.com
broker checkin 0
broker checkin 1 3 my.host.fqdn.com
broker checkin all

Creating nicks Broker will attempt to help your create your own nicks with the nick-help command. If supported by your chosen provider, nick-help will display the additional arguments you can use when defining a new nick.

broker nick-help --help
broker nick-help --workflow my-awesome-workflow

About

The infrastructure middleman


Languages

Language:Python 99.1%Language:Dockerfile 0.9%