~prometheanfire/cloud-init:fix-gentoo-networking

Last commit made on 2016-08-22
Get this branch:
git clone -b fix-gentoo-networking https://git.launchpad.net/~prometheanfire/cloud-init
Only Matthew Thode can upload to this branch. If you are Matthew Thode please log in for upload directions.

Branch merges

Branch information

Name:
fix-gentoo-networking
Repository:
lp:~prometheanfire/cloud-init

Recent commits

1f8b37e... by Matthew Thode

Fix Gentoo net config generation

This gets Gentoo work on simple configs with static IPs or
DHCP on physical interfaces. This gets Gentoo bootable again.

41271bd... by Andrew Jorgensen

distros: fix get_primary_arch method use of os.uname

os.uname is a method, not a property.

d861415... by Christian Ehrhardt 

Apt: add new apt configuration format

This adds an improved apt configuration format that is fully backwards
compatible with previous behavior. This is mostly copied from curtin's
implementation.

It does:
 * clean up and centralizes many of the top level 'apt_*' values that
   previously existed into a single top level 'apt'key.
 * support a 'source' in apt/sources/entry that has only a key
 * documents new features and adds tests.

See the added doc/examples/cloud-config-apt.txt for more information.

648dbbf... by Brent Baude

Get Azure endpoint server from DHCP client

It is more efficient and cross-distribution safe to use the hooks function
from dhclient to obtain the Azure endpoint server (DHCP option 245).

This is done by providing shell scritps that are called by the hooks
infrastructure of both dhclient and NetworkManager. The hooks then
invoke 'cloud-init dhclient-hook' that maintains json data
with the dhclient options in
/run/cloud-init/dhclient.hooks/<interface>.json .

The azure helper then pulls the value from
/run/cloud-init/dhclient.hooks/<interface>.json file(s). If that file does
not exist or the value is not present, it will then fall back to the
original method of scraping the dhcp client lease file.

bc2c326... by Ben Howard

DigitalOcean: use the v1.json endpoint

Per [1], DigitalOcean provides the metadata in multiple formats. The JSON
document is the preferred endpoint.

Changes:
- Switch to the v1.json meta-data endpoint
- Identify droplet identity from SMBIOS
- Only poll for metadata when the instance is confirmed to be a droplet
- Removal of hard-coded mirrors

Additionally, centralize the gates on running 'dmidecode' on arm arches,
and update tests to address.

[1] https://developers.digitalocean.com/documentation/metadata/

d9537aa... by Scott Moser

MAAS: add vendor-data support

Add vendor-data support to maas which will behave like the openstack
vendor-data does. Data returned from maas must be yaml loadable.

Also update the main in DataSourceMAAS to "just work" on a maas
deployed system.

LP: #1612313

80db6eb... by Joshua Harlow

Upgrade to a configobj package new enough to work

The older versions have various issues with unicode
and those versions seem to be pulled into epel so
we should denote that those versions are bad and
shouldn't be used by updating to a newer version that
does work.

8028c92... by Scott Moser

ConfigDrive: recognize 'tap' as a link type.

This just adds 'tap' to the list of types that are understood to
be physical or virtual network devices. Openstack basically exposes
the type of the host device through.

LP: #1610784

cdcac86... by Scott Moser

NoCloud: fix bug providing network-interfaces via meta-data.

This fixes an issue with the NoCloud datasource where it would not
recognize the 'network-interfaces' key provided in meta-data.

LP: 1577982

db72092... by Joshua Harlow

Add distro tags on config modules that should have it

Some of these really won't work to well on non-supporting
distros so to avoid further user pain tag this with the
supported distros where they should work.