Simple deployment and scheduling tool for bare metal
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dmitry Tantsur 98ad1d86cd Wire in file image support 7 months ago
doc Simple role to deploy instances 10 months ago
metalsmith Wire in file image support 7 months ago
playbooks/integration Support partition HTTP images in CLI 7 months ago
roles/metalsmith_deployment Support partition HTTP images in CLI 7 months ago
.gitignore Switch to stestr for unit tests 7 months ago
.gitreview Migrate to OpenStack infra 11 months ago
.stestr.conf Switch to stestr for unit tests 7 months ago
.zuul.yaml Support creating a swap partition 7 months ago
LICENSE Initial commit 3 years ago
README.rst CLI: use --resource-class instead of a positional argument 10 months ago
lower-constraints.txt Switch to stestr for unit tests 7 months ago
requirements.txt Support for HTTP image location 7 months ago
setup.cfg Migrate jobs in-tree and add a Python 3.6 job 7 months ago
setup.py Update from Pike requirements 1 year ago
test-requirements.txt Switch to stestr for unit tests 7 months ago
tox.ini Switch to stestr for unit tests 7 months ago

README.rst

Deployment and Scheduling tool for Bare Metal

Overview

This is a simple tool to provision bare metal machines using OpenStack Bare Metal Service (ironic), OpenStack Image Service (glance) and OpenStack Networking Service (neutron).

Installation

pip install --user metalsmith

CLI Usage

Generic usage is as follows:

metalsmith --os-cloud <CLOUD NAME> deploy --image <GLANCE IMAGE> \
    --network <NEUTRON NET> --ssh-public-key <PATH TO SSH PUBLIC KEY> \
    --resource-class <RESOURCE CLASS>

This is an example suitable for TripleO (replace compute with the profile you want to deploy):

source ~/stackrc
metalsmith deploy --image overcloud-full --network ctlplane \
    --capability profile=compute --ssh-public-key ~/.ssh/id_rsa.pub \
    --resource-class baremetal

To remove the deployed instance:

metalsmith --os-cloud <CLOUD NAME> undeploy <NODE UUID>

For all possible options see the built-in help:

metalsmith --help

Contributing