Age | Commit message (Collapse) | Author |
|
Previous commit inadvertently disabled the consumption of 'injected' files
in configdrive (openstack server boot --file=/target/file=local-file)
unless the datasource was in 'pass' mode. The default mode is 'net' so
that was not likely to happen.
Also here are:
a.) some comments to apply_network_config
b.) add backwards compatibility for distros that do not yet implement
apply_network_config by converting the network config into ENI format
and calling apply_network.
This is required because prior to the previous commit, those distros
would have had 'apply_network' called with the openstack provided
ENI file. But after this change they will have apply_network_config
called by cloudinit's main.
c.) add network_state_to_eni for converting net config to eni
it supports the not-actually-correct 'hwaddress' field in ENI
LP: #1602373
|
|
|
|
we could do this more simply by mocking fbsd.apply_network
and checking it's inputs. but this pushes it through the whole
path that the other test does.
|
|
|
|
* StringIO from six doesn't act as 'binary stream' in Python 3.
This patch changes StringIO to BytesIO to have code compatible with
Python 3 and Python 2.
* Add try/except for IOError in case when server.cfg doesn't exists. This is
necessary for unit tests or cases when server.cfg is not included to package
* Add UnitTest for cc_mcollective.py
LP: #1597699
|
|
Previous commit disabled the consumption of 'injected' files in
configdrive (openstack server boot --file=/target/file=local-file)
unless the datasource was in 'pass' mode. The default mode is 'net'
so that would never happen.
Also here are:
a.) a fix for 'links_path_prefix' string from debian, to finally
disable the rendering of systemd.link files (LP: #1594546)
b.) some comments to apply_network_config
c.) implement a backwards compatibility for for distros that do
not yet implement apply_network_config by converting the network
config into ENI format and calling apply_network.
This is required because prior to the previous commit, those distros
would have had 'apply_network' called with the openstack provided
ENI file. But after this change they will have apply_network_config
called by cloudinit's main.
d.) a network_state_to_eni helper for converting net config to eni
it supports the not-actually-correct 'hwaddress' field in ENI.
LP: #1602373
|
|
|
|
when user-data was not decodable, cloud-init would raise exception.
LP: #1532072
|
|
|
|
This moves bin/cloud-init's content into cloudinit/cmd/main.py,
and then fixes the pep8/flake8 issues with that.
The end result is easier testing of main.
|
|
|
|
|
|
|
|
This commit includes the content of that commit, plus a fix for the tests
(provided by Phil).
|
|
This allows for the test_cli test to be more sane.
|
|
|
|
|
|
|
|
Splits off distro specific code into specific files so that
other kinds of networking configuration can be written by the
various distro(s) that cloud-init supports.
It also isolates some of the cloudinit.net code so that it can
be more easily used on its own (and incorporated into other
projects such as curtin).
During this process it adds tests so that the net process can
be tested (to some level) so that the format conversion processes
can be tested going forward.
|
|
|
|
|
|
|
|
|
|
|
|
a.) remove 'gpg_' from function names in new gpg module.
b.) use --recv-keys rather than --recv
--recv-keys is more obvious and works back to precise at least.
c.) do not trim trailing '\n' from a armour'd key.
|
|
|
|
|
|
|
|
|
|
This helps for cleaner code structuring.
ALong that makeing sure all these functions have a gpg_prefix.
|
|
Tested and working on CentOS7 (container), so we can enable the tests
|
|
This allows the unittest to pass on CentOS, before it failed as it had no dpkg
available.
|
|
This might happen e.g. in locked down build environments.
In those cases this is detected and the test skipped while not giving up
testing it in more capable environments.
|
|
While the unittest gets a bit less real by that change, it will work in
protected environment (e.g. sbuild) and leave the developers .gpg keyring
alone.
|
|
|
|
By moving the "what it does" into the first line of the docstrings output
becomes much more useful.
|
|
|
|
The overall check for the expected key is a superset and would spot an issue.
|
|
|
|
The intentionally false name was meant for testing of abug, now we can and
should use a proper third party keyserver.
|
|
|
|
The functions clearly are apt specific so the name should reflect that.
|
|
|
|
|
|
|
|
|
|
|
|
This just mocks out use of lsb_release as it is not available
in a build environment.
Additionally mocks out use of getkeybyid. This admittedly
makes the test for a long key fingerprint not useful as it was
broken only inside getkeybyid.
Also fix 'make yaml' for cloud-config.txt
|
|
This branch accomplishes several things:
- centrally handle 'dsmode' to be 'local' or 'net.
This allows local data sources to run before networking
but still have user-data read by default when networking is available.
- support networking information being read on dreamcompute
dreamcompute's openstack declares networking via the
/etc/network/interfaces style 'network_config' format.
- support reading and applying networking information on SmartOS
- improve reading networking from openstack network_data.json (LP: #1577982)
add support for mtu and routes and many miscellaneous fixes.
- support for renaming devices in a container (LP: #1579130).
Also rename network devices as instructed by the host on
every boot where cloud-init networking is enabled. This is required
because a.) containers do not get systemd.link files applied
as they do not have udev. b.) if the initramfs is out of date
then we need to apply them.
- remove blocking of udev rules (LP: #1577844, LP: #1571761)
LP: #1577982, #1579130, #1577844, #1571761
|
|
|