The bareon.drivers.data.nailgun Module

class bareon.drivers.data.nailgun.Nailgun(data)

Bases: bareon.drivers.data.base.BaseDataDriver, bareon.drivers.data.base.PartitioningDataDriverMixin, bareon.drivers.data.base.ProvisioningDataDriverMixin, bareon.drivers.data.base.ConfigDriveDataDriverMixin, bareon.drivers.data.base.GrubBootloaderDataDriverMixin

Driver for parsing regular volumes metadata from Nailgun.

configdrive_scheme
get_os_by_image_meta(os_release)
get_os_by_profile(profile)
grub
have_grub1_by_default
hu_disks

Actual disks which are available on this node

It is a list of dicts which are formatted other way than ks_spaces disks. To match both of those formats use _match_device method.

hw_partition_scheme
image_meta
image_scheme
ks_disks
ks_vgs
operating_system
parse_configdrive_scheme()
parse_grub()
parse_image_meta()
parse_image_scheme()
parse_operating_system()
parse_partition_scheme()
partition_data()
partition_scheme
small_ks_disks

Get those disks which are smaller than 2T

class bareon.drivers.data.nailgun.NailgunBuildImage(data)

Bases: bareon.drivers.data.base.BaseDataDriver, bareon.drivers.data.base.ProvisioningDataDriverMixin, bareon.drivers.data.base.ConfigDriveDataDriverMixin, bareon.drivers.data.base.GrubBootloaderDataDriverMixin

DEFAULT_TRUSTY_PACKAGES = ['acl', 'anacron', 'bash-completion', 'bridge-utils', 'bsdmainutils', 'build-essential', 'cloud-init', 'curl', 'daemonize', 'debconf-utils', 'gdisk', 'grub-pc', 'i40e-dkms', 'linux-firmware', 'linux-firmware-nonfree', 'linux-headers-generic-lts-trusty', 'linux-image-generic-lts-trusty', 'lvm2', 'mcollective', 'mdadm', 'nailgun-agent', 'nailgun-mcagents', 'network-checker', 'ntp', 'openssh-client', 'openssh-server', 'puppet', 'python-amqp', 'ruby-augeas', 'ruby-ipaddress', 'ruby-json', 'ruby-netaddr', 'ruby-openstack', 'ruby-shadow', 'ruby-stomp', 'telnet', 'ubuntu-minimal', 'ubuntu-standard', 'uuid-runtime', 'vim', 'virt-what', 'vlan']
configdrive_scheme
grub
image_meta()
image_scheme
operating_system
parse_operating_system()
parse_schemes()
partition_scheme
bareon.drivers.data.nailgun.match_device(hu_disk, ks_disk)

Check if hu_disk and ks_disk are the same device

Tries to figure out if hu_disk got from hu.list_block_devices and ks_spaces_disk given correspond to the same disk device. This is the simplified version of hu.match_device

Parameters:hu_disk – A dict representing disk device how

it is given by list_block_devices method. :param ks_disk: A dict representing disk device according to

ks_spaces format.
Returns:True if hu_disk matches ks_spaces_disk else False.