summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2016-03-21quickly check to see if the previous instance id is still validScott Moser
This adds a check in cloud-init to see if the existing (cached) datasource is still valid. It relies on support from the Datasource to implement 'check_instance_id'. That method should quickly determine (if possible) if the instance id found in the datasource is still valid. This means that we can still notice new instance ids without depending on a network datasource on every boot. I've also implemented check_instance_id for the superclass and for 3 classes: DataSourceAzure (check dmi data) DataSourceOpenstack (check dmi data) DataSourceNocloud (check the seeded data or kernel command line) LP: #1553815
2016-03-14fix ssh_pwauth behavior to function as documented.Scott Moser
Add option checking for ssh_pwauth to bring behavior inline with the description cloud-config.txt example. Previously, setting 'ssh_pwauth' to 'unchanged' or '' would result in an empty value for PasswordAuthentication when it should have simply not been modified.
2016-03-14doc: document that volume label must be 'cidata' NocCloud datasource.Scott Moser
2016-03-10dmi data: fix failure of reading dmi data for unset dmi valuesScott Moser
it is not uncommon to find dmi data in /sys full of 'ff'. utf-8 decoding of those would fail, causing warning and stacktrace. Return '.' instead of \xff. This maps to what dmidecode would return $ dmidecode --string system-product-name .................................
2016-03-09add default user to 'lxd' group and create groups when necessary.Scott Moser
This add 'lxd' to the list of groups that the default user is added to. It also changes behavior to create any necessary groups that are listed for the user rather than failing to add the user. Theres also a fix for usage of logexc that I found along the way. LP: #1539317
2016-03-07No longer run pollinate by default in seed_randomScott Moser
The user can still choose to run pollinate here to seed their random data. And in an environment with network datasource, that would be expected to work. However, we do not want to run it any more from cloud-init because a.) pollinate's own init system jobs should get it ran before ssh, which is the primary purpose of wanting cloud-init to run it. b.) with a local datasource, there is no network guarantee when init_modules run, so pollinate -q would often cause issues then. c.) cloud-init would run pollinate and log the failure causing many cloud-init specific failures that it could do nothing about. LP: #1554152
2016-03-04Added Bigstep datasourceDaniel Watkins
2016-03-04Enable password changing via a hashed stringDaniel Watkins
2016-03-01timezone: use a symlink when updating /etc/localtimeScott Moser
Unless /etc/localtime is an existing file and not a symlink, then we will symlink instead of copying the tz_file to /etc/localtime. The copy was due to an old bug in Ubuntu, symlink should be preferred. LP: #1543025
2016-03-01Add Image Customization Parser for VMware vSphere Hypervisor Support.Scott Moser
This is the first changeset submitted as a part of project to add cloud-init support for VMware vSphere Hypervisor. This changeset contains _only_ the changes for a simple python parser for a Image Customization Specification file pushed by VMware vSphere hypervisor into the guest VMs. In a later changeset, will be submitting another patch to actually detect the underlying VMware vSphere hypervisor and do the necessary customization.
2016-02-25merge with trunkScott Moser
2016-02-16Handle escaped quotes in WALinuxAgentShim.find_endpointScott Moser
LP: #1488891
2016-02-15Correct lock_passwd in docsDaniel Watkins
2016-02-04Merge from trunk and resolve text conflict in ChangeLogWesley Wiedenmeier
2016-02-04systemd: support using systemd-detect-virt to detect containerScott Moser
running-in-container is a wrapper around systemd-detect-virt -c, and was removed from ubuntu. This adjusts to run if only running-in-container is available. LP: #1539016
2016-02-04SmartOS: Add support for Joyent LX-Brand Zones Scott Moser
LX-brand zones on Joyent's SmartOS use a different metadata source (socket file) than the KVM-based SmartOS virtualization (serial port). This patch adds support for recognizing the different flavors of virtualization on SmartOS and setting up a metadata source file object. After the file object is created, the rest of the code for the datasource LP: #1540965
2016-02-03lxd: add support for setting up lxd using 'lxd init'Wesley Wiedenmeier
If lxd key is present in cfg, then run 'lxd init' with values from the 'init' entry in lxd configuration as flags.
2015-11-30systemd/power_state: fix power_state when cloud-final exited failureScott Moser
if a runcmd exited failure, then power_state would not work. This was because systemd was killing off subprocesses, and cloud-init implemented power off with a subprocess that waited for the parent to exit. LP: #1449318
2015-11-18Azure: get instance id from dmi instead of SharedConfigScott Moser
Replace the use of SharedConfig.xml in both the walinuxagent case, and the case where we communicate with the Azure fabric ourselves. The instance id present in the dmi data is unfortunately different that that in the SharedConfig. This means that something needs to handle migration so that a reboot after newer version is installed will not re-run first instance things. In Ubuntu this is being handled in packaging. LP: #1506187
2015-11-09cc_mounts: use 'nofail' if system uses systemd. (LP: #1514485)Scott Moser
'nofail' is the systemd equivalent of the mountall/upstart 'nobootwait'. So, if a system uses systemd, then use 'nofail' in /etc/fstab for ephemeral mounts.
2015-11-03Ubuntu templates: make sources.list consistent with ISO installs.Scott Moser
This modifies a designed decision to have trimmer sources.list than one would find on a server iso install. Specifically, here we now enable: restricted and multiverse and backports. LP: #1177432
2015-10-20AltCloud: Remove --quiet option from udevadm callDaniel Watkins
2015-10-14azure: support extracting SSH key values from ovf-env.xmlScott Moser
Azure has or will be offering shortly the ability to directly define the SSH key value instead of a fingerprint in the ovf-env.xml file. This patch favors defined SSH keys over the fingerprint method (LP: #1506244).
2015-10-09support configuring and installing the Ubuntu fan driverScott Moser
#cloud-config fan: config: | # fan 240 10.0.0.0/8 eth0/16 dhcp 10.0.0.0/8 eth1/16 dhcp off # fan 241 241.0.0.0/8 eth0/16 dhcp config_path: /etc/network/fan LP: #1504604
2015-09-08 power_state: support 'condition' argumentScott Moser
if 'condition' is provided to config in power_state, then consult it before powering off. This allows the user to shut down only if a condition is met, and leave the system in a debuggable state otherwise. An example is as simple as: power_state: mode: poweroff condition: ['sh', '-c', '[ -f /disable-poweroff ]']
2015-09-08NoCloud: fix consumption of vendor-dataScott Moser
the content of vendordata was was being assigned to vendordata, rather than vendordata_raw. The result was that it is not processed for includes or part handlers or other things as it is in other datasources. LP: #1493453
2015-08-07Add initial reporting module and eventsScott Moser
2015-07-30status_wrapper in main: fix use of print_exc when handling exceptionScott Moser
2015-07-28rsyslog: add new format of configScott Moser
new format of config is namespaced under top level 'rsyslog' rather than having 3 tokens in the top level namespace. Additionally added here are: * tests * support for legacy config * support for 'remotes' configuration allowing simple config like rsyslog: remotes: {'myremote': "192.168.1.1"}
2015-07-27_read_dmi_syspath: fix bad log message causing unintended exceptionScott Moser
2015-07-22mounts: support reliably detecting and using Azure ephemeral disksScott Moser
Azure's ephemeral disks are not guaranteed to be assigned the same name by the kernel every boot. This causes problems on ~2% of Azure instances, and can be fixed by using udev rules to give us a deterministic path to mount; this patch introduces those udev rules and modifies the Azure data source to use them. Changes to a couple of config modules were also required. In some places, they just needed to learn to dereference symlinks. In cc_mounts this wasn't sufficient because the dereferenced device would have been put in /etc/fstab (rather defeating the point of using the udev rules in the first place). A fairly hefty refactor was required to separate "is this a valid block device?" from "what shall I put in fstab?". LP: #1411582
2015-07-22provide data source to mirror selection code for region-specific mirrors.Scott Moser
This makes the full data source available to the mirror selection code, which means we can implement region logic on the data source for everything to use rather than it being mirror-selection-specific. It also implements that region logic for EC2 and GCE. LP: #1470890
2015-07-22fixes bug: https://launchpad.net/bugs/1461242Scott Moser
ssh: generate ed25519 host keys if supported now we attempt to generate ed25519 host keys. If ssh-keygen does not support it, a debug log message will be written. LP: #1461242
2015-07-20Return a sensible value for DataSourceGCE.availability_zone.Daniel Watkins
LP: #1470880
2015-06-16Use wget to fetch CloudStack passwords.Scott Moser
Different versions of the CloudStack password server respond differently; wget handles these nicely for us, so it's easier to just use wget. LP: #1464253, #1440263
2015-06-16growpart: fix specification of 'devices' list.Scott Moser
given config: {'growpart': {'devices': ["/"]}} the 'devices' was ignored, it was incorrectly read from the top level non-namespaced location. LP: #1465436
2015-06-15apt_configure: fix importing of apt gpg keys under in python3Scott Moser
LP: #1463373
2015-06-10Add ChangeLog entry for last merge.Daniel Watkins
2015-06-10check for systemd using sd_booted() semanticsScott Moser
The existing code determines if systemd is in use by looking at the distribution name and version. This is prone to error because: - RHEL derivatives other than CentOS (e.g., Scientific Linux) will fail this test - Distributions that are not derived from RHEL also use systemd This patch makes cloud-init use the same logic that is used in systemd's sd_booted() method http://www.freedesktop.org/software/systemd/man/sd_booted.html LP: #1461201
2015-06-01Doc: include information on vendor-data in OpenStackScott Moser
2015-05-22Azure: Redact on-disk user password in /var/lib/ovf-env.xmlScott Moser
The fabric provides the user password in plain text via the CDROM, and cloud-init has previously wrote the ovf-env.xml in /var/lib/waagent with the password in plain text. This change redacts the password. LP: #1311827
2015-05-19EC2: be aware of eu-central-1 availability zoneScott Moser
eu-central-1 means that 'central' is a direction to update the regular expression to understand. LP: #1456684
2015-05-15Azure: remove dependency on walinux-agentScott Moser
This takes away our dependency on walinux-agent, by providing a builtin path for doing cloud-init had delegated to it. Currently the default is to still use the old path, but adding this code in will allow us to move to the new code path with more confidence.
2015-05-15detect that CentOS 7 uses systemd, write previous-hostname in that case.Scott Moser
Also, on RHEL-type systems using systemd, /var/lib/cloud/data/previous-hostname would never get created (because rather then write to files, it was executing hostnamectl)
2015-05-01Fix exception when running with no arguments on Python 3Scott Moser
LP: #1424277
2015-05-01Azure: if user has set hostname, do not overwrite itScott Moser
Due to the way the azure boot works, where we identify the hostname to the fabric, we were inadvertently overwriting hostname that the user had set. LP: #1375252
2015-04-21sysvinit: make cloud-init-local run before networking is brought upScott Moser
While booting a VM from a snapshot image, network service use to find the residual network config scripts and use to configure the old IPs. cloud-init-local use to run later and populate the config scripts with latest information, which does not override the previous configuration. To solve this, we are ensuring that cloud-init-local runs before network. LP: #1275098
2015-04-21Fix +tests for GCE datasource not handling per-instance SSH keysJoshua Harlow
2015-04-21Update changelog with previously merged branchesJoshua Harlow
2015-04-09systemd: use network-online instead of network.target (LP: #1440180)Scott Moser
don't declare a Wants/Requires on network.target; this is a passive target that should only be pulled in by implementors of the networking service. The requirement for network needs to be expressed as a dependency on network-online.target. LP: #1440180