Created by Scott Moser and last modified
Get this branch:
bzr branch lp:~smoser/cloud-init/trunk.transfer-ds
Only Scott Moser can upload to this branch. If you are Scott Moser please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Scott Moser

Recent revisions

1189. By Scott Moser

commit data source transfer stuff

the goal here is to make a v2 datasources that are mroe aware of
network_config and can return a 'transfer' mode, taht basically
says "Yes, I'm the datasource you're looking for, but I need some network".

I walked through the DS and looked which ones could benefit from this.
The first ones to look at would be:
ConfigDrive: claim, hostname, network
NoCloud : claim, hostname, network
MAAS : claim, network (disabled)
Azure : claim, hostname

                  definitive hostname network
== Pure Local ==
ConfigDrive: YES yes yes
CloudSigma: YES yes no
NoCloud YES yes yes
OpenNebula Weak yes yes
OVF Weak yes yes
SmartOS YES yes no
AltCloud YES no no

== Hybrid ==
Azure: YES yes no
BigStep: YES no could[partner mod]

== Pure Network ==
CloudStack: NO no no
Ec2 NO no yes[network]
GCE NO no no?
MAAS YES no no
OpenStack NO no no
DigitalOcean NO no no

1188. By Scott Moser

quickly check to see if the previous instance id is still valid

This adds a check in cloud-init to see if the existing (cached)
datasource is still valid. It relies on support from the Datasource
to implement 'check_instance_id'. That method should quickly determine
(if possible) if the instance id found in the datasource is still valid.

This means that we can still notice new instance ids without
depending on a network datasource on every boot.

I've also implemented check_instance_id for the superclass and for
  DataSourceAzure (check dmi data)
  DataSourceConfigDrive (check dmi data)
  DataSourceNocloud (check the seeded data or kernel command line)
  DataSourceOpenstack (check dmi data)

1187. By Scott Moser

debian packaging: adjust build-depends for xenial

python3 support was moved out of pyflakes into python3-pyflakes.
Adjust the package to build on trusty where python3-pyflakes was
not present and also on xenial where it is.

Note, this does mean that sbuild now requires '--resolve-alternatives'.
That is how it is used on launchpad but is not the default in sbuild.

1186. By Scott Moser

Send proper SUCCESS / FAILED events to the underlying VMware hypervisor.

Added code to customize timezone.
Added few utility functions to send events to the VMware hypervisor.
Re-factored the code little bit.
Added code to send SUCCESS event when customization succeeds.
Added code to send FAILED event if any error occurs during customization.

1185. By Scott Moser

fix ssh_pwauth behavior to function as documented.

Add option checking for ssh_pwauth to bring behavior inline with the
description cloud-config.txt example.

Previously, setting 'ssh_pwauth' to 'unchanged' or '' would result
in an empty value for PasswordAuthentication when it should have
simply not been modified.

1184. By Scott Moser

doc/ add new logo to rtd (read the docs) docs.

1183. By Scott Moser

doc: document that volume label must be 'cidata' NocCloud datasource.

1182. By Scott Moser

some systemd cleanups

  * write to directory /run/cloud-init/ rather than /run
  * read from /proc/1/cmdline for the command line if inside a container

 cloud-init-local.service: now run fully before any networking comes up.
 cloud-init.service: run before network-online.target and after
    networking.service. This ends up meaning other things that require
    network-online.target will run after cloud-init.service, but
    cloud-init.service will still have networking.

    The 'networking.service' is ifupdown specific. Further changes would
    be needed for other networking systems (networkd for example)

1181. By Scott Moser

change return value for dmi data of all \xff to be ""

Previously we returned a string of "." the same length as the dmi field.
That seems confusing to the user as "." would seem like a valid response
when in fact this value should not be considered valid.

So now, in this case, return empty string.

1180. By Scott Moser

dmi data: fix failure of reading dmi data for unset dmi values

it is not uncommon to find dmi data in /sys full of 'ff'. utf-8
decoding of those would fail, causing warning and stacktrace.

Return '.' instead of \xff. This is what dmidecode would return.

$ dmidecode --string system-product-name

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
This branch contains Public information 
Everyone can see this information.