summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-01-17[PATCH 2/4] Fix pylint conventions C0322 (operator not preceded by a space)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-17[PATCH 1/4] Fix pylint conventions C0321 (more than one statement on a ↵Scott Moser
single line) From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12fix pylint warnings (LP: #914739) [Juerg Haefliger]Scott Moser
LP: #914739
2012-01-12[PATCH 13/13] Disable bogus pylint warningsScott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 12/13] Fix pylint warnings W0201 (attribute xyz definedScott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com> outside __init__)
2012-01-12[PATCH 11/13] Fix pylint warnings W0141 (used builtin function xyz)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com> Replace superseded builtin functions 'filter' and 'map' using list comprehension.
2012-01-12[PATCH 10/13] Fix pylint warnings W0102 (dangerous default value asScott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com> argument)
2012-01-12[PATCH 09/13] Fix pylint warnings W0107 (unnecessary pass statement)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 08/13] Fix pylint warnings W0104 (statement seems to have noScott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com> effect)
2012-01-12[PATCH 07/13] Fix pylint warnings W0622 (redefining built-in 'xyz')Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 06/13] Fix pylint warnings W0612 (unused variable)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 05/13] Fix pylint warnings W0613 (unused argument)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 04/13] Fix pylint warnings W0611 (unused import)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 03/13] Fix pylint warnings W0301 (unnecessary semicolon)Scott Moser
Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 02/13] Fix pylint warnings W0312 (found indentation with tabsScott Moser
instead of spaces) From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12[PATCH 01/13] Fix pylint warnings W0311 (bad indentation)Scott Moser
From: Juerg Haefliger <juerg.haefliger@hp.com>
2012-01-12add unit test framework (LP: #890851)Scott Moser
2012-01-12Tweak Makefile to just run unittests for the "all" target.Mike Milner
2012-01-12Add test dependencies to Build-Depends.Mike Milner
2012-01-12Add initial unit test framework.Mike Milner
Add initial tests for mergedict.
2012-01-12fix selection of ec2 mirrors when inside ec2.Scott Moser
LP: #915282
2012-01-10fix invalid variable name in cloudinit/CloudConfig/cc_resizefs.pyScott Moser
2012-01-09run resizefs module on every bootScott Moser
on EC2, you can: stop instance resize root volume start instance Currently, the partition would get grown correctly in the initramfs, but the root filesystem will not get automatically resized in that case as it only runs per_instance. This should not be harmfull in any case, as resizefs will just report nothing to do: $ sudo resize2fs /dev/sda5 resize2fs 1.42-WIP (16-Oct-2011) The filesystem is already 25600278 blocks long. Nothing to do!
2011-12-22fix issue with part-handlers and base64 encoding (LP: #874342)Scott Moser
Previously, * if content came into cloud-init for processing came in via a multipart mime file, and was already base64 encoded, it would get base64 encoded again before being handed to a part-handler. * if it came in via a '#include'd file then it would not be encoded at all. This drops the internal 'parts' array, that was just converted to and then from. Instead, we keep MIME format throughout and keep headers along the way. That means that a message that comes in with 'Content-Transfer-Encoding' set to 'base64' will be decoded before being handed to a part-handler. It also reduces the chance of failure due to content appearing to be an actual email. Previously if content contained colon separated fields, it might be read as headers (email.message_from_string(open("/etc/passwd","r")) would come back as all headers, no payload) The weak point right now is that '#include'd data cannot have mime types associated with it (unless it is a mime formatted content). I had hoped to read user headers and possibly set 'Content-Type' from that. LP: #874342
2011-12-22fix issue with multiple content-typesScott Moser
2011-12-22fix issue with part-handlers and base64 encoding (LP: #874342)Scott Moser
Previously, * if content came into cloud-init for processing came in via a multipart mime file, and was already base64 encoded, it would get base64 encoded again before being handed to a part-handler. * if it came in via a '#include'd file then it would not be encoded at all. This drops the internal 'parts' array, that was just converted to and then from. Instead, we keep MIME format throughout and keep headers along the way. That means that a message that comes in with 'Content-Transfer-Encoding' set to 'base64' will be decoded before being handed to a part-handler. It also reduces the chance of failure due to content appearing to be an actual email. Previously if content contained colon separated fields, it might be read as headers (email.message_from_string(open("/etc/passwd","r")) would come back as all headers, no payload) The weak point right now is that '#include'd data cannot have mime types associated with it (unless it is a mime formatted content). I had hoped to read user headers and possibly set 'Content-Type' from that.
2011-12-21support configuration of landscape-client via cloud-config (LP: #857366)Scott Moser
This adds the ability to configure landscape client code from cloud-config. The fields available are those that were populated to /etc/landscape/client.conf when I ran landscape-config on precise ('11.07.1.1-0ubuntu2') LP: #857366
2011-12-21fix bug where first entry in the list presented to mergeTogether was ignoredScott Moser
2011-12-20merge from trunkScott Moser
2011-12-20support configuration of landscape-client via cloud-config (LP: #857366)Scott Moser
This adds the ability to configure landscape client code from cloud-config. The fields available are those that were populated to /etc/landscape/client.conf when I ran landscape-config on precise ('11.07.1.1-0ubuntu2')
2011-12-20debian.trunk/ transition to dh_python2 from pycentralScott Moser
This is the same 2 changes that were made to cloud-init under LP: #904248
2011-12-20add INSTANCE_ID to env of bootcmd, add cloud-init-perScott Moser
the environment varible INSTANCE_ID is set when invoking boothooks from multi-part input. However, previously that was not the case for things run via bootcmd. This adds cloud-init-per, which makes it easy for user in bootcmd or boothook to do something per 'instance', 'always', or 'once'. The functionality in cloud-init-per mostly duplicated what was in cloud-init-run-module. That supported "modules", but it is unlikely that it was used for anything other than "execute". So, cloud-init-per now replaces cloud-init-run-module and provides legacy support for the 'execute' path.
2011-12-20put sem/marker files in 'sem' dirsScott Moser
2011-12-20remove unused cloudinit/execute.pyScott Moser
2011-12-20update documentation for bootcmdScott Moser
- reference cloud-init-per - mention that INSTANCE_ID is in environment of bootcmd scripts
2011-12-20replace cloud-init-run-module with cloud-init-perScott Moser
This replaces cloud-init-run-module (which was probably rarely or never used) with 'cloud-init-per' which does basically the same thing, but doesn't support "modules".
2011-12-20add INSTANCE_ID to environment of bootcmd scriptsScott Moser
2011-12-20output public ssh host keys to console on boot (LP: #893400)Scott Moser
Currently cloud-init writes something like this to console output: ec2: ############################################################# ec2: -----BEGIN SSH HOST KEY FINGERPRINTS----- ec2: 2048 78:ae:f3:91:04:6f:8d:ee:ef:e1:2d:72:83:6a:d0:82 root@h (RSA) ec2: 1024 d3:b6:32:64:22:d4:43:05:f9:25:b4:f3:65:4e:e2:51 root@h (DSA) ec2: -----END SSH HOST KEY FINGERPRINTS----- ec2: ############################################################# the key fingerprints are useful for humans to read, but not so useful for machines, as you cannot populate a KnownHostsFile (~/.ssh/known_hosts) from the data there. This change adds output like: -----BEGIN SSH HOST KEY KEYS----- ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdH......STI= root@h ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYRIQe6m......tWF3 root@h -----END SSH HOST KEY KEYS----- Those lines can easily be grabbed and appended to a known_hosts file. LP: #893400
2011-12-20output public ssh host keys to console on boot (LP: #893400)Scott Moser
Currently cloud-init writes something like this to console output: ec2: ############################################################# ec2: -----BEGIN SSH HOST KEY FINGERPRINTS----- ec2: 2048 78:ae:f3:91:04:6f:8d:ee:ef:e1:2d:72:83:6a:d0:82 root@h (RSA) ec2: 1024 d3:b6:32:64:22:d4:43:05:f9:25:b4:f3:65:4e:e2:51 root@h (DSA) ec2: -----END SSH HOST KEY FINGERPRINTS----- ec2: ############################################################# the key fingerprints are useful for humans to read, but not so useful for machines, as you cannot populate a KnownHostsFile (~/.ssh/known_hosts) from the data there. This change adds output like: -----BEGIN SSH HOST KEY KEYS----- ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdH......STI= root@h ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDYRIQe6m......tWF3 root@h -----END SSH HOST KEY KEYS----- Those lines can easily be grabbed and appended to a known_hosts file.
2011-12-19fix missing import for use of close_stdinScott Moser
revision 490 missed some required imports.
2011-12-19revert default handling of /etc/hosts to 0.6.1 style (Ubuntu 11.04)Scott Moser
The default management of /etc/hosts in 0.6.2 (Ubuntu 11.10) was problematic for a couple different uses, and represented a change in what was present in previous releases. This changes the default behavior back to the way it was in 11.04/0.6.1. It makes 'manage_etc_hosts' in cloud-config more than just a boolean. It can now have 3 values: * False (default): do not update /etc/hosts ever * "localhost": manage /etc/hosts' 127.0.1.1 entry (the way it was done in 11.10/0.6.2) * True (or "template"): manage /etc/hosts via template file This addresses bugs * LP: #890501 * LP: #871966 LP: #890501, #871966
2011-12-19revert default handling of /etc/hosts to 0.6.1 style (Ubuntu 11.04)Scott Moser
The default management of /etc/hosts in 0.6.2 (Ubuntu 11.10) was problematic for a couple different uses, and represented a change in what was present in previous releases. This changes the default behavior back to the way it was in 11.04/0.6.1. It makes 'manage_etc_hosts' in cloud-config more than just a boolean. It can now have 3 values: * False (default): do not update /etc/hosts ever * "localhost": manage /etc/hosts' 127.0.1.1 entry (the way it was done in 11.10/0.6.2) * True (or "template"): manage /etc/hosts via template file This addresses bugs * LP: #890501 * LP: #871966
2011-12-19make stdin read from /dev/null for all cloud-init programs (LP: #903993)Scott Moser
the cloud-init programs are never intended to run interactively. Some programs were being run via subprocess, and would notice that their input was attached to a terminal (/dev/console). As a result, they they would try to prompt the user for input (apt-add-repository) This change simply re-opens standard input as /dev/null so any subprocesses will not end up blocking on input. LP: #903993
2011-12-19make stdin read from /dev/null for all cloud-init programs (LP: #903993)Scott Moser
the cloud-init programs are never intended to run interactively. Some programs were being run via subprocess, and would notice that their input was attached to a terminal (/dev/console). As a result, they they would try to prompt the user for input (apt-add-repository) This change simply re-opens standard input as /dev/null so any subprocesses will not end up blocking on input.
2011-12-19update changelog for DataSourceEc2 changesScott Moser
2011-12-19make DataSourceEc2 more resilliant to slow metadata service (LP: #894279)Scott Moser
This increases the timeout for a metadata request to something that should be easily satisfiable (50 seconds). But hopefully does so while still keeping the case of no-metadata service in mind. Previously, there was a small timeout and many retries (30) would be done. Now, - larger timeout (50 seconds) by default - retry until a given "max_wait" is reached (120 seconds default) The end result is that if we're hitting the timeout, there will only end up being a couple attempts made. But if the requests are coming back quickly then we'll still make several attempts. There is one EC2DataSource config change, now 'retries' is not used, but rather 'max_wait' to indicate generally how long it should try to find a metadata service. LP: #894279
2011-12-19make DataSourceEc2 more resilliant to slow metadata service (LP: #894279)Scott Moser
This increases the timeout for a metadata request to something that should be easily satisfiable (50 seconds). But hopefully does so while still keeping the case of no-metadata service in mind. Previously, there was a small timeout and many retries (30) would be done. Now, - larger timeout (50 seconds) by default - retry until a given "max_wait" is reached (120 seconds default) The end result is that if we're hitting the timeout, there will only end up being a couple attempts made. But if the requests are coming back quickly then we'll still make several attempts. There is one EC2DataSource config change, now 'retries' is not used, but rather 'max_wait' to indicate generally how long it should try to find a metadata service.
2011-12-18cloudinit/DataSourceEc2: use util.is_resolvable_urlScott Moser
2011-12-16add support for reading configuration of mirror and proxyScott Moser
This adds support for configuration of a mirror by looking for dns names like 'ubuntu-mirror', and setting a 'apt_mirror_search' configuration variable to find the first mirror in the list. Also, allows configuration of an apt proxy via 'apt_proxy' in cloud-config. LP: #897688
2011-12-16add apt_proxy doc to cloud-config.txtScott Moser