Age | Commit message (Collapse) | Author |
|
sources can use $MIRROR and $RELEASE and they will be replaced
with the local mirror for this cloud, and the running release
this:
- source: deb $MIRROR $RELEASE multiverse
would possibly be turned into:
- source: deb http://us-east-1.ec2.archive.ubuntu.com/ubuntu natty multiverse
LP: #693292
|
|
Previously, if you ran an instance with either runcmd data or user-data
scripts, it would run again after rebundle or create-image.
This puts the files created by runcmd or user-data scripts into instance-id
specific paths, and then runs them by that instance-id specific path.
LP: #675711
|
|
When the user attempts login as root, they see a message suggesting
a different user. This changes that message from:
Please login as the ubuntu user rather than root user.
to
Please login as the user "ubuntu" rather than the user "root".
LP: #672417
|
|
This will allow this code to be called more easily elsewhere.
I'm considering having the "all the way up" message contain fingerprints
so that they're more or less guaranteed to get to the console where
the user could see them.
|
|
This adds the following cloud-config keys:
- 'rsyslog_dir' default: /etc/rsyslog.d
- 'rsyslog_filename' default: 20-cloud-config.conf
- 'rsyslog' (list) default: empty
|
|
Now, instead of setting a default value in cloud-init based only on the
DataSource, this supports using 'locale' in the cloud-config.
|
|
Instead of:
root=LABEL=uec-rootfs ro console=hvc0 ssh_import_id=smoser
We now have more generic:
root=LABEL=uec-rootfs ro console=hvc0 cc:ssh_import_id: smoser
|
|
|
|
|
|
|
|
LP: #623609
|
|
for 'mounts' entries that yaml interprets as integers, we need
to be strings. This is because of he 'join' that is used on the array.
For example:
mounts:
- [ ebs1, none, swap, sw, 0, 0 ]
was throwing error when the array was joined.
|
|
|
|
This means that if you booted an ebs instance with a ephemeral0 device
and then stopped it and modified its type to be one that did *not* have
an ephemeral0 device, you'd still have the entry, but it wouldn't block
boot.
LP: #634102
|
|
|
|
Previously,
apt_sources:
- source: source1
- source: source2
resulted in source1 being written to
/etc/apt/sources.list.d/cloud_config_sources.list , and then
that being overwritten by source2.
This definitely is not expected.
Instead, in all cases now, (including 'filename:' cases), just append.
LP: #627597
|
|
|
|
|
|
Previously, all you would get was a warning to the console on config
module failure. This changes to get a stack trace of the failure to the
console, which is much easier for debugging.
|
|
|
|
|
|
ec2-run-instances
--block-device-mapping /dev/sdd=:1
--block-device-mapping /dev/sde=snap-4cda7b24
--block-device-mapping sdf=snap-d4d90bbc
resulted in:
'block-device-mapping': {'ami': '/dev/sda1',
'ebs1': '/dev/sdd',
'ebs2': '/dev/sde',
'ebs3': 'sdf',
'ephemeral0': '/dev/sda2',
'root': '/dev/sda1',
'swap': 'sda3'}
|
|
|
|
It just seems like for cloud instances, getting /etc/fstab written
incorrectly with the result of non-booting system is worth avoiding.
|
|
What caused this was having an open ended list on what "names" might be
found in the metadata service. That list is now trimmed down to the
the following values:
ephemeral*
root
ami
swap
The above list was found from crawled medata data services in the latest
maverick tests I did. The following is the complete list of entries that
were there:
'ami': '/dev/sda1',
'ami': 'sda1',
'ephemeral0': '/dev/sda2'
'ephemeral0': '/dev/sdb'
'ephemeral0': 'sda2'
'ephemeral0': 'sdb'
'ephemeral1': 'sdc'
'ephemeral2': 'sdd'
'ephemeral3': 'sde'
'root': '/dev/sda1'
'root': '/dev/sda1'
'swap': 'sda3'
Also, this limits which devices will have "/dev/" prepended to them to
sda, sda1, xvda, xvda1, hda1, hda, vda.
LP: #603329
|
|
|
|
If user gives bad cloud-config syntax, its not very useful to die, as
that is most likely to leave the system unreachable. This instead
logs the error and continues as if it no cloud-config was given.
|
|
|
|
|
|
|
|
|
|
LP: #582667
|
|
|
|
to be debug (with traceback). The exception is still raised, but
no reason for the whole traceback to be on error
|
|
|
|
Previously, most of the config semaphores were prefixed with 'config-'.
Ie, a sem/ list would look like:
apt-update-upgrade.i-7c908817
config-misc.i-7c908817
config-mounts.i-7c908817
config-puppet.i-7c908817
config-ssh.i-7c908817
consume_userdata.i-7c908817
disable-ec2-metadata.always
set_defaults.i-7c908817
set_hostname.i-7c908817
With the last release (0.5.11), those config- would have been removed.
I'll handle this correctly yuckyness in the ubuntu package upgrade
(avoiding re-running scripts that were already ran)
|
|
The list of cloud-config modules is now kept in cloud config itself.
There is a builtin list in cloudinit, which is overrideable by
/etc/cloud/cloud.cfg or user data cloud-config.
This should make the modules more easily added or removed (as no code
needs to be edited now)
Basic summary of changes:
- move CloudConfig.py -> cloudinit/CloudConfig/__init__.py
- split cloud-config modules into their own files named
cloudinit/CloudConfig/cc_<name>.py
- remove all the upstart/cloud-config-* scripts, replacing them with
upstart/cloud-config.conf
|