Age | Commit message (Collapse) | Author |
|
Instead of only expected a list, tuple, or set type
allow for a string type to be passed in, and add log
message that occurs if some other type is used that
can not be correctly processed.
|
|
|
|
This adds a DataSource for DigitalOcean's metadata service. The service is
documented at https://developers.digitalocean.com/metadata/ .
|
|
|
|
|
|
|
|
Without this change the tests are currently failing on rhel7
since a location where a hostname file is written no longer
exists at that location when systemd is active. To avoid this
allow the test to inspect if the distro has systemd enabled
and avoid testing the file when systemd is being used so the
test passes.
We likely need to figure out a better way to test features
that no longer exist as files but exist as commands with
systemd in general.
|
|
|
|
Defaulting to only trying once.
|
|
The DigitalOcean metadata service is an AWS-style service available
over HTTP via the link local address 169.254.169.254. The specifics
of the API are documented at:
https://developers.digitalocean.com/metadata/
|
|
|
|
on the platform involved. Xen/KVM (Azure?) use different drivers, which
results in different device names.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this supports a list of input, and cleans up that list
for the platform specific mount types. Basically,
mtype = None
means 'mount -t auto' or the equivalent for the platform.
and 'iso9660' means "iso type".
|
|
|
|
This allows the caller to supply their own leaf decoder, which will
then be in charge of translating the content of the url.
|
|
HVM instances on EC2 have grub on /dev/xvda.
The bug here resulted in a prompt on grub update.
LP: #1336855
|
|
|
|
|
|
util.log_time()'s return value was what was being sent to fork_cb. This means
the resize ran in parallel and the call to fork_cb threw a traceback (trying
to call Nonetype).
By permitting fork_cb to take kwargs, and using the correct method syntax,
this now forks and resizes in the background as appropriate.
|
|
|
|
|
|
For now, this vendor data handling is just added to openstack.
However, in an effort to allow sanely handling of multi-part vendor-data
that is namespaced, we add openstack.convert_vendordata_json .
That basically takes whatever was loaded from vendordata and takes
the 'cloud-init' key if it is a dict. This way the author can
namespace cloud-init, basically telling it to ignore everything else.
|
|
We were checking for presense of meta_data.json for each supported
metadata version. Instead just check that /openstack is there.
This reduces the time to check on EC2 or any other cloud.
|
|
instead of taking a version that they should look for,
the readers now just select the highest supported version.
definitely a use case later for having version= but nothing
is using it now.
|
|
|
|
|
|
|
|
using tuple for _versions was just not necessary.
fix reference to undefined os_versions.
|
|
If something is broken as in a built in config, or code
just broken, then logging warning during search for metadata
is ok.
|
|
make pyflakes now passes.
|
|
This data will be treated the same as vendordata from other sources.
|
|
Updated read_config_drive: removed the unused version kwarg, used the
OS_VERSIONS tuple from the openstack helper to avoid hardcoding
versions.
Added a comment to the tuple in helpers/openstack.py asking for it to
be kept in chronological order.
|
|
In a container the device nodes may exist but not be writable.
I'm seeing this on trusty host with trusty containers, the root
device ends up looking like it is to /dev/loop0.
LP: #1366891
|
|
Use the regular logic to create sudo rules and just supply the correct
filename. The temp script in tools/ should install 2 more dependencies.
|
|
|