Age | Commit message (Collapse) | Author |
|
|
|
|
|
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.
|
|
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
|
|
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.
|
|
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.
|
|
|
|
|
|
|
|
instead of only searching ubuntu.localdomain, search
<distro>-mirror.localdomain
|
|
if apt_mirror was set to "" or False in the config,
we would have used that.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
input like:
mounts:
- [ ephemeral0, /opt , auto, "defaults,noexec" ]
- [ swap, null ]
would get interpreted as string "None" rather than "None" and
an entry for swap would be written to fstab.
LP: #898365
|
|
Thanks: Garrett Holmstrom
LP: #883367
|
|
LP: #883367
|
|
Fedora's ssh service name is named 'sshd', Ubuntu's
is 'ssh'. This makes that configurable.
TODO: document ssh_svcname.
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch11: cloud-init-0.6.2-sshsvc.patch
|
|
Garret's patch cloud-init-0.6.2-sshsvc.patch did 2 separate
things. This hunk makes deletion of keys configurable, and
then makes generation of the keys only done if the key
does not exist.
TODO: document ssh_genkeytypes.
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch11: cloud-init-0.6.2-sshsvc.patch
|
|
Notes:
* This also makes cc_ssh.py *not* write ssh keys to the console.
That means that if keys-to-console is configured off, nothing will
write the keys to the console.
* I removed Garret's use of xargs, replacing with a shell for loop
in write-ssh-key-fingerprints.
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch8: cloud-init-0.6.2-sshkeytypes.patch
|
|
|
|
configure puppet service to start on fedora based on one of:
* presence of /etc/default/puppet (Ubuntu)
* /bin/systemctl
* /sbin/chkconfig
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch7: cloud-init-0.6.2-puppetenable.patch
|
|
If the file /etc/sysconfig/clock exists, assume fedora style
timezone config and write 'ZONE="%s' to that file.
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch5: cloud-init-0.6.2-tzsysconfig.patch
|
|
fedora's analog to /etc/default/locale is /etc/sysconfig/i18n .
This makes locale_configfile configurable and chooses between
/usr/sbin/locale-gen (ubuntu/debian) and
/usr/sbin/update-localeo (fedora)
based on availability to generate locales.
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch4: cloud-init-0.6.2-localefile.patch
|
|
This adds a restorecon_if_possible method which uses selinux
python module, and uses that for files modified in /etc.
taken from
git://pkgs.fedoraproject.org/cloud-init.git
commit 87f33190f43d2b26cced4597e7298835024466c2
Author: Garrett Holmstrom <gholms@fedoraproject.org>
Patch3: cloud-init-0.6.2-filecontext.patch
|
|
Previously, there was a 'ruby_packages' dictionary that mapped the
ruby version (1.8, 1.9, 1.9.1) to a list of packages that would need
to be installed to get a functional gems.
This replaces that with a method that is more likely to support future
versions without requiring updates to cloud-init.
It is not identical output as before. The changes are:
* do not include 'ruby' in the case of 1.8, but rather 'ruby1.8'
This is because the default could change, and 'ruby' would depend
on a different default version.
* do not explicitly list 'libruby-<version>' as that is a dependenency
of 'ruby<version>'
* End result is for any 'version' != 1.8, you'll get the following installed
ruby<version>
ruby<version>-dev
LP: #848932
|
|
Per bug 857926, on some systems, run-parts will exit failure
if the directory is empty. On debian/ubuntu, at least of recent vintage,
it exits success. Its reasonable to just not run it.
LP: #857926
|
|
In addition to catching a url timeout, we also need to catch and
retry on a socket timeout. Apparently urllib2 doesn't catch this and
brand it as a urlerror.
LP: #869492
|
|
If the user told us to read from a seed, we should not timeout quickly
|
|
LP: #855965
|
|
|
|
read_seeded also takes a 'file_retry' which defaults to zero.
This is so that if the seed path is a file, retries are not done.
read_optional_seed is not passing 'retries=0' here, but
all the users of read_optional_seed are using it from file.
|
|
|
|
This fixes (LP: #850206). See bug for more info.
LP: #850206
|
|
lp:~avishai-ish-shalom/cloud-init/chef
Bringing in 'initial_properties' support from lp:~avishai-ish-shalom/cloud-init/chef
|
|
Support both 'validation_cert' and 'validation_key' for backwards compatibility
Cleaned up line length
|
|
Added support for 'node_name' and 'environment' properties.
Renamed 'validation_cert' to 'validation_key' to match Chef's nomenclature.
|
|
|
|
LP: #845155
|
|
|
|
|
|
LP: #845161
|
|
validation cert name
|
|
|
|
This is the same change made in DataSourceNoCloud, but to the
OVF DataSource.
|
|
LP: #832175
|
|
This allows for the chance that platform.node returned
a fully qualified domainname. Per its doc:
Returns the computer's network name (which may not be fully
qualified)
|