OpenStack Provider

The following tables and example YAML configuration file snippets contain details needed to provision resources via the Contra HDSL.

Additional reference can be made to the Linchpin OpenStack provider documentation as well as the Ansible OpenStack module , on which the Linchpin OpenStack provider is based.

Requirements for the content of the credentials file for this provider can be seen in the Linchpin documentation

OpenStack configuration keys

name

Type Required Purpose
String true A user defined name to refer to this resource.

flavor

Type Required Purpose
String true The name or id of the flavor in which the new instance has to be created.

image

Type Required Purpose
String true The name or id of the base image to boot.

region

Type Required Purpose
String false Name of the region.

count

Type Required Purpose
Integer false
The quantity desired fo the requested resource.
If the count is greater than one, resources will be named name_1, etc.

Defaults to 1.

key_pair

Type Required Purpose
String false The key pair name to be used when creating a instance.

security_groups

Type Required Purpose
List false Names of the security groups to which the instance should be added.

floating_ip_pool

Type Required Purpose
String false Name of floating IP pool from which to choose a floating IP.

network

Type Required Purpose
String false Name or ID of a network to attach this instance to.

user_data

Type Required Purpose
String false An opaque blob of data which is made available to the instance.

volume_size

Type Required Purpose
String false The size, in GB, if booting from volume based on an image.

boot_volume

Type Required Purpose
String false
Volume name or id to use as the volume to boot from.
Implies boot_from_volume.

boot_from_volume

Type Required Purpose
String false Should the instance boot from a persistent volume.

terminate_volume

Type Required Purpose
String false If `yes`, delete volume when deleting instance (if booted from volume).

auto_ip

Type Required Purpose
String false Ensure instance has public ip however the cloud wants to do that.

volumes

Type Required Purpose
List false A list of preexisting volumes names or ids to attach to the instance.