Age | Commit message (Collapse) | Author |
|
LP: #1198297
|
|
A new field in the metadata has emerged, one
that provides a way to seed the linux random
generator. Add support for writing the seed
and rewrite parts of the on_boot code to use
a little helper class.
LP: #1198297
|
|
The big benefit of this is that now the user can put in arbitrary
data into the user-data or user-script keys and there is no concern
about the data being incorrectly read.
Previously, if data contained '\n.\n', there was no way to differenciate
that from a end of message in the serial communication format.
It would be recommended that anyone using user-data on smartos base64 encode
that data and specify a key of 'b64-user-data' with value 'true'.
|
|
The most likely end user operation (or at least a valid one) for base64
encoding would be to encode the user-data, but leave all other values
as plaintext.
In order to facilitate that, the user can simply add:
b64-user-data=true
to indicate that user-data is base64 encoded.
Other changes here are to change the cloud-config and metadata keynames
that are used.
base64_all = boolean(True)
base64_keys = [list, of, keys]
Fixed up tests to accomodate.
|
|
|
|
This simply correctly invokes subp through util.log_time.
The arguments to subp is named 'args' not 'command'.
LP: #1214541
|
|
|
|
|
|
'password' was the wrong key. It should have been setting the default
user's "plain_text_password".
Instead of doing that, though, we're encrypting the value and putting it in
'passwd', which will then be passed on to useradd. The key value in doing
this is that the plain text password will not be stored in obj.pkl.
(admittedly it is still in plain text in the ovf-env.xml file).
|
|
Added documentation on SmartOS datasource.
|
|
reading /proc/uptime is going to be slower, and no reason to do it on most
things. Better to only do it when you suspect maybe a need for it.
|
|
The reason for this is that more and more things I was wanting to be able to
see how long they took. This puts that time logic into a single place. It
also supports (by default) reading from /proc/uptime as the timing mechanism.
While that is almost certainly slower than time.time(), it does give
millisecond granularity and is not affected by 'ntpdate' having
run in between the two events.
|
|
As shown in comments of bug 1202758 and filing of ntp bug 1206164, waiting
for the output of this command causes us to wait for ntpdate to fully
finish.
Ideally I think we'd disable ntpdate running on this run, but
that is not trivially possible.
|
|
the environment that was set up to include 'interface' was not actually
being passed on to 'subp', so when the command ran it wasn't available.
|
|
|
|
See the added doc/sources/azure/README.rst for why this is necessary.
Essentially, we now are doing the following in the get_data() method
of azure datasource to publish this NewHostname:
hostname NewHostName
ifdown eth0;
ifup eth0
LP: #1202758
|
|
|
|
This adds a datasource designed to work on Joyent cloud (SmartOS).
|
|
initialized.
Added a mapping of attributes between cloud-init and smartos.
|
|
LP: #1204190
|
|
|
|
The place this was noticed was in trying to use the
'nova.clouds.archive.ubuntu.com' mirror selection.
Because the config-drive-v2 has a metadata entry of 'availability_zone', it
didn't get found by the availabilty_zone property in
cloudinit/sources/__init__.py
LP: #1190431
|
|
|
|
The walinux agent expects that the files it writes with 0644 (default umask)
permissions are not globally readable. Since we were creating the directory
for it, and using default umaks (0755), the files inside were readable to
non-priviledged users.
|
|
DisablesshPasswordAuthentication == True
means that ssh_pwauth should be disabled rather than enabled.
LP: #1201969
|
|
(LP: 1201969)
|
|
Also, fix a comment and write a log message on how long we waited
for the files to appear.
|
|
|
|
|
|
now if there are pubkeys, the cfg['_pubkeys'] entry
will have a list of dicts where each dict has 'fingerprint' and 'path'
entries.
The next thing to do is to block waiting for the <fingerprint>.crt
files to appear in /var/lib/waagent.
|
|
|
|
since azure ejects the disk on reboot, we need to look there to
find this datasource.
|
|
this will copy the ovf-env.xml file that was found to
the configured directory (default /var/lib/waagent)
|
|
|
|
The idea is that in the future, the DataSources get_data could
check to see if there were ssh keys provided. if there were, it could
poll and wait (or inotify) until the <fp>.crt files appeared in the
/var/lib/walinux directory. Once they did, it'd populate the metadata's
public keys.
|
|
|
|
|
|
|
|
Optical drives may show up in RHEL systems as /dev/sr1;
this extends a prior fix to handle that use case. It's applicable to systems
with 2.6 kernels where blkid needs a little prodding.
If we have to go back here with '/dev/sr2', then we should probably come
up with a fix that doesn't doesn't make us come back again.
|
|
This is not really a problem, because nothing would call transport_iso9660
with 'require_iso' as False, but if it did, then we would have still
required iso9660 filesystem on the mount.
|
|
Extend a prior fix which helped discovery of media on systems using 2.6
kernels. /dev/sr0 covers only some of the use cases, /dev/sr1 is also
common.
|
|
Couple of things here:
* do not re-try on user-data (404 means 'not here')
* re-generate headers on retry requests
LP: #1172742
|
|
This patch fixes issues in Fedora 18 (and upcoming RHEL 7) which are
present due to their use of systemd:
- store locale configuration in /etc/locale.conf
- store hostname in /etc/hostname
- use a symlink for /etc/localtime (prior code would set the timezone
but corrupt data in /usr/share/zoneinfo due to presence of symlink)
It also contains fixes for issues unrelated to systemd adoption:
- explicitly scan /dev/sr0 with blkid in order to get the optical drive
in the blkid cache. This prevents an issue on systems running 2.6
kernels (such as RHEL 6) in which config disks on some devices won't
be detected unless the device has previously been queried.
(For reference, see https://patchwork.kernel.org/patch/1770241/)
- append a newline when rewriting sysconfig files, as this is customary
text configuration file formatting and is expected by some parsers
(such as the ifcfg-rh plugin for NetworkManager)
|
|
cloudinit/sources/DataSourceCloudStack.py and
cloudinit/sources/DataSourceEc2.py are reverted entirely back to trunk versions
now, rather than the non-behavior change that was left in place.
Also, remove inadvertantly added trailing newline from cloudinit/ec2_utils.py
Overall, this just makes the diff when merged to trunk carry more focused
changes.
|
|
|
|
|
|
|
|
|
|
|
|
|