Import code from diskimage-builder

This commit is contained in:
Monty Taylor 2015-04-12 14:40:13 -04:00
parent 164fd25604
commit c1b55132e2
64 changed files with 1348 additions and 85 deletions

View File

@ -1,3 +1,4 @@
#!/usr/bin/python
# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License");
@ -19,6 +20,7 @@ import os
import platform
import subprocess
import sys
import time
post_up = " post-up route add -net {net} netmask {mask} gw {gw} || true\n"
pre_down = " pre-down route del -net {net} netmask {mask} gw {gw} || true\n"
@ -64,23 +66,54 @@ NM_CONTROLLED=no
return files_to_write
def write_redhat_interfaces(interfaces):
def _write_rh_dhcp(name, hwaddr):
filename = '/etc/sysconfig/network-scripts/ifcfg-{name}'.format(name=name)
return {
filename: """# Automatically generated, do not edit
DEVICE={name}
BOOTPROTO=dhcp
HWADDR={hwaddr}
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet
""".format(name=name, hwaddr=hwaddr)
}
def write_redhat_interfaces(interfaces, sys_interfaces):
files_to_write = dict()
for iname, interface in interfaces.items():
if interface['type'] != 'ipv6':
interface_name = interface['id'].replace('network', 'eth')
files_to_write.update(
_write_rh_interface(interface_name, interface))
# Sort the interfaces by id so that we'll have consistent output order
for iname, interface in sorted(
interfaces.items(), key=lambda x: x[1]['id']):
if interface['type'] == 'ipv6':
continue
if iname not in sys_interfaces:
continue
interface_name = sys_interfaces[iname]
files_to_write.update(
_write_rh_interface(interface_name, interface))
for mac, iname in sorted(
sys_interfaces.items(), key=lambda x: x[1]):
# TODO(mordred) We only want to do this if a file doesn't already exist
if mac in interfaces:
# We have a config drive config, move on
continue
files_to_write.update(_write_rh_dhcp(iname, mac))
return files_to_write
def write_debian_interfaces(interfaces):
def write_debian_interfaces(interfaces, sys_interfaces):
results = ""
for iname, interface in interfaces.items():
# Sort the interfaces by id so that we'll have consistent output order
for iname, interface in sorted(
interfaces.items(), key=lambda x: x[1]['id']):
if iname not in sys_interfaces:
continue
interface = interfaces[iname]
link_type = "inet"
if interface['type'] == 'ipv6':
link_type = "inet6"
interface_name = interface['id'].replace('network', 'eth')
interface_name = sys_interfaces[iname]
results += "auto {0}\n".format(interface_name)
results += "iface {name} {link_type} static\n".format(
name=interface_name, link_type=link_type)
@ -96,6 +129,15 @@ def write_debian_interfaces(interfaces):
results += pre_down.format(
net=route['network'], mask=route['netmask'],
gw=route['gateway'])
for mac, iname in sorted(
sys_interfaces.items(), key=lambda x: x[1]):
# TODO(mordred) We only want to do this if the interface doesn't
# already exist
if mac in interfaces:
# We have a config drive config, move on
continue
results += "auto {0}\n".format(iname)
results += "iface {0} inet dhcp\n".format(iname)
return {'/etc/network/interfaces': results}
@ -106,88 +148,111 @@ def write_dns_info(dns_servers):
return {'/etc/resolv.conf': results}
def write_static_network_info(net, args):
def get_config_drive_interfaces(net):
interfaces = {}
dns_servers = [
if 'networks' not in net or 'links' not in net:
return interfaces
tmp_ifaces = {}
for network in net['networks']:
tmp_ifaces[network['link']] = network
for link in net['links']:
tmp_ifaces[link['id']]['mac_address'] = link['ethernet_mac_address']
for k, v in tmp_ifaces.items():
v['link'] = k
interfaces[v['mac_address'].lower()] = v
return interfaces
def get_dns_from_config_drive(net):
if 'services' not in net:
return []
return [
f['address'] for f in net['services'] if f['type'] == 'dns'
]
interfaces = {}
for network in net['networks']:
interfaces[network['link']] = network
for link in net['links']:
interfaces[link['id']]['mac_address'] = link['ethernet_mac_address']
def write_static_network_info(
interfaces, sys_interfaces, files_to_write, args):
distro = args.distro
if not distro:
distro = platform.dist()[0].lower()
if distro in ('debian', 'ubuntu'):
files_to_write = write_debian_interfaces(interfaces)
files_to_write.update(
write_debian_interfaces(interfaces, sys_interfaces))
elif distro in ('redhat', 'centos', 'fedora', 'suse', 'opensuse'):
files_to_write = write_redhat_interfaces(interfaces)
files_to_write.update(write_dns_info(dns_servers))
finish_files(files_to_write, args)
def write_debian_dhcp_interfaces(interfaces):
output = """auto lo
iface lo inet loopback
"""
for interface in interfaces:
output += """auto {interface}
iface {interface} inet dhcp
""".format(interface=interface)
return {'/etc/network/interfaces': output}
def write_redhat_dhcp_interfaces(interfaces):
files_to_write={}
for interface in interfaces:
content = """DEVICE={interface}
BOOTPROTO=dhcp
ONBOOT=on
""".format(interface=interface)
files_to_write[
'/etc/sysconfig/network-scripts/ifcfg-{interface}'.format(
interface=interface)]=content
return files_to_write
def write_dhcp_network_info(args):
interfaces = get_interfaces()
distro = args.distro
if not distro:
distro = platform.dist()[0].lower()
if distro in ('debian', 'ubuntu'):
files_to_write = write_debian_dhcp_interfaces(interfaces)
elif distro in ('redhat', 'centos', 'fedora', 'suse', 'opensuse'):
files_to_write = write_redhat_dhcp_interfaces(interfaces)
files_to_write.update(
write_redhat_interfaces(interfaces, sys_interfaces))
else:
return False
finish_files(files_to_write, args)
def finish_files(files_to_write, args):
for k, v in files_to_write.items():
files = sorted(files_to_write.keys())
for k in files:
if not files_to_write[k]:
# Don't write empty files
continue
if args.noop:
print("### Write {0}".format(k))
print(v)
print(files_to_write[k])
else:
with open(k, 'w') as outfile:
outfile.write(v)
outfile.write(files_to_write[k])
def get_interfaces():
interfaces=[]
interface_string = subprocess.check_output(shlex.split('ip link show'))
for line in [f for f in ifaces.split('\n') if not g.startswith(' ')]:
if not line:
def is_interface_live(interface, sys_root):
try:
if open('{root}/{iface}/carrier'.format(
root=sys_root, iface=interface)).read().strip() == '1':
return True
except IOError as e:
# We get this error if the link is not up
if e.errno != 22:
raise
return False
def interface_live(iface, sys_root, args):
if is_interface_live(iface, sys_root):
return True
if args.noop:
return False
subprocess.check_output(['ip', 'link', 'set', 'dev', iface, 'up'])
# Poll the interface since it may not come up instantly
for x in range(0, 10):
if is_interface_live(iface, sys_root):
return True
time.sleep(.1)
return False
def get_sys_interfaces(interface, args):
sys_root = '/sys/class/net'
if args.root != '/mnt/config': # we're in testing land
sys_root = args.root + sys_root
sys_interfaces = {}
if interface is not None:
interfaces = [interface]
else:
interfaces = [f for f in os.listdir(sys_root) if f != 'lo']
for iface in interfaces:
mac_addr_type = open(
'%s/%s/addr_assign_type' % (sys_root, iface), 'r').read().strip()
if mac_addr_type != '0':
continue
interface = line.split(':')[1].strip()
if interface.startswith('eth'):
interfaces.append(interface)
return interfaces
mac = open('%s/%s/address' % (sys_root, iface), 'r').read().strip()
if interface_live(iface, sys_root, args):
sys_interfaces[mac] = iface
return sys_interfaces
def write_network_info_from_config_drive(args):
@ -200,23 +265,59 @@ def write_network_info_from_config_drive(args):
DHCP network files.
"""
if not os.path.exists('/mnt/config/openstack/latest/meta_data.json'):
return False
network_info_file = '%s/openstack/latest/network_info.json' % args.root
vendor_data_file = '%s/openstack/latest/vendor_data.json' % args.root
meta_data = json.load(open('/mnt/config/openstack/latest/meta_data.json'))
with open('/root/.ssh/authorized_keys', 'a') as keys:
for (name, key) in meta_data['public_keys'].items():
keys.write("# Injected key {name} by keypair extension\n".format(
name=name))
keys.write(key)
keys.write('\n')
v = {}
if os.path.exists(network_info_file):
v = json.load(open(network_info_file))
elif os.path.exists(vendor_data_file):
vendor_data = json.load(open(vendor_data_file))
if 'network_info' in vendor_data:
v = vendor_data['network_info']
dns = write_dns_info(get_dns_from_config_drive(v))
interfaces = get_config_drive_interfaces(v)
sys_interfaces = get_sys_interfaces(args.interface, args)
v = json.load(open('/mnt/config/openstack/latest/vendor_data.json'))
if 'network_info' in v:
write_static_network_info(v['network_info'], args)
write_static_network_info(interfaces, sys_interfaces, dns, args)
def write_ssh_keys(args):
"""Write ssh-keys from config-drive.
If there is no meta_data.json in config-drive, it means that there
is no config drive mounted- which means we do nothing.
"""
meta_data_path = '%s/openstack/latest/meta_data.json' % args.root
ssh_path = '%s/root/.ssh' % args.root
authorized_keys = '%s/authorized_keys' % ssh_path
if not os.path.exists(meta_data_path):
return 0
if not os.path.exists(ssh_path) and not args.noop:
return 0
meta_data = json.load(open(meta_data_path))
keys_to_write = []
if os.path.exists(authorized_keys) and not args.noop:
current_keys = open(authorized_keys, 'r').read()
keys_to_write.append(current_keys)
else:
return False
return True
current_keys = ""
if not args.noop:
open(authorized_keys, 'w').write(
"# File created by gleam\n")
for (name, key) in meta_data['public_keys'].items():
if key not in current_keys or args.noop:
keys_to_write.append(
"# Injected key {name} by keypair extension".format(
name=name))
keys_to_write.append(key)
files_to_write = {
authorized_keys: '\n'.join(keys_to_write),
}
finish_files(files_to_write, args)
def main():
@ -226,10 +327,23 @@ def main():
parser.add_argument(
'--distro', dest='distro', default=None,
help='Override detected distro')
parser.add_argument(
'--root', dest='root', default='/mnt/config',
help='Mounted root for config drive info, defaults to /mnt/config')
parser.add_argument(
'-i', '--interface', dest='interface',
default=None, help="Interface to process")
parser.add_argument(
'--ssh', dest='ssh', action='store_true', help="Write ssh key")
parser.add_argument(
'--skip-network', dest='skip', action='store_true',
help="Do not write network info")
args = parser.parse_args()
if not write_network_info_from_config_drive(args):
write_dhcp_network_info(args)
if args.ssh:
write_ssh_keys(args)
if args.interface != 'lo' and not args.skip:
write_network_info_from_config_drive(args)
return 0
if __name__ == '__main__':

6
gleam/tests/fixtures/README.rst vendored Normal file
View File

@ -0,0 +1,6 @@
Sample config-drives
====================
These are sample config-drives taken from Rackspace and HP for the purposes of
testing. There is also a theoretical new example for what it should look like
in liberty once https://review.openstack.org/#/c/153097/ has landed.

View File

@ -0,0 +1,30 @@
{
"reservation-id": "r-a2pq2oia",
"hostname": "monty-testnova.novalocal",
"security-groups": [],
"ramdisk-id": "ari-00000003",
"public-ipv4": "",
"ami-manifest-path": "FIXME",
"instance-type": "standard.small",
"instance-id": "i-00db87d3",
"local-ipv4": "10.0.0.103",
"local-hostname": "monty-testnova.novalocal",
"placement": {
"availability-zone": "az2"
},
"ami-launch-index": 0,
"public-hostname": "monty-testnova.novalocal",
"public-keys": {
"0": {
"openssh-key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n",
"_name": "0=mordred"
}
},
"ami-id": "ami-0005d7d1",
"kernel-id": "aki-00000003",
"instance-action": "none",
"block-device-mapping": {
"ami": "vda",
"root": "/dev/vda"
}
}

View File

@ -0,0 +1,30 @@
{
"reservation-id": "r-a2pq2oia",
"hostname": "monty-testnova.novalocal",
"security-groups": [],
"ramdisk-id": "ari-00000003",
"public-ipv4": "",
"ami-manifest-path": "FIXME",
"instance-type": "standard.small",
"instance-id": "i-00db87d3",
"local-ipv4": "10.0.0.103",
"local-hostname": "monty-testnova.novalocal",
"placement": {
"availability-zone": "az2"
},
"ami-launch-index": 0,
"public-hostname": "monty-testnova.novalocal",
"public-keys": {
"0": {
"openssh-key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n",
"_name": "0=mordred"
}
},
"ami-id": "ami-0005d7d1",
"kernel-id": "aki-00000003",
"instance-action": "none",
"block-device-mapping": {
"ami": "vda",
"root": "/dev/vda"
}
}

View File

@ -0,0 +1,11 @@
{
"admin_pass": "7HC8HPVt27hx",
"uuid": "88a8a694-bd3d-428d-870e-673790ac90d1",
"availability_zone": "az2",
"hostname": "monty-testnova.novalocal",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "monty-testnova"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "7HC8HPVt27hx",
"random_seed": "6XGsQff0KQuaBGkIQVcT4CHTHveUaqJV1LuhDYIe8VU6oggMmoz5x7RYqS3/JWZpzrvPvPmFz4JdK8NL2VYq8/8iJuj0beKnOEt4/ysP8K06gpPdShYRZW1UNP+H4dl/BnEHBodVquyxpnBQKFLSmBxjWev7TziDvmEfFCgQIfdk//A8lg3kDA2xur5koBePfw+6/jNSwYUT9hJhNtGf0gjCvqm1jiHHxbyqoUfk6Ij3S+WsfcoGdj4+jjmfVpCMJkIVwcD0UniC5PicwpUdvKaCniCYWsoXDCQSEWea/boijV7C2wK+7I+yprkhXuZM4PJy+cjnDZOE1f3IT0JeznicCdmT0iA/puj/ToQV2VHFy+1C+Y/afEKRbniRHgZQJPZkyRgz7yxcD8azoAxCn973idbmjTQDkRkLdnDhqfqgfWjy15xh/h7B4n8KvTWveVzFyNAZrVQVpL46UtYA6+ol5RRZxYXwqtG0nU+jPY6mKlj6z+B4Qv3D7PJT5v2/1eA4TH+/7GbwbggH+14zRYlBxaO23tNE1Pyk10STRSdExPgmSIQpRYwlJM/bSFyuk6sNji648qA0F4oobQa15hcAbsqyCWxOV/FshppVBf7WT/nKi/JmtLh7nbkuBWepk/CUzvQVnPw7husidZlImPrUgDzysp9QCGZllHuZKis=",
"uuid": "88a8a694-bd3d-428d-870e-673790ac90d1",
"availability_zone": "az2",
"hostname": "monty-testnova.novalocal",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "monty-testnova"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "7HC8HPVt27hx",
"random_seed": "watUF+6jY845a9xfyVnxqSpeYGuBp/uQr/njG3TvkxSA87bUUTIdZlgvTEzvqCVxh4+Wg+ZFu/uDauc5QhL+RGMIoo98sF7YDYy5tL031qtI0yy2/OkTIAEs+zN9EIdbwjZVJBXEkxqVmpoFMOS0dpg34gcpp2U8Pts2nI4M+8pYA/LIYwxob1pfDXw7rKvqWji07o9vW9q7gTokyusqJwpYQZjx+8iJvrRhouAEOebOkSmOgQlx7wNJRSGoyt0PFn+9ONg6nMK9qYbE7+d20/OBHYBc6v6KAijaOcYFWXEjGdDLmeHeeZuE9udaRjvpfQ+OnSrbYVPbA6JAVGc8EseLUZkybUPZUS3b8tiwpOJU5dzUIKrtuGyngTtx7Olw+2uifnExm3vp9wkGlMJzsdHeMu+omiRNvfSIify5zU4WUM8DrrP2Fn77uUCXU3QuzeN+XypjjB2YlmbM5SbStzDFEsO4WCv/y+PSBH5QoR/0e/6Dz6l4zZL78v28NvRnGQJA6pNazpB6lX2MxnzLts1gumv9FtiYZQ55nXFya1MTMXTZzpA1taLxwhN4aNfDRLjW82uXiWB5KZf2B00tiEmg+/p20m2zXCCC12MhpGqt+Yq0ysC4qVhRvFN4Pnuec1TvgTCTxXq+OcIIL8QZ1scwSsQLOXBKa8dXMD63aec=",
"uuid": "88a8a694-bd3d-428d-870e-673790ac90d1",
"availability_zone": "az2",
"hostname": "monty-testnova.novalocal",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "monty-testnova"
}

View File

@ -0,0 +1,2 @@
{}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "7HC8HPVt27hx",
"random_seed": "yiTlHifXfqKzlRTRsBb1xj8/IFu5kMdmd8fSbkOG52OjSWDG229a1/TQa4qJ3lOrAZMpeTdgBYeKVP1f+koKI2+TEOxhr0OSRtFmR/UsoVaDeXx2so8s7lHgGZXKemvtg6JDE+PlCNZTIY8aF7Q0ndaljuZo90YeZD3AcgfM2xPN+edAttRyS3fpyiuT0TOLkbUPWXBDiWlCjOuOlgp4mk3NM4PhjuQNCSZXQQ5+8RqEBNlLlwd6Yky4IUuxm0KQoiGu5d95EeeO/Gm+i2ExUvya2n+k2RZ/H2DhEzxNrDyxr5AzD31VAJXesRvGRYJIGySjtCm8he3UOIPIHW4aB9xiT4Zb7+1QsSOIWsFlvXohCibTda4bvGSdRnSYmtgNsWRaM/B5KAbjfp2O77NcgC0MmuCiAVWfLPElXL+7fz1I3RqbjBUz7ueOZW8YU2jcuJLHotqQOQXbAXHepdjoA4qKc3uGpRTAoP4S50vPmAg9oH+IwyDApaxpkE2BiKI9Do0k8fBLY1G4LdMDNp6eDV3iTV58HMrDWlZgP1ztvlQ1MTmN8mr4+Lp94Zc776eW/InOML1ttro/cptEp1qCx4Y92HwNIDe4RCcVfqb0V5YfL9YjFzbvIpPQ2hFM+zgmYE8JSFBmmCzCnLmPWgmKkPA4/lh+AA3sRDqbrywN/O8=",
"uuid": "88a8a694-bd3d-428d-870e-673790ac90d1",
"availability_zone": "az2",
"hostname": "monty-testnova.novalocal",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "monty-testnova"
}

View File

@ -0,0 +1,2 @@
{}

View File

@ -0,0 +1 @@
0

View File

@ -0,0 +1 @@
bc:76:4e:01:62:86

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1 @@
0

View File

@ -0,0 +1 @@
bc:76:4e:05:7b:06

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,32 @@
{
"reservation-id": "r-psg0p301",
"hostname": "test-monty-config-drive",
"security-groups": [
"default"
],
"ramdisk-id": null,
"public-ipv4": "",
"ami-manifest-path": "FIXME",
"instance-type": "1 GB Performance",
"instance-id": "i-0003e0bf",
"local-ipv4": "23.253.229.154",
"local-hostname": "test-monty-config-drive",
"placement": {
"availability-zone": "nova"
},
"ami-launch-index": 0,
"public-hostname": "test-monty-config-drive",
"public-keys": {
"0": {
"openssh-key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n",
"_name": "0=mordred"
}
},
"ami-id": "ami-0000007b",
"kernel-id": null,
"instance-action": "none",
"block-device-mapping": {
"ami": "xvda",
"root": "/dev/xvda"
}
}

View File

@ -0,0 +1,32 @@
{
"reservation-id": "r-psg0p301",
"hostname": "test-monty-config-drive",
"security-groups": [
"default"
],
"ramdisk-id": null,
"public-ipv4": "",
"ami-manifest-path": "FIXME",
"instance-type": "1 GB Performance",
"instance-id": "i-0003e0bf",
"local-ipv4": "23.253.229.154",
"local-hostname": "test-monty-config-drive",
"placement": {
"availability-zone": "nova"
},
"ami-launch-index": 0,
"public-hostname": "test-monty-config-drive",
"public-keys": {
"0": {
"openssh-key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n",
"_name": "0=mordred"
}
},
"ami-id": "ami-0000007b",
"kernel-id": null,
"instance-action": "none",
"block-device-mapping": {
"ami": "xvda",
"root": "/dev/xvda"
}
}

View File

@ -0,0 +1,11 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"random_seed": "kDKX9XcR4PoawlETDmYbsTepE6rx9ffmNpmd5UMLwIU+pdkZEXASxSMuD1hIrN9Zoi3V9icP+DTKO3UchEn33A8zXJI8knmOaxs3mU1aF7slw9SG3bWZh4teSQhINPA4i8bann12dzRXCcsn2Yh6GKYtltRN8IsUd+d55yS30san1AFTaeA/bSaSbDmuDV1cnYebCV5XypKWu9c180JnBxZLzLMO848zPAi43IwSbLtfPfPay9rD6zOrCrJqru40x+bhWZO2ue9J0Xaryr8uMq28orz3+f/B+9QQZSZU95vhPZFKfBX2C1N2r49HVAMjMAgVhfsV4Lb5TTv6PrazGjv/aog4UEaFzAUBm5UGWO7MjeguS0l+2MFGU5iGbpnUahM4xLIhfaYzZMSzZeENsa9jAUBHFBT583Jm7HLCjd2HpBqS2AkW/HR0uoDMN/AVaQskNKtWf8qnfAqRqX1G6riy/RNmpddHg49yFFtPwxVoCfboNiqB1VAxkLNVafy9c6Pjoi9hkWwO+m/kAxQknJ4CzbnZ9j/oUTJDETk50rdxXqq5Jf/p3ibNT+CwWqid9bIL3UfXzVSII0sCw3lqHGAyPS0fewYX2ZB1rd355/xEGfjg5fhQZHLBPCwstdVyobspXWWaKiS2W07KlDPxYL3++wM9IuVq50PPEAqUP8o=",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"random_seed": "u+GpbN5sFLsXklaXQz2AKkn9Iu58uqz2cUzR17RkY+lf3U920FR9znyiRc8V2DThmkrdbr8mDRBZ8XqJ0ckL5Y/Tpzas/RAl5iEeYddrJeROv2k9D6zG5l5kW2dEc+uKE04q9tkFx+5kZBO1Jfyx/uDXgj3Mcn0xvQavv2orC/bDyUy9UBcoZmr98Rq+w/nIm1gpKo+opwvcPNo5/Xm44LK5XgLqu9na2YTG19dvrP7R2WZXGELDnu4CFZVsl+jRzm8wl697g+A9veVpiqGhNNClYyUsbfcu/LN87WM2U1FiE4U15g45w31jUkdyYZZBWOyZTMrkWgijS1l1Fl0gc6Gvg4/V3KgdaslDsvKyAwi4VsRRw/ShIdkwLLPah69g8hmWcJe4IOtmaUMcJnS2U9csI9BeG0rkV3UtFAf5ZjjQ8CzKXq1fWkucBqqh8+60Z92blHjMeu/o78wjfdxVk4AKEhPs/JvYzSKryACg5k9k2McbyAaK5Vc+sJO4SC4BUuuLlZNM8UBTq0kg2XnCA8Nw+vRosMHjdoeKdx/KoOMTm7gN0bdWXgYiPWFIKGiRRVFS137EJbjYfPtb815T+FZZxbHMptrIhQE9sEf107oOWrGj9fRBvt9I2KTg2PEPv0s6x3aJ6QnP/cLr4leuCxfmGR5n0LUC0Gg6LVgvs6Y=",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,58 @@
{
"region": "dfw",
"ip_whitelist": [
"173.203.32.136/29",
"173.203.5.160/27",
"67.192.155.96/27",
"89.234.21.64/28",
"166.78.7.146",
"50.56.249.239",
"166.78.107.18",
"162.209.4.155",
"95.138.174.55",
"162.13.1.53",
"119.9.12.91",
"119.9.12.98",
"50.56.251.251",
"209.114.42.90",
"209.114.42.65",
"209.114.42.78",
"209.114.42.95",
"209.114.42.7",
"209.114.42.104",
"209.114.42.106",
"209.114.42.108",
"209.114.40.174",
"166.78.24.91",
"166.78.17.140",
"166.78.7.98",
"67.192.38.80",
"67.192.38.81",
"10.177.239.240",
"10.177.240.72",
"10.177.228.20",
"10.177.245.131",
"10.177.245.132",
"10.177.245.133",
"10.177.245.134",
"10.177.245.135",
"10.177.245.136",
"10.177.245.137",
"10.181.143.195",
"10.181.129.165",
"10.181.14.198",
"198.101.223.248",
"10.180.135.32",
"166.78.7.146",
"50.56.249.239",
"10.181.3.91",
"10.181.24.208"
],
"roles": [
"checkmate",
"object-store:default",
"compute:default",
"identity:user-admin"
],
"provider": "Rackspace"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"random_seed": "YPPvhdhxMKysu5EiBaaZpyDv2DIhMkRJp6XscFvCaI1Bvu1CD1mBg0jwURdVN5T0tbhYH74c8WcatRjyocZXMxUQgUeYd1METz3Fh2+aiJa2HRSCLdDcXzE8kD9VadqEAD/rOiUhjMToDepA6VAKzFTYcbnBNKRgshAFHmBfx0TCOtmM7A7CVsKhAfcMcf2ySYQ0PnS2emRrU21/vv/bj//nb2XxHKPrm7tLLDzqHCd+bg5WQsJ5NkDeuILpyHMGnWUyeNs6jg4z47Cq6grG4orM2G58SW3UbzXPs8waqZrYsfpZMMOj8CUqiAO44vptqOpYb3LlcsSRJHoBfVRY+BlTMkKIDwS3vEoSEX97OwMFDx5x4NXziuoZ4UyVzzAbnLeJHPospKcQC7A0JweazmEJpzTjlYyvC/yNFX8Wrwnohg+I22UghsNI/VVtjwzphUACi1nbttSzlkFkajPJjBAE66UHRp2VRCejLAzjT5TuM276rljQFIW73g9TjD3zf9FFfCYLBgie3pkNFXplLCUbLCUUtvUGJOfaN3N9sBO+P3FFAyuF6P9Jo5QKK2uMVLlE9rS3xOF9q4qtHAvXPSX2ikWQEkklz1UVCNHd5p2nT6C71kCBsT6d2/yOLXTLNAWDf8qpw8poVWlhwSj52mGY/uXYB15+PartkUFOoJA=",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,65 @@
{
"services": [
{
"type": "dns",
"address": "72.3.128.241"
},
{
"type": "dns",
"address": "72.3.128.240"
}
],
"networks": [
{
"network_id": "00000000-0000-0000-0000-000000000000",
"type": "ipv4",
"netmask": "255.255.255.0",
"link": "tapfafb5c05-a6",
"routes": [
{
"netmask": "0.0.0.0",
"network": "0.0.0.0",
"gateway": "23.253.229.1"
}
],
"ip_address": "23.253.229.154",
"id": "network0"
},
{
"network_id": "11111111-1111-1111-1111-111111111111",
"type": "ipv4",
"netmask": "255.255.224.0",
"link": "tape501e1cd-10",
"routes": [
{
"netmask": "255.240.0.0",
"network": "10.176.0.0",
"gateway": "10.208.160.1"
},
{
"netmask": "255.240.0.0",
"network": "10.208.0.0",
"gateway": "10.208.160.1"
}
],
"ip_address": "10.208.169.118",
"id": "network1"
}
],
"links": [
{
"ethernet_mac_address": "BC:76:4E:01:62:86",
"mtu": 1500,
"type": null,
"id": "tapfafb5c05-a6",
"vif_id": "fafb5c05-a661-48ae-9810-46601c7e22d1"
},
{
"ethernet_mac_address": "BC:76:4E:05:7B:06",
"mtu": 1500,
"type": null,
"id": "tape501e1cd-10",
"vif_id": "e501e1cd-10d0-4e63-b0c2-6542989ccbb2"
}
]
}

View File

@ -0,0 +1,58 @@
{
"region": "dfw",
"ip_whitelist": [
"173.203.32.136/29",
"173.203.5.160/27",
"67.192.155.96/27",
"89.234.21.64/28",
"166.78.7.146",
"50.56.249.239",
"166.78.107.18",
"162.209.4.155",
"95.138.174.55",
"162.13.1.53",
"119.9.12.91",
"119.9.12.98",
"50.56.251.251",
"209.114.42.90",
"209.114.42.65",
"209.114.42.78",
"209.114.42.95",
"209.114.42.7",
"209.114.42.104",
"209.114.42.106",
"209.114.42.108",
"209.114.40.174",
"166.78.24.91",
"166.78.17.140",
"166.78.7.98",
"67.192.38.80",
"67.192.38.81",
"10.177.239.240",
"10.177.240.72",
"10.177.228.20",
"10.177.245.131",
"10.177.245.132",
"10.177.245.133",
"10.177.245.134",
"10.177.245.135",
"10.177.245.136",
"10.177.245.137",
"10.181.143.195",
"10.181.129.165",
"10.181.14.198",
"198.101.223.248",
"10.180.135.32",
"166.78.7.146",
"50.56.249.239",
"10.181.3.91",
"10.181.24.208"
],
"roles": [
"checkmate",
"object-store:default",
"compute:default",
"identity:user-admin"
],
"provider": "Rackspace"
}

View File

@ -0,0 +1 @@
0

View File

@ -0,0 +1 @@
bc:76:4e:01:62:86

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1 @@
0

View File

@ -0,0 +1 @@
bc:76:4e:05:7b:06

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,32 @@
{
"reservation-id": "r-psg0p301",
"hostname": "test-monty-config-drive",
"security-groups": [
"default"
],
"ramdisk-id": null,
"public-ipv4": "",
"ami-manifest-path": "FIXME",
"instance-type": "1 GB Performance",
"instance-id": "i-0003e0bf",
"local-ipv4": "23.253.229.154",
"local-hostname": "test-monty-config-drive",
"placement": {
"availability-zone": "nova"
},
"ami-launch-index": 0,
"public-hostname": "test-monty-config-drive",
"public-keys": {
"0": {
"openssh-key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n",
"_name": "0=mordred"
}
},
"ami-id": "ami-0000007b",
"kernel-id": null,
"instance-action": "none",
"block-device-mapping": {
"ami": "xvda",
"root": "/dev/xvda"
}
}

View File

@ -0,0 +1,32 @@
{
"reservation-id": "r-psg0p301",
"hostname": "test-monty-config-drive",
"security-groups": [
"default"
],
"ramdisk-id": null,
"public-ipv4": "",
"ami-manifest-path": "FIXME",
"instance-type": "1 GB Performance",
"instance-id": "i-0003e0bf",
"local-ipv4": "23.253.229.154",
"local-hostname": "test-monty-config-drive",
"placement": {
"availability-zone": "nova"
},
"ami-launch-index": 0,
"public-hostname": "test-monty-config-drive",
"public-keys": {
"0": {
"openssh-key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n",
"_name": "0=mordred"
}
},
"ami-id": "ami-0000007b",
"kernel-id": null,
"instance-action": "none",
"block-device-mapping": {
"ami": "xvda",
"root": "/dev/xvda"
}
}

View File

@ -0,0 +1,11 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"random_seed": "kDKX9XcR4PoawlETDmYbsTepE6rx9ffmNpmd5UMLwIU+pdkZEXASxSMuD1hIrN9Zoi3V9icP+DTKO3UchEn33A8zXJI8knmOaxs3mU1aF7slw9SG3bWZh4teSQhINPA4i8bann12dzRXCcsn2Yh6GKYtltRN8IsUd+d55yS30san1AFTaeA/bSaSbDmuDV1cnYebCV5XypKWu9c180JnBxZLzLMO848zPAi43IwSbLtfPfPay9rD6zOrCrJqru40x+bhWZO2ue9J0Xaryr8uMq28orz3+f/B+9QQZSZU95vhPZFKfBX2C1N2r49HVAMjMAgVhfsV4Lb5TTv6PrazGjv/aog4UEaFzAUBm5UGWO7MjeguS0l+2MFGU5iGbpnUahM4xLIhfaYzZMSzZeENsa9jAUBHFBT583Jm7HLCjd2HpBqS2AkW/HR0uoDMN/AVaQskNKtWf8qnfAqRqX1G6riy/RNmpddHg49yFFtPwxVoCfboNiqB1VAxkLNVafy9c6Pjoi9hkWwO+m/kAxQknJ4CzbnZ9j/oUTJDETk50rdxXqq5Jf/p3ibNT+CwWqid9bIL3UfXzVSII0sCw3lqHGAyPS0fewYX2ZB1rd355/xEGfjg5fhQZHLBPCwstdVyobspXWWaKiS2W07KlDPxYL3++wM9IuVq50PPEAqUP8o=",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"random_seed": "u+GpbN5sFLsXklaXQz2AKkn9Iu58uqz2cUzR17RkY+lf3U920FR9znyiRc8V2DThmkrdbr8mDRBZ8XqJ0ckL5Y/Tpzas/RAl5iEeYddrJeROv2k9D6zG5l5kW2dEc+uKE04q9tkFx+5kZBO1Jfyx/uDXgj3Mcn0xvQavv2orC/bDyUy9UBcoZmr98Rq+w/nIm1gpKo+opwvcPNo5/Xm44LK5XgLqu9na2YTG19dvrP7R2WZXGELDnu4CFZVsl+jRzm8wl697g+A9veVpiqGhNNClYyUsbfcu/LN87WM2U1FiE4U15g45w31jUkdyYZZBWOyZTMrkWgijS1l1Fl0gc6Gvg4/V3KgdaslDsvKyAwi4VsRRw/ShIdkwLLPah69g8hmWcJe4IOtmaUMcJnS2U9csI9BeG0rkV3UtFAf5ZjjQ8CzKXq1fWkucBqqh8+60Z92blHjMeu/o78wjfdxVk4AKEhPs/JvYzSKryACg5k9k2McbyAaK5Vc+sJO4SC4BUuuLlZNM8UBTq0kg2XnCA8Nw+vRosMHjdoeKdx/KoOMTm7gN0bdWXgYiPWFIKGiRRVFS137EJbjYfPtb815T+FZZxbHMptrIhQE9sEf107oOWrGj9fRBvt9I2KTg2PEPv0s6x3aJ6QnP/cLr4leuCxfmGR5n0LUC0Gg6LVgvs6Y=",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,123 @@
{
"network_info": {
"services": [
{
"type": "dns",
"address": "72.3.128.241"
},
{
"type": "dns",
"address": "72.3.128.240"
}
],
"networks": [
{
"network_id": "00000000-0000-0000-0000-000000000000",
"type": "ipv4",
"netmask": "255.255.255.0",
"link": "tapfafb5c05-a6",
"routes": [
{
"netmask": "0.0.0.0",
"network": "0.0.0.0",
"gateway": "23.253.229.1"
}
],
"ip_address": "23.253.229.154",
"id": "network0"
},
{
"network_id": "11111111-1111-1111-1111-111111111111",
"type": "ipv4",
"netmask": "255.255.224.0",
"link": "tape501e1cd-10",
"routes": [
{
"netmask": "255.240.0.0",
"network": "10.176.0.0",
"gateway": "10.208.160.1"
},
{
"netmask": "255.240.0.0",
"network": "10.208.0.0",
"gateway": "10.208.160.1"
}
],
"ip_address": "10.208.169.118",
"id": "network1"
}
],
"links": [
{
"ethernet_mac_address": "BC:76:4E:01:62:86",
"mtu": 1500,
"type": null,
"id": "tapfafb5c05-a6",
"vif_id": "fafb5c05-a661-48ae-9810-46601c7e22d1"
},
{
"ethernet_mac_address": "BC:76:4E:05:7B:06",
"mtu": 1500,
"type": null,
"id": "tape501e1cd-10",
"vif_id": "e501e1cd-10d0-4e63-b0c2-6542989ccbb2"
}
]
},
"region": "dfw",
"ip_whitelist": [
"173.203.32.136/29",
"173.203.5.160/27",
"67.192.155.96/27",
"89.234.21.64/28",
"166.78.7.146",
"50.56.249.239",
"166.78.107.18",
"162.209.4.155",
"95.138.174.55",
"162.13.1.53",
"119.9.12.91",
"119.9.12.98",
"50.56.251.251",
"209.114.42.90",
"209.114.42.65",
"209.114.42.78",
"209.114.42.95",
"209.114.42.7",
"209.114.42.104",
"209.114.42.106",
"209.114.42.108",
"209.114.40.174",
"166.78.24.91",
"166.78.17.140",
"166.78.7.98",
"67.192.38.80",
"67.192.38.81",
"10.177.239.240",
"10.177.240.72",
"10.177.228.20",
"10.177.245.131",
"10.177.245.132",
"10.177.245.133",
"10.177.245.134",
"10.177.245.135",
"10.177.245.136",
"10.177.245.137",
"10.181.143.195",
"10.181.129.165",
"10.181.14.198",
"198.101.223.248",
"10.180.135.32",
"166.78.7.146",
"50.56.249.239",
"10.181.3.91",
"10.181.24.208"
],
"roles": [
"checkmate",
"object-store:default",
"compute:default",
"identity:user-admin"
],
"provider": "Rackspace"
}

View File

@ -0,0 +1,12 @@
{
"admin_pass": "PBzEwRC8ZgVW",
"random_seed": "YPPvhdhxMKysu5EiBaaZpyDv2DIhMkRJp6XscFvCaI1Bvu1CD1mBg0jwURdVN5T0tbhYH74c8WcatRjyocZXMxUQgUeYd1METz3Fh2+aiJa2HRSCLdDcXzE8kD9VadqEAD/rOiUhjMToDepA6VAKzFTYcbnBNKRgshAFHmBfx0TCOtmM7A7CVsKhAfcMcf2ySYQ0PnS2emRrU21/vv/bj//nb2XxHKPrm7tLLDzqHCd+bg5WQsJ5NkDeuILpyHMGnWUyeNs6jg4z47Cq6grG4orM2G58SW3UbzXPs8waqZrYsfpZMMOj8CUqiAO44vptqOpYb3LlcsSRJHoBfVRY+BlTMkKIDwS3vEoSEX97OwMFDx5x4NXziuoZ4UyVzzAbnLeJHPospKcQC7A0JweazmEJpzTjlYyvC/yNFX8Wrwnohg+I22UghsNI/VVtjwzphUACi1nbttSzlkFkajPJjBAE66UHRp2VRCejLAzjT5TuM276rljQFIW73g9TjD3zf9FFfCYLBgie3pkNFXplLCUbLCUUtvUGJOfaN3N9sBO+P3FFAyuF6P9Jo5QKK2uMVLlE9rS3xOF9q4qtHAvXPSX2ikWQEkklz1UVCNHd5p2nT6C71kCBsT6d2/yOLXTLNAWDf8qpw8poVWlhwSj52mGY/uXYB15+PartkUFOoJA=",
"uuid": "2615627a-222f-41bb-813b-df92b776ee78",
"availability_zone": "nova",
"hostname": "test-monty-config-drive",
"launch_index": 0,
"public_keys": {
"mordred": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot\n"
},
"name": "test-monty-config-drive"
}

View File

@ -0,0 +1,123 @@
{
"network_info": {
"services": [
{
"type": "dns",
"address": "72.3.128.241"
},
{
"type": "dns",
"address": "72.3.128.240"
}
],
"networks": [
{
"network_id": "00000000-0000-0000-0000-000000000000",
"type": "ipv4",
"netmask": "255.255.255.0",
"link": "tapfafb5c05-a6",
"routes": [
{
"netmask": "0.0.0.0",
"network": "0.0.0.0",
"gateway": "23.253.229.1"
}
],
"ip_address": "23.253.229.154",
"id": "network0"
},
{
"network_id": "11111111-1111-1111-1111-111111111111",
"type": "ipv4",
"netmask": "255.255.224.0",
"link": "tape501e1cd-10",
"routes": [
{
"netmask": "255.240.0.0",
"network": "10.176.0.0",
"gateway": "10.208.160.1"
},
{
"netmask": "255.240.0.0",
"network": "10.208.0.0",
"gateway": "10.208.160.1"
}
],
"ip_address": "10.208.169.118",
"id": "network1"
}
],
"links": [
{
"ethernet_mac_address": "BC:76:4E:01:62:86",
"mtu": 1500,
"type": null,
"id": "tapfafb5c05-a6",
"vif_id": "fafb5c05-a661-48ae-9810-46601c7e22d1"
},
{
"ethernet_mac_address": "BC:76:4E:05:7B:06",
"mtu": 1500,
"type": null,
"id": "tape501e1cd-10",
"vif_id": "e501e1cd-10d0-4e63-b0c2-6542989ccbb2"
}
]
},
"region": "dfw",
"ip_whitelist": [
"173.203.32.136/29",
"173.203.5.160/27",
"67.192.155.96/27",
"89.234.21.64/28",
"166.78.7.146",
"50.56.249.239",
"166.78.107.18",
"162.209.4.155",
"95.138.174.55",
"162.13.1.53",
"119.9.12.91",
"119.9.12.98",
"50.56.251.251",
"209.114.42.90",
"209.114.42.65",
"209.114.42.78",
"209.114.42.95",
"209.114.42.7",
"209.114.42.104",
"209.114.42.106",
"209.114.42.108",
"209.114.40.174",
"166.78.24.91",
"166.78.17.140",
"166.78.7.98",
"67.192.38.80",
"67.192.38.81",
"10.177.239.240",
"10.177.240.72",
"10.177.228.20",
"10.177.245.131",
"10.177.245.132",
"10.177.245.133",
"10.177.245.134",
"10.177.245.135",
"10.177.245.136",
"10.177.245.137",
"10.181.143.195",
"10.181.129.165",
"10.181.14.198",
"198.101.223.248",
"10.180.135.32",
"166.78.7.146",
"50.56.249.239",
"10.181.3.91",
"10.181.24.208"
],
"roles": [
"checkmate",
"object-store:default",
"compute:default",
"identity:user-admin"
],
"provider": "Rackspace"
}

View File

@ -0,0 +1 @@
0

View File

@ -0,0 +1 @@
bc:76:4e:01:62:86

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1 @@
0

View File

@ -0,0 +1 @@
bc:76:4e:05:7b:06

View File

@ -0,0 +1 @@
1

View File

@ -0,0 +1,16 @@
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=bc:76:4e:01:62:86
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=bc:76:4e:05:7b:06
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet

View File

@ -0,0 +1,5 @@
### Write /etc/network/interfaces
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp

View File

@ -0,0 +1,16 @@
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=bc:76:4e:01:62:86
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=bc:76:4e:05:7b:06
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet

4
gleam/tests/fixtures/test/hp.keys.out vendored Normal file
View File

@ -0,0 +1,4 @@
### Write /root/.ssh/authorized_keys
# Injected key mordred by keypair extension
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot

View File

@ -0,0 +1,16 @@
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=bc:76:4e:01:62:86
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=dhcp
HWADDR=bc:76:4e:05:7b:06
ONBOOT=yes
NM_CONTROLLED=no
TYPE=Ethernet

View File

@ -0,0 +1,5 @@
### Write /etc/network/interfaces
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp

View File

@ -0,0 +1,34 @@
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=static
HWADDR=BC:76:4E:01:62:86
IPADDR=23.253.229.154
NETMASK=255.255.255.0
ONBOOT=yes
NM_CONTROLLED=no
DEFROUTE=yes
GATEWAY=23.253.229.1
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=static
HWADDR=BC:76:4E:05:7B:06
IPADDR=10.208.169.118
NETMASK=255.255.224.0
ONBOOT=yes
NM_CONTROLLED=no
### Write /etc/sysconfig/network-scripts/route-eth1
ADDRESS0=10.176.0.0
NETMASK0=255.240.0.0
GATEWAY0=10.208.160.1
ADDRESS1=10.208.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.208.160.1

View File

@ -0,0 +1,19 @@
### Write /etc/network/interfaces
auto eth0
iface eth0 inet static
address 23.253.229.154
netmask 255.255.255.0
gateway 23.253.229.1
auto eth1
iface eth1 inet static
address 10.208.169.118
netmask 255.255.224.0
post-up route add -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
post-up route add -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240

View File

@ -0,0 +1,34 @@
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=static
HWADDR=BC:76:4E:01:62:86
IPADDR=23.253.229.154
NETMASK=255.255.255.0
ONBOOT=yes
NM_CONTROLLED=no
DEFROUTE=yes
GATEWAY=23.253.229.1
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=static
HWADDR=BC:76:4E:05:7B:06
IPADDR=10.208.169.118
NETMASK=255.255.224.0
ONBOOT=yes
NM_CONTROLLED=no
### Write /etc/sysconfig/network-scripts/route-eth1
ADDRESS0=10.176.0.0
NETMASK0=255.240.0.0
GATEWAY0=10.208.160.1
ADDRESS1=10.208.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.208.160.1

View File

@ -0,0 +1,4 @@
### Write /root/.ssh/authorized_keys
# Injected key mordred by keypair extension
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot

View File

@ -0,0 +1,34 @@
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=static
HWADDR=BC:76:4E:01:62:86
IPADDR=23.253.229.154
NETMASK=255.255.255.0
ONBOOT=yes
NM_CONTROLLED=no
DEFROUTE=yes
GATEWAY=23.253.229.1
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=static
HWADDR=BC:76:4E:05:7B:06
IPADDR=10.208.169.118
NETMASK=255.255.224.0
ONBOOT=yes
NM_CONTROLLED=no
### Write /etc/sysconfig/network-scripts/route-eth1
ADDRESS0=10.176.0.0
NETMASK0=255.240.0.0
GATEWAY0=10.208.160.1
ADDRESS1=10.208.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.208.160.1

View File

@ -0,0 +1,19 @@
### Write /etc/network/interfaces
auto eth0
iface eth0 inet static
address 23.253.229.154
netmask 255.255.255.0
gateway 23.253.229.1
auto eth1
iface eth1 inet static
address 10.208.169.118
netmask 255.255.224.0
post-up route add -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
post-up route add -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240

View File

@ -0,0 +1,30 @@
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=static
HWADDR=BC:76:4E:01:62:86
IPADDR=23.253.229.154
NETMASK=255.255.255.0
ONBOOT=yes
NM_CONTROLLED=no
DEFROUTE=yes
GATEWAY=23.253.229.1
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=static
HWADDR=BC:76:4E:05:7B:06
IPADDR=10.208.169.118
NETMASK=255.255.224.0
ONBOOT=yes
NM_CONTROLLED=no
### Write /etc/sysconfig/network-scripts/route-eth1
ADDRESS0=10.176.0.0
NETMASK0=255.240.0.0
GATEWAY0=10.208.160.1
ADDRESS1=10.208.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.208.160.1

View File

@ -0,0 +1,17 @@
### Write /etc/network/interfaces
auto eth0
iface eth0 inet static
address 23.253.229.154
netmask 255.255.255.0
gateway 23.253.229.1
auto eth1
iface eth1 inet static
address 10.208.169.118
netmask 255.255.224.0
post-up route add -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
post-up route add -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240

View File

@ -0,0 +1,30 @@
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=static
HWADDR=BC:76:4E:01:62:86
IPADDR=23.253.229.154
NETMASK=255.255.255.0
ONBOOT=yes
NM_CONTROLLED=no
DEFROUTE=yes
GATEWAY=23.253.229.1
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=static
HWADDR=BC:76:4E:05:7B:06
IPADDR=10.208.169.118
NETMASK=255.255.224.0
ONBOOT=yes
NM_CONTROLLED=no
### Write /etc/sysconfig/network-scripts/route-eth1
ADDRESS0=10.176.0.0
NETMASK0=255.240.0.0
GATEWAY0=10.208.160.1
ADDRESS1=10.208.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.208.160.1

View File

@ -0,0 +1,4 @@
### Write /root/.ssh/authorized_keys
# Injected key mordred by keypair extension
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLsTZJ8hXTmzjKxYh/7V07mIy8xl2HL+9BaUlt6A6TMsL3LSvaVQNSgmXX5g0XfPWSCKmkZb1O28q49jQI2n7n7+sHkxn0dJDxj1N2oNrzNY7pDuPrdtCijczLFdievygXNhXNkQ2WIqHXDquN/jfLLJ9L0jxtxtsUMbiL2xxZEZcaf/K5MqyPhscpqiVNE1MjE4xgPbIbv8gCKtPpYIIrktOMb4JbV7rhOp5DcSP5gXtLhOF5fbBpZ+szqrTVUcBX0oTYr3iRfOje9WPsTZIk9vBfBtF416mCNxMSRc7KhSW727AnUu85hS0xiP0MRAf69KemG1OE1pW+LtDIAEYp mordred@camelot

View File

@ -0,0 +1,30 @@
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240
### Write /etc/sysconfig/network-scripts/ifcfg-eth0
# Automatically generated, do not edit
DEVICE=eth0
BOOTPROTO=static
HWADDR=BC:76:4E:01:62:86
IPADDR=23.253.229.154
NETMASK=255.255.255.0
ONBOOT=yes
NM_CONTROLLED=no
DEFROUTE=yes
GATEWAY=23.253.229.1
### Write /etc/sysconfig/network-scripts/ifcfg-eth1
# Automatically generated, do not edit
DEVICE=eth1
BOOTPROTO=static
HWADDR=BC:76:4E:05:7B:06
IPADDR=10.208.169.118
NETMASK=255.255.224.0
ONBOOT=yes
NM_CONTROLLED=no
### Write /etc/sysconfig/network-scripts/route-eth1
ADDRESS0=10.176.0.0
NETMASK0=255.240.0.0
GATEWAY0=10.208.160.1
ADDRESS1=10.208.0.0
NETMASK1=255.240.0.0
GATEWAY1=10.208.160.1

View File

@ -0,0 +1,17 @@
### Write /etc/network/interfaces
auto eth0
iface eth0 inet static
address 23.253.229.154
netmask 255.255.255.0
gateway 23.253.229.1
auto eth1
iface eth1 inet static
address 10.208.169.118
netmask 255.255.224.0
post-up route add -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.176.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
post-up route add -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
pre-down route del -net 10.208.0.0 netmask 255.240.0.0 gw 10.208.160.1 || true
### Write /etc/resolv.conf
nameserver 72.3.128.241
nameserver 72.3.128.240

31
rebuild-test-output.sh Executable file
View File

@ -0,0 +1,31 @@
#!/bin/bash
# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
#
# See the License for the specific language governing permissions and
# limitations under the License.
SAMPLE_DIR=gleam/tests/fixtures
for vendor_dir in $(find $SAMPLE_DIR \
-maxdepth 1 -mindepth 1 -type d | grep -v test) ; do
vendor=$(basename $vendor_dir)
python gleam/cmd.py \
-n --root $vendor_dir --skip-network --ssh \
> $SAMPLE_DIR/test/$vendor.keys.out
for distro in debian ubuntu redhat fedora centos ; do
python gleam/cmd.py \
-n --root $vendor_dir --distro $distro > $SAMPLE_DIR/test/$vendor.$distro.network.out
done
done