summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2014-11-21Increase the robustness/configurability of the chef module...Joshua Harlow
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
2014-11-21Fix the digital ocean test on py2.6Joshua Harlow
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.
2014-11-21Only use datafiles and initsys addon outside virtualenvsJoshua Harlow
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.
2014-11-18retain trailing newline from template files when using jinja2Scott Moser
sources.list was where this showed itself, but all rendered files would have their newline stripped. LP: #1355343
2014-10-29Start adding cloud config module docs.Scott Moser
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
2014-10-29ChangeLog: update for last commitScott Moser
2014-10-20fix for rhel7 by using 'uses_systemd' to detect upstart/systemdScott Moser
2014-10-20Add Digital Ocean Datasource.Scott Moser
This adds a DataSource for DigitalOcean's metadata service. The service is documented at https://developers.digitalocean.com/metadata/ .
2014-10-20open 0.7.7Scott Moser
2014-10-01cc_mounts: add ability to create swap fileScott Moser
User can now configure setting of a swap file. Only supports un-encrypted swap for now. swap: filename: /swap.img size: "auto" or size in bytes maxsize: size in bytes Also adds 2 util: read_meminfo: return how much memory on system. human2bytes: convert human numbers (8G) to bytes.
2014-09-30FreeBSD: Support ConfigDriveScott Moser
Add support for freebsd reading config drive. Primary work is related to re-factoring mount_cb to not be so linux specific. Other changes: * declare PATH in freebsd initscripts * list dependency on e2fsprogs (for blkid) * enable ConfigDrive in freebsd config * hosts.freebsd.tmpl added
2014-09-17cc_grub_dpkg consider /dev/xvda as a candidate for grub installationScott Moser
HVM instances on EC2 have grub on /dev/xvda. The bug here resulted in a prompt on grub update. LP: #1336855
2014-09-15resizefs: fix backgrounded resizingScott Moser
add kwargs to fork_cb, and utilize that to call log_time and pass through the provided args to resize_cmd. LP: #1338614
2014-09-10ConfigDrive: support reading vendor_data similar to OpenStack MD readerScott Moser
This makes the DataSourceConfigDrive support vendor-data in the same way the metadata service reader does. There are still some things to fix here, but now we're similar between these two. Also drops the ability to specify a version (as in YYYY-MM-DD) that you want to look for. Nothing was using this, but it may be useful to add back in in the future and expose as a datasource config option.
2014-09-08resizefs: first check if device is writable before attemptingScott Moser
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
2014-09-03improved logging of errors around module loading/searchingScott Moser
2014-09-03Datasource: fix to provide local-hostname if not available in datasourceScott Moser
2014-09-02FreeBsd: fix initscripts and add working config fileScott Moser
This set of changes generally produces a functional cloud-init on FreeBsd.
2014-08-27Openstack: do not load urls twiceScott Moser
The metadata service openstack implementation would end up fetching urls more than once, as _path_exists would end up doing a GET. Now instead, get things you expect to be there.
2014-08-26Fix pep8 issues, drop pylint.Jay Faulkner
pep8: passes on pylint 1.5.7 (and 1.5.6 utopic). intent is that is to be the target for future changes. pylint: remove as more hassle than its worth. Intent is to move to pyflakes at some point.
2014-08-26ssh_authkey_fingerprints: fix bug that prevented disabling the moduleScott Moser
Module intended to allow disabling by configuration, but that was broken. Now this allows: no_ssh_fingerprints = True LP: #1340903
2014-08-22docs: fix disk-setup to reference 'table_type'Scott Moser
LP: #1313114
2014-08-21fix rendering resolv.conf if no 'options' are providedScott Moser
this makes some changes to the cc_resolv_conf to make its generate_resolv_conf method more easily callable (for future test). Also sets it up so that 'options' is always defined when the template is rendered. LP: #1328953
2014-08-21settings: fix typo resulting in OpenStack and GCE not running.Scott Moser
LP: #1329583
2014-08-21systemd: make cloud-init block ssh service startup to guarantee keys existScott Moser
LP: #1333920
2014-08-13remove un-used 'end' in result.json and status.jsonScott Moser
2014-07-31add ubuntu-init-switch module for testing systemd.Scott Moser
The module is useful primarily for testing in Ubuntu's transition to systemd. It should be very harmless elsewhere as it defaults to doing nothing, and will only run if configured as 'ubuntu' distro *and* 'dpkg' is available.
2014-07-29do not put comments in /etc/timezoneScott Moser
comments in /etc/timezone are not expected, and can cause problems if another tool tries to read it. LP: #1341710
2014-07-24SeLinuxGuard: remove invalid check for sanity around restorecon, fix testScott Moser
previous commit occurred because the selinux test was failing in a schroot where there was no /etc/hosts. Now, fix that test more correctly, and fix some bad assumptions in the SeLinuxGuard.
2014-07-24change trunk packaging to be more modern.Scott Moser
use pybuild and drop cdbs. This also now runs test during that build and does then require build dependencies.
2014-07-24change default path of systemd files to /lib/sysemd/system.Scott Moser
2014-07-21Allow the usage of jinja2 templatesScott Moser
This drops the hard requirement on Cheetah. Jinja is a python 2.4->3.x compatible templating engine, allow its optional usage (until we can depreciate cheetah) by allowing for specifying a template file header that can define which template engine to use. If the template file header does not specify a renderer, then assume that that is cheetah. If cheetah is not available, then use a limited builtin renderer on a best effort basis, and log the warning. LP: #1219223
2014-07-16fix 'make test' in python 2.6Scott Moser
2014-06-09doc: fix user-groups doc to reference plural ssh-authorized-keysScott Moser
LP: #1327065
2014-06-02SmartOS test: do not require existance of /dev/ttyS1.Scott Moser
LP: #1316597
2014-05-30CloudSigma: only poll on serial device after dmidecode check.Kiril Vladimiroff
On systems with a ttyS1 and nothing attached, the read attempts that the cloud sigma datasource would do would block. Also, Add timeouts for reading/writting from/to the serial console LP: #1316475
2014-05-30add vendordata support to cloudsigma datasourceScott Moser
LP: #1303986
2014-05-30open 0.7.6Scott Moser
2014-03-27OpenNebula: support base64 encoded user-dataScott Moser
This change adds the possibility to have base64 encoded userdata in OpenNebula source. OpenNebula uses a text file with shell variables for storing the configuration variables (including user provided data). Some user data may not be renderable into this format, so using base64 encoding alleviates the problem. The change here allows the user to provide a second variable USERDATA_ENCODING (or USER_DATA_ENCODING) and set that value to 'base64' to indicate that USERDATA is base64 encoded.
2014-03-19Azure: re-format ephemeral disk if necessaryScott Moser
On azure, the ephemeral disk may be destroyed and replaced with a fresh ephemeral disk on any reboot or stop and start cycle. This makes the datasource able to detect that by presence of an unformatted and specifically labeled NTFS filesystem with no files on it. LP: #1292648
2014-03-03write status to /run/cloud-init/ for external consumptionScott Moser
This populates and maintains status.json and result.json with json formated data about cloud-init's errors and datasource. It is intended to be consumed by other programs that want to wait until cloud-init is done, or know its success. LP: #1284439
2014-03-03seed_random: support a 'command' to seed /dev/randomDustin Kirkland
This extends 'random_seed' top level entry to include a 'command' entry, that has the opportunity to then seed the random number generator. Example config: #cloud-config random_seed: command: ['dd', 'if=/dev/zero', 'of=/dev/random', 'bs=1M', 'count=10'] LP: #1286316
2014-02-27AltCloud: to not run dmidecode on arm systems.Scott Moser
As with SmartOS change earlier, running dmidecode on arm will crash kvm. So instead of doing that, just return UNKNOWN which will cause this data source to not activate. LP: #1285686
2014-02-26SmartOS: do not run on arm as dmidecode causes problemsScott Moser
See LP: #1243287 for more information, but the easiest thing to do here is just not run smartos on arm. LP: #1243287
2014-02-13Add a openstack specific datasourceJoshua Harlow
Openstack has a unique derivative datasource that is gaining usage. Previously the config drive datasource provided part of this functionality as well as the ec2 datasource, but since new functionality is being added to openstack's special datasource it seems beneficial to combine the used parts into a new datasource just made for handling openstack deployments that use the openstack metadata service (possibly in combination with the ec2 metadata service). This patch factors out the common logic shared between the config drive and the openstack metadata datasource and places that in a shared helper file and then creates a new openstack datasource that readers from the openstack metadata service and refactors the config drive datasource to use this common logic.
2014-02-13Add initial GCE datasourceScott Moser
There are some rough edges here and its missing some test, but I want to get this pulled in.
2014-02-12initial Gentoo and Arch linux supportNate House
2014-02-12Add support for the CloudSigma server context.Kiril Vladimiroff
2014-02-12Add 'unverified_modules' config option and skip unverified modulesScott Moser
Config modules are able to declare distros that they were verified to run on by setting 'distros' as a list in the config module. Previously, if a module was configured to run and the running distro was not listed as supported, it would run anyway, and a warning would be written. Now, we change the behavior to skip those modules. The distro (or user) can specify that a given list of modules should run anyway by declaring the 'unverified_modules' config variable. run_once modules will be run without this filter (ie, expecting that the user explicitly wanted to run it).
2014-02-10Azure: fix issue with stale data in /var/lib/waagentScott Moser
If a datasource was found other than in /var/lib/waagent, and /var/lib/waagent contained all the files necessary for 'wait_for_files' (most likely 'SharedConfig.xml'), then cloud-init would continue on before looking properly. To address this, if the ovf-env.xml came from somewhere other than /var/lib/waagent, and it differs from the file in /var/lib/waagent, then we clean up some files that we expect to be provided by 'wait_for_files'. Also some minor changes to the tests here. LP: #1269626