Age | Commit message (Collapse) | Author |
|
|
|
Enable user-data encoding support for GCE. Extended and updated tests to
support checking the user-data encoding.
User can now pass in user-data encoded in base64 and indicate they've
done so by adding a tag 'user-data-encoding' with value 'base64'.
LP: #1404311
|
|
just so we don't come to rely on it being set to 'base64' or ''.
rather the default case is that it wont be present at all.
|
|
|
|
--ignore was being called with ',E121,E...' rather than
'E121,E...'.
that resulted in odd behavior, missing the pep8 errors that are fixed
here.
|
|
|
|
|
|
|
|
this was broken previously when user-data and vender-data were
brought together.
|
|
- Handle ipv6 route information not existing
gracefully (for systems that don't have it)
- Fix the getgateway function (broken due to
ipv4/ipv6 keys now existing in route info)
- Separate the centering of the route info ipv4
information from the centering of the ipv6 information
so that this looks prettier...
- Use try: except: else instead of settings value to
None and then later checking for None (more pythonic
this way)
|
|
|
|
|
|
After the routeinfo function started to return
a dictionary containing ipv4 and ipv6 information
we now need to make sure we search the appropriate
key.
|
|
Instead of failing when IPv6 information is not found we
should be more tolerant of said information not existing
so that we behave like the pre IPv6 addition.
|
|
Currently the rpm building process that cloud-init provides is
not working correctly. This adjusts the spec file, the setup.py
file and the distro files to ensure that it continues to work
as expected.
|
|
|
|
Instead of using assertGreater which is new on
python2.7 just use assertNotEqual which does exist
on python2.6 to perform the same/similar operation.
This makes the unittest not break on python2.6
|
|
When the ubuntu networking info file has ipv6 addresses inside
it we need to make sure that we parse that information out and
place it (at least) in the rhel network configuration writing.
In later patches the other distros that use this parsed network
configuration will likely also need to be updated (ubuntu and
debian already should function as expected with regard to ipv6
support).
|
|
+ Scenario with multiple NICs
|
|
- Saw an issue in my earlier commit with multiple NICs. This commit
fixes that issue, along with the indentation issue
|
|
This is minor change which uses the new Chef (company) top
level domain for grabbing the Omnibus installation shell script.
|
|
Instead of only expected a list, tuple, or set type
allow for a string type and dict to be passed in for 'ssh_authorized_keys',
and add log message that occurs if some other type is used that
can not be correctly processed.
|
|
Previously the usage of the yaml_dumps module was causing
any python unicode key and value to show up as:
'item': !!python/unicode "some string"
This was not very pretty...
Fix this by using safe_dumps (which is also a good thing to
use and allow_unicode=True). Also create a tiny helper function
in the cc_debug module that does not include the yaml start and
end footers (since this module has its own footers and headers).
Also includes a basic sanity test for this module.
|
|
This fix handles '=' as a delimiter in SSH config and
adds appropriate test methods to ensure this functionality
continues to work correctly.
|
|
|
|
Add the following adjustments to the chef template and module:
- Make it so that the chef directories can be provided (defaults
to the existing directories)
- Make the params much more configurable, and if a parameter is
provided in the chef configuration it will override existing template
parameters.
- Make the template skip lines if the values are None in the configuration
so that template lines can be removed if/when this is desirable.
- Allow the firstboot json path to be configurable (defaults to the
existing location).
- Adds a basic set of tests to ensure that good things are happening.
- Make a helper function to tell if already installed.
- Have the install routine not run chef after installed but have it instead
return a result to tell the caller to run the chef program once completed.
- Use the generated_by() utility function to give the ruby template a
better header comment.
- Set special parameters after selecting the basic chef parameters.
- Allow for the running after install and run arguments to be configured.
- Allow the omnibus url fetching retries to be configurable.
- Move the chef running to its own helper function
- Add module docs
|
|
|
|
The digital ocean datasource test is using assertIs which
is only created/existent on py2.7, so for the older py2.6
we need to add similar logic so that the test works correctly
there.
|
|
|
|
To make it so that cloud-init is installable in a virtualenv
where it can be tested in an isolated scenario we need to avoid
using and including datafiles (which won't be written into the
virtualenv) and also avoid using our initsys helper class which
also adds on its own files when we are being ran from a virtualenv.
|
|
This patch does the following:
1. Adds support to process network config with IPv6
2. Adds support to display 'ifconfig -a' information for IPv6
3. Adds support to display routing information for IPv6
|
|
sources.list was where this showed itself, but all rendered files
would have their newline stripped.
LP: #1355343
|
|
As requested by harlowja.
|
|
|
|
This also adds mock as a test dependency, as we are looking to migrate
away from mocker.
|
|
The digital ocean datasource test is using assertIs which
is only created/existent on py2.7, so for the older py2.6
we need to add similar logic so that the test works correctly
there.
|
|
To make it so that cloud-init is installable in a virtualenv
where it can be tested in an isolated scenario we need to avoid
using and including datafiles (which won't be written into the
virtualenv) and also avoid using our initsys helper class which
also adds on its own files when we are being ran from a virtualenv.
|
|
Add the basics of docs that can be extracted from the code itself (also
impose a initial format that will be useful for further modules to
follow). In this initial addition modify the cc_debug.py and
cc_ubuntu_init_switch.py to use this new style.
LP: #1383510
|
|
|
|
This busted logic causes 'output' to not be paid any attention
to, and thus output is not written to /var/log/cloud-init-output.log.
LP: #1387340
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
When a dict is passed in for 'ssh_authorized_keys' just extract
the keys from the values of the dict (and discard the keys).
|
|
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.
|