summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Revert "cherry pick 39b35003"ubuntu/daily/hirsuteJames Falcon2021-10-162-191/+0
| | | | This reverts commit 39b35003631710ff36281e5ab5a4efa9c25a5784.
* Merge remote-tracking branch 'upstream/ubuntu/hirsute' into ubuntu/daily/hirsuteJames Falcon2021-10-164-1/+205
|\
| * d/upstream/metadata: Change contact to James FalconJames Falcon2021-10-112-1/+7
| |
| * releasing cloud-init version 21.3-1-g6803368d-0ubuntu1~21.04.4ubuntu/21.3-1-g6803368d-0ubuntu1_21.04.4James Falcon2021-10-071-1/+1
| |
| * update changelogJames Falcon2021-10-071-0/+7
| |
| * cherry pick 9c147e83James Falcon2021-10-072-0/+191
| | | | | | | | LP: #1938299
* | Revert "cherry pick 28e56d99"James Falcon2021-09-242-74/+0
| | | | | | | | This reverts commit 4e9d44ae62f33ec3aa323eaa59ed4b58975cce44.
* | Revert "cherry pick e69a8874"James Falcon2021-09-242-56/+0
| | | | | | | | This reverts commit 859bcc2cb0c7489aa2ee0b3456a6504757bcb130.
* | Revert "cherry pick 612e3908"James Falcon2021-09-242-323/+0
| | | | | | | | This reverts commit bf7abb467d0b9d1055c982d70af375e83694339e.
* | Revert "cherry-pick dc227869"James Falcon2021-09-242-81/+0
|/ | | | This reverts commit a44332a3a6f9e4f3a5c0dde69da6cb4516474b4e.
* releasing cloud-init version 21.3-1-g6803368d-0ubuntu1~21.04.3ubuntu/21.3-1-g6803368d-0ubuntu1_21.04.3James Falcon2021-09-201-1/+1
|
* update changelogJames Falcon2021-09-201-0/+2
|
* cherry-pick dc227869James Falcon2021-09-202-0/+81
|
* update changelogJames Falcon2021-09-201-0/+7
|
* cherry pick 612e3908James Falcon2021-09-202-0/+323
| | | | LP: #1939603
* releasing cloud-init version 21.3-1-g6803368d-0ubuntu1~21.04.2James Falcon2021-09-031-1/+1
|
* update changelogJames Falcon2021-09-031-2/+4
|
* cherry pick e69a8874James Falcon2021-09-032-0/+56
|
* update changelogJames Falcon2021-09-031-0/+7
|
* cherry pick 28e56d99James Falcon2021-09-032-0/+74
|
* releasing cloud-init version 21.3-1-g6803368d-0ubuntu1~21.04.1ubuntu/21.3-1-g6803368d-0ubuntu1_21.04.1James Falcon2021-08-241-1/+1
|
* Update changelog for VMware changesJames Falcon2021-08-241-0/+2
|
* fix a lintian warningJames Falcon2021-08-241-1/+1
| | | | unnecessary was spelled wrong in changelog.
* update changelog (New upstream snapshot 21.3-1-g6803368d).James Falcon2021-08-231-0/+98
|
* merge from upstream/main at 21.3-1-g6803368dJames Falcon2021-08-23178-892/+9898
|\
| * testing: Fix ssh keys integration test (#992)James Falcon2021-08-231-1/+7
| | | | | | | | | | Home directory permissions changed in hirsute. The integration test assumed permissions from earlier releases. Test was fixed to take both permissions into account
| * Release 21.3 (#993)21.3James Falcon2021-08-232-1/+102
| | | | | | | | | | Bump the version in cloudinit/version.py to 21.3 and update ChangeLog. LP: #1940839
| * Azure: During primary nic detection, check interface status continuously ↵aswinrajamannar2021-08-202-23/+35
| | | | | | | | | | | | | | | | before rebinding again (#990) Add 10 second polling loop in wait_for_link_up after performing an unbind and re-bind of primary NIC in hv_netvsc driver. Also reduce cloud-init logging levels to debug for these operations.
| * Fix home permissions modified by ssh module (SC-338) (#984)James Falcon2021-08-202-21/+146
| | | | | | | | | | | | | | | | | | | | Fix home permissions modified by ssh module In #956, we updated the file and directory permissions for keys not in the user's home directory. We also unintentionally modified the permissions within the home directory as well. These should not change, and this commit changes that back. LP: #1940233
| * Add integration test for sensitive jinja substitution (#986)James Falcon2021-08-202-25/+20
| | | | | | | | | | | | Ensure jinja templates work for both instance-data.json and instance-data-sensitive.json. Test for LP: #1931392 Also removed test_runcmd.py as it's made redundant by this change.
| * Ignore hotplug socket when collecting logs (#985)James Falcon2021-08-191-8/+16
| | | | | | | | | | | | | | | | | | | | Update "cloud-init collect-logs" to ignore /run/cloud-init/hook-hotplug-cmd as this will raise the error "/run/cloud-init/hook-hotplug-cmd` is a named pipe" if included. Also updated logs.py to continue writing the tarball if it fails collecting a file rather than let the exception bubble up. LP: #1940235
| * testing: Add missing mocks to test_vmware.py (#982)James Falcon2021-08-191-1/+15
| |
| * add Zadara Edge Cloud Platform to the supported clouds list (#963)sarahwzadara2021-08-162-0/+2
| |
| * testing: skip upgrade tests on LXD VMs (#980)James Falcon2021-08-131-1/+10
| | | | | | | | | | | | | | The issues we see on Bionic VMs don't appear anywhere else, including when invoking kvm directly. It likely has to do with the extra LXD agent setup happening on bionic. Given that we still have Bionic covered on all other platforms, the risk of skipping bionic for LXD VM tests seems low.
| * Only invoke hotplug socket when functionality is enabled (#952)James Falcon2021-08-134-52/+112
| | | | | | | | | | Alters hotplug hook to have a query mechanism checking if the functionality is enabled. This allows us to avoid using the hotplug socket and service when hotplug is disabled.
| * Revert unnecesary lcase in ds-identify (#978)Andrew Kutz2021-08-131-1/+1
| | | | | | | | | | | | | | | | | | This patch reverts an unnecessary lcase optimization in the ds-identify script. SystemD documents the values produced by the systemd-detect-virt command are lower case, and the mapping table used by the FreeBSD check is also lower-case. The optimization added two new forked processes, needlessly causing overhead.
| * cc_resolv_conf: fix typos (#969)Shreenidhi Shedi2021-08-123-5/+111
| | | | | | Add tests for cc_resolv_conf handler
| * Replace broken httpretty tests with mock (SC-324) (#973)James Falcon2021-08-121-42/+17
| | | | | | | | | | | | | | | | * Replace broken httpretty tests with mock Certain versions of python/httpretty don't work correctly using https URIs. #960 recently added httpretty tests using https. This commit replaces the httpretty tests that were failing on https with mocks of readurl instead.
| * Azure: Check if interface is up after sleep when trying to bring it up (#972)aswinrajamannar2021-08-122-0/+29
| | | | | | | | | | | | | | When bringing interface up by unbinding and then binding hv_netvsc driver, it might take a short delay after binding for the link to be up. So before trying unbind/bind again after sleep, check if the link is up. This is a corner case when a preprovisioned VM is reused and the NICs are hot-attached.
| * Update dscheck_VMware's rpctool check (#970)Shreenidhi Shedi2021-08-121-6/+9
| | | | | | | | | | | | | | | | | | | | | | This patch updates the dscheck_VMware function's use of "vmware-rpctool". When checking to see if a "guestinfo" property is set. Because a successful exit code can occur even if there is an empty string returned, it is possible that the VMware datasource will be loaded as a false-positive. This patch ensures that in addition to validating the exit code, the emitted output is also examined to ensure a non-empty value is returned by rpctool before returning "${DS_FOUND}" from "dscheck_VMware()".
| * Azure: Logging the detected interfaces (#968)Moustafa Moustafa2021-08-121-0/+2
| |
| * Change netifaces dependency to 0.10.4 (#965)Andrew Kutz2021-08-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Change netifaces dependency to 0.10.4 Currently versions Ubuntu <=20.10 use netifaces 0.10.4 By requiring netifaces 0.10.9, the VMware datasource omitted itself from cloud-init on Ubuntu <=20.10. This patch changes the netifaces dependency to 0.10.4. While it is true there are patches to netifaces post 0.10.4 that are desirable, testing against the most common network configuration was performed to verify the VMware datasource will still function with netifaces 0.10.4.
| * Azure: Limit polling network metadata on connection errors (#961)aswinrajamannar2021-08-102-12/+25
| |
| * Update inconsistent indentation (#962)Andrew Kutz2021-08-101-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch updates some indentation in a comment that prevented an attempt to run the Black formatter (https://github.com/psf/black) against the cloud-init codebase: $ find cloudinit -name '*.py' -type f | xargs black -l 79 --check ... Oh no! 💥 💔 💥 262 files would be reformatted, 19 files would be left unchanged, 1 file would fail to reformat. The one file that fails to format is cloudinit/net/__init__.py. With this fix in place, the black command can successfully parse the file into AST and back again: $ black -l 79 --check cloudinit/net/__init__.py would reformat cloudinit/net/__init__.py Oh no! 💥 💔 💥 1 file would be reformatted. Normally this patch would be part of such an overall effort, but since this is the only location that interrupted running the black command, this author felt it was worth addressing this discrepancy sooner than later in the case there is subsequent desire to use a standard format tool such as black.
| * cc_puppet: support AIO installations and more (#960)Gabriel Nagy2021-08-104-64/+426
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - update the puppet module to support AIO installations by setting `install_type` to `aio` - make the install collection configurable through the `collection` parameter; by default the rolling `puppet` collection will be used, which installs the latest version) - when `install_type` is `aio`, puppetlabs repos will be purged after installation; set `cleanup` to `False` to prevent this - AIO installations are performed by downloading and executing a shell script; the URL for this script can be overridden using the `aio_install_url` parameter - make it possible to run puppet agent after installation/configuration via the `exec` key - by default, puppet agent will run with the `--test` argument; this can be overridden via the `exec_args` key
| * Add Puppet contributors to CLA signers (#964)Noah Fontes2021-08-101-0/+3
| |
| * Datasource for VMware (#953)Andrew Kutz2021-08-0912-3/+1977
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch finally introduces the Cloud-Init Datasource for VMware GuestInfo as a part of cloud-init proper. This datasource has existed since 2018, and rapidly became the de facto datasource for developers working with Packer, Terraform, for projects like kube-image-builder, and the de jure datasource for Photon OS. The major change to the datasource from its previous incarnation is the name. Now named DatasourceVMware, this new version of the datasource will allow multiple transport types in addition to GuestInfo keys. This datasource includes several unique features developed to address real-world situations: * Support for reading any key (metadata, userdata, vendordata) both from the guestinfo table when running on a VM in vSphere as well as from an environment variable when running inside of a container, useful for rapid dev/test. * Allows booting with DHCP while still providing full participation in Cloud-Init instance data and Jinja queries. The netifaces library provides the ability to inspect the network after it is online, and the runtime network configuration is then merged into the existing metadata and persisted to disk. * Advertises the local_ipv4 and local_ipv6 addresses via guestinfo as well. This is useful as Guest Tools is not always able to identify what would be considered the local address. The primary author and current steward of this datasource spoke at Cloud-Init Con 2020 where there was interest in contributing this datasource to the Cloud-Init codebase. The datasource currently lives in its own GitHub repository at https://github.com/vmware/cloud-init-vmware-guestinfo. Once the datasource is merged into Cloud-Init, the old repository will be deprecated.
| * photon: refactor hostname handling and add networkd activator (#958)sshedi2021-08-096-44/+117
| |
| * Stop copying ssh system keys and check folder permissions (#956)Emanuele Giuseppe Esposito2021-08-093-216/+920
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In /etc/ssh/sshd_config, it is possible to define a custom authorized_keys file that will contain the keys allowed to access the machine via the AuthorizedKeysFile option. Cloudinit is able to add user-specific keys to the existing ones, but we need to be careful on which of the authorized_keys files listed to pick. Chosing a file that is shared by all user will cause security issues, because the owner of that key can then access also other users. We therefore pick an authorized_keys file only if it satisfies the following conditions: 1. it is not a "global" file, ie it must be defined in AuthorizedKeysFile with %u, %h or be in /home/<user>. This avoids security issues. 2. it must comply with ssh permission requirements, otherwise the ssh agent won't use that file. If it doesn't meet either of those conditions, write to ~/.ssh/authorized_keys We also need to consider the case when the chosen authorized_keys file does not exist. In this case, the existing behavior of cloud-init is to create the new file. We therefore need to be sure that the file complies with ssh permissions too, by setting: - the actual file to permission 600, and owned by the user - the directories in the path that do not exist must be root owned and with permission 755.
| * testing: port remaining cloud tests to integration testing framework ↵James Falcon2021-08-064-11/+278
| | | | | | | | | | (SC-191) (#955) This should enable us to remove the cloud-tests entirely.