-
Notifications
You must be signed in to change notification settings - Fork 882
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ubuntu/noble]: patch out breaking changes #5581
Commits on Jul 3, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 9357c38 - Browse repository at this point
Copy the full SHA 9357c38View commit details -
fix(openbsd): fix mtu on newline in hostname files (canonical#5412)
The /etc/hostname.* files should have the mtu on a separate line otherwise it gives error: ifconfig: mtu: bad value The lines are executed in order by ifconfig and mtu should be on it's own line. Fixes: canonicalGH-5413
Configuration menu - View commit details
-
Copy full SHA for 053331e - Browse repository at this point
Copy the full SHA 053331eView commit details -
fix(vmware): Set IPv6 to dhcp when there is no IPv6 addr (canonical#5471
Configuration menu - View commit details
-
Copy full SHA for 2b6fe64 - Browse repository at this point
Copy the full SHA 2b6fe64View commit details
Commits on Jul 8, 2024
-
test: pytestify and cleanup test_cc_mounts.py (canonical#5459)
* Remove `unittest` constructs and remove base classes. * Replace tests that don't test things with tests that do * Add fstab and mounts combinations test
Configuration menu - View commit details
-
Copy full SHA for 0af459e - Browse repository at this point
Copy the full SHA 0af459eView commit details
Commits on Jul 9, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 8a58270 - Browse repository at this point
Copy the full SHA 8a58270View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7130bbb - Browse repository at this point
Copy the full SHA 7130bbbView commit details
Commits on Jul 10, 2024
-
Configuration menu - View commit details
-
Copy full SHA for db828d0 - Browse repository at this point
Copy the full SHA db828d0View commit details -
refactor: util.get_proc_env to work with strs (canonical#5490)
There are no call sites requesting not decoding the environment vars. This change decodes then always, simplifying typing and logic.
Configuration menu - View commit details
-
Copy full SHA for 188656b - Browse repository at this point
Copy the full SHA 188656bView commit details -
refactor: util.mounts to handle errors (canonical#5490)
Instead of a broad try/except, do properly check for conditions that invalidate a mount location.
Configuration menu - View commit details
-
Copy full SHA for 0128716 - Browse repository at this point
Copy the full SHA 0128716View commit details -
Set MTU for bond parent interface (canonical#5495)
Support for jumbo frames requires that the underlying physical interfaces and the parent bond interface all have the larger MTU configured, not just the physical interfaces.
Configuration menu - View commit details
-
Copy full SHA for 4c0468c - Browse repository at this point
Copy the full SHA 4c0468cView commit details -
fix: add schema rules for 'baseurl' and 'metalink' in yum repo config (…
…canonical#5501) At least one of (or both) 'baseurl' or 'metalink' should be provided for yum repository specification. Add schema changes to enforce it. Without this, with just 'metalink' property set, one would get the schema validator error \--- Error: Cloud config schema errors: yum_repos.epel-release: 'baseurl' is a required property \--- Signed-off-by: Ani Sinha <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7d35664 - Browse repository at this point
Copy the full SHA 7d35664View commit details -
feat(systemd): Warn user of unexpected run mode (canonical#5209)
On systemd, services are started by PID 1. When this doesn't happen, cloud-init is in an unknown run state and should warn the user. Reorder pid log to be able to reuse Distro information. Add docstring deprecating util.is_Linux().
Configuration menu - View commit details
-
Copy full SHA for 4abdd5a - Browse repository at this point
Copy the full SHA 4abdd5aView commit details -
test: Don't fail tests which call cloud-init as a command (canonical#…
…5209) Implement verify_clean_boot() to ignore certain expected logs in a platform-specific way.
Configuration menu - View commit details
-
Copy full SHA for 604d80e - Browse repository at this point
Copy the full SHA 604d80eView commit details -
test: allow verify_clean_boot to ignore all or specific tracebacks (c…
…anonical#5209) Ensure ignore_warnings=True or ignore_errors=True is honored and not overridden by supplemental warning texts appended.
Configuration menu - View commit details
-
Copy full SHA for 8aa1c30 - Browse repository at this point
Copy the full SHA 8aa1c30View commit details -
feat(systemd): convert warning level message to deprecation (canonica…
…l#5209) Avoid using warning level messages as there may be some use-cases in the wild that need to invoke cloud-init boot stages after boot for some reason unknown to upstream. Provide a detailed warning message informing admins to file issues against cloud-init to better represent those feature needs before dropping this feature altogether.
Configuration menu - View commit details
-
Copy full SHA for 75add5c - Browse repository at this point
Copy the full SHA 75add5cView commit details -
Configuration menu - View commit details
-
Copy full SHA for a911d07 - Browse repository at this point
Copy the full SHA a911d07View commit details -
tests: revert expectation of exit 2 from cloud-init init --local (can…
…onical#5504) Commit 604d80e introduced assertions expecting exit 2 from the CLI when calling cloud-init init --local. Revert this test assertion as only cloud-init status command exits (2) on deprecations/warnings. Invoking cloud-init's boot stages on the commmand line will only exit 1 if critical errors are encountered to avoid degrading overall systemd health as seen from cloud-init systemd units. When cloud-init boot stages encounter recoverable_errors of any type, there is no need to exit non-zero as those deprecation logs are not-critical to the health of the system as a whole.
Configuration menu - View commit details
-
Copy full SHA for 18d76ac - Browse repository at this point
Copy the full SHA 18d76acView commit details -
test: Unconditionally skip test_multi_nic_hotplug_vpc (canonical#5503)
It is pretty consistently failing due to canonical#5373 with no fix in sight.
Configuration menu - View commit details
-
Copy full SHA for 8dbc5c2 - Browse repository at this point
Copy the full SHA 8dbc5c2View commit details
Commits on Jul 11, 2024
-
Fix configuration of DNS servers via OpenStack (canonical#5384)
Ensure DNS server addresses are parsed from the proper location of network_data.json Fixes canonical#5386 Co-authored-by: Alberto Contreras <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e0e6a42 - Browse repository at this point
Copy the full SHA e0e6a42View commit details
Commits on Jul 18, 2024
-
fix: Update DNS behavior for NetworkManager interfaces (canonical#5496)
If DNS information is added to a NetworkManager managed interface where the given protocol family is disabled, NetworkManager will be unable to activate the interface. canonical#5387
Configuration menu - View commit details
-
Copy full SHA for 311f723 - Browse repository at this point
Copy the full SHA 311f723View commit details -
Configuration menu - View commit details
-
Copy full SHA for 658d184 - Browse repository at this point
Copy the full SHA 658d184View commit details -
Support setting mirrorlist in yum repository config (canonical#5522)
'mirrorlist' config can be specified instead or along with 'baseurl' in the yum repository config. Add support for specifying mirrorlist instead of 'baseurl'. Fixes canonicalGH-5520 Signed-off-by: Ani Sinha <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0b40843 - Browse repository at this point
Copy the full SHA 0b40843View commit details -
fix: Clean cache if no datasource fallback (canonical#5499)
9929a00 added the ability to used a cached datasource when none is found. This was supposed to be per-datasource, but the lack of cache cleaning got applied universally. This commit makes it so cache will be cleaned as it was before if fallback isn't implemented in datasource. Fixes canonicalGH-5486
Configuration menu - View commit details
-
Copy full SHA for 550c685 - Browse repository at this point
Copy the full SHA 550c685View commit details -
Configuration menu - View commit details
-
Copy full SHA for 57d130e - Browse repository at this point
Copy the full SHA 57d130eView commit details -
feat: Add trace-level logger (canonical#5414)
This is useful for logs we want hidden by default but can be turned on via configuration.
Configuration menu - View commit details
-
Copy full SHA for b0a673a - Browse repository at this point
Copy the full SHA b0a673aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8ec2f64 - Browse repository at this point
Copy the full SHA 8ec2f64View commit details -
refactor: logs.py pathlib changes (canonical#5414)
Switch to pathlib where appropriate and call consistently
Configuration menu - View commit details
-
Copy full SHA for 19c86ff - Browse repository at this point
Copy the full SHA 19c86ffView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6e4153b - Browse repository at this point
Copy the full SHA 6e4153bView commit details
Commits on Jul 19, 2024
-
fix(ds-identify): Detect nocloud when seedfrom url exists (canonical#…
…5515) With this change, the following config in cloud.cfg.d/ will select NoCloud in network stage. ``` datasource_list: [ GCE, NoCloud, None ] datasource: NoCloud: seedfrom: http://0.0.0.0:8000/ ``` Previously a two or less datasources in the datasource_list were required to get this behavior, which was undocumented and not intuitive. The ds-identify already allowed inline user-data and meta-data to trigger detection. Add ds-identify unittests for seedfrom and inline user-data. Add DataSourceNoCloud.ds_detect() unittests for seedfrom and inline user-data.
Configuration menu - View commit details
-
Copy full SHA for 23be88d - Browse repository at this point
Copy the full SHA 23be88dView commit details -
chore: Improve detection logging for user clarity (canonical#5515)
The nocloud datasource logs messages that are sometimes confused by users for errors. Clarify them. Also, remove redundant information from the logs: - simplify log wording - only include seed and dsmode information in nocloud string when non-default values are used
Configuration menu - View commit details
-
Copy full SHA for 7703634 - Browse repository at this point
Copy the full SHA 7703634View commit details -
chore: Deprecate partially supported system config (canonical#5515)
ds-identify does not support the fs_label key. This key is only partially supported. Deprecate it. Users of custom labels may switch to cidata or CIDATA. Note: Tools such as cloud-localds hard-code the label.
Configuration menu - View commit details
-
Copy full SHA for 16a3198 - Browse repository at this point
Copy the full SHA 16a3198View commit details -
feat(wsl): Special handling Landscape client config tags (canonical#5460
) UP4W business logic is so that its data overrides user at a key (module) level. That means the entire Landscape config is overriden if both agent data and user data contains config for that module. Yet, for better usability, computer tags must be assignable per instance. That's not possible with agent.yaml, because it's meant to be global. Its config data affects all Ubuntu WSL instances. Thus this aims to make a special case for landscape.client.tags, if present in user provided data (either Landscape or local user - whatever is picked up before merging with agent.yaml) its value overwrites any tags set by agent.yaml. Only landscape.client.tags are treated specially. The pre-existing merge rules still apply for any other value present in both agent.yaml and user provided data. Fixes UDENG-2464
Configuration menu - View commit details
-
Copy full SHA for 5532b4a - Browse repository at this point
Copy the full SHA 5532b4aView commit details
Commits on Jul 22, 2024
-
add openeuler to distros in cc_spacewalk.py (canonical#5530)
Commit 441d8f8 adds openeuler to the list of supported distros in cc_spacewalk.py, but there is one omission.
Configuration menu - View commit details
-
Copy full SHA for e1147bd - Browse repository at this point
Copy the full SHA e1147bdView commit details -
feat: Support URI sources in
write_files
module (canonical#5505)This change adds an optional `source` key to the `write_files` module, allowing users to specify a URI from which to load file contents. This facilitates more flexible multi-part configurations, as file contents can be managed via external sources such as independent Git repositories. Fixes canonicalGH-5500
Configuration menu - View commit details
-
Copy full SHA for 7c2d4fd - Browse repository at this point
Copy the full SHA 7c2d4fdView commit details -
fix(azurelinux): Change default usr_lib_exec path (canonical#5526)
Change default usr_lib_exec from /usr/libexec/ to /usr/lib as azurelinux installs cloud-init tool binaries under /usr/lib/cloud-int instead of /usr/libexec/cloud-init
Configuration menu - View commit details
-
Copy full SHA for 2534432 - Browse repository at this point
Copy the full SHA 2534432View commit details -
test: fix no ds cache tests (canonical#5529)
After 7703634 log messages migrated from: "Detected platform DataSource..." to "Detected DataSource..." Adapt integration tests accordingly.
Configuration menu - View commit details
-
Copy full SHA for 2d23852 - Browse repository at this point
Copy the full SHA 2d23852View commit details -
test: fix test_kernel_command_line_match (canonical#5529)
Adapt to conform with 7703634
Configuration menu - View commit details
-
Copy full SHA for f90f0b8 - Browse repository at this point
Copy the full SHA f90f0b8View commit details
Commits on Jul 23, 2024
-
fix(wsl): Put back the "path" argument to wsl_path in ds-identify (ca…
…nonical#5537) Got swallowed by https://github.com/canonical/cloud-init/pull/5116/commits/ da6b5c4 The former commit resulted in usage error from the wslpath command thus we never found WSL specific data, disabling cloud-init.
Configuration menu - View commit details
-
Copy full SHA for 99ac819 - Browse repository at this point
Copy the full SHA 99ac819View commit details
Commits on Jul 24, 2024
-
fix: auto label doc PRs (canonical#5542)
Create explicit file to define and pin the actions/labeler's version. Upgrade breaking changes from action/labeler@v5.
Configuration menu - View commit details
-
Copy full SHA for bb4b7c0 - Browse repository at this point
Copy the full SHA bb4b7c0View commit details -
docs: improve qemu command line (canonical#5540)
The suggested qemu command line in our local execution example is rather old. Change the discouraged -hd* options to the new -device instead. Further add a chance to use KVM acceleration to speed up the example. Finally we had several occasions to be working on x86 only. We dropped arguments that can not work on cross-arch and furthermore added a hint at how one could again native performance on these platforms. Fixes canonicalGH-5050
Configuration menu - View commit details
-
Copy full SHA for 02beb9a - Browse repository at this point
Copy the full SHA 02beb9aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8ceae8b - Browse repository at this point
Copy the full SHA 8ceae8bView commit details
Commits on Jul 25, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 5f93726 - Browse repository at this point
Copy the full SHA 5f93726View commit details -
Configuration menu - View commit details
-
Copy full SHA for c176075 - Browse repository at this point
Copy the full SHA c176075View commit details -
doc: Update docs on boothooks (canonical#5546)
Improve explaination on #cloud-boothook for end-users. SC-1657 Fixes canonicalGH-4542 Co-authored-by: Calvin Mwadime <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e5e78c2 - Browse repository at this point
Copy the full SHA e5e78c2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 883d8e2 - Browse repository at this point
Copy the full SHA 883d8e2View commit details -
fix(doc-spelling): config spelling_word_list_filename (canonical#5547)
Without this explicit config option, an untracked and unused `doc/rtd/spelling_wordlist.txt` file is created while running `tox -e doc-spelling`.
Configuration menu - View commit details
-
Copy full SHA for 2ffd652 - Browse repository at this point
Copy the full SHA 2ffd652View commit details -
Configuration menu - View commit details
-
Copy full SHA for 25058e1 - Browse repository at this point
Copy the full SHA 25058e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 779dd6b - Browse repository at this point
Copy the full SHA 779dd6bView commit details
Commits on Jul 26, 2024
-
doc(NoCloud): Categorize the different configuration types (canonical…
…#5521) Formally document providing runtime configuration in system configuration. Introduce names to identify previously unnamed NoCloud concepts. Add more structure - discrete sections for: - runtime configuration types - discovery configuration - configuration sources
Configuration menu - View commit details
-
Copy full SHA for 81ef45e - Browse repository at this point
Copy the full SHA 81ef45eView commit details -
doc: improve drop-in custom modules (canonical#5548)
Add group of pages for drop-in custom modules and restructure existing docs under it. Add doc for custom datasources and config modules. SC-1836 Fixes canonicalGH-4649
Configuration menu - View commit details
-
Copy full SHA for 914a3a8 - Browse repository at this point
Copy the full SHA 914a3a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 15200a0 - Browse repository at this point
Copy the full SHA 15200a0View commit details
Commits on Jul 29, 2024
-
Configuration menu - View commit details
-
Copy full SHA for f9ab856 - Browse repository at this point
Copy the full SHA f9ab856View commit details -
fix(actions): doc labeler needs all clause instead of default any (ca…
…nonical#5568) Unspecified base match in labeler assumes 'any' for each match clause. When specifying base-branch and --any-glob-to-any-file either one of these cases would result in a successful match which would label all PRs again main as documentation. We need to explicitly specify 'all:' in our labeler match config to ensure BOTH: * matching file paths related to documentation -AND- * targeting a merge against 'main' branch
Configuration menu - View commit details
-
Copy full SHA for f8c1b51 - Browse repository at this point
Copy the full SHA f8c1b51View commit details -
chore(debian): Remove vestigial postinst and preinst code (canonical#…
…5569) Both were version gated and do not run.
Configuration menu - View commit details
-
Copy full SHA for 00317d1 - Browse repository at this point
Copy the full SHA 00317d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for f8d8a0c - Browse repository at this point
Copy the full SHA f8d8a0cView commit details
Commits on Jul 31, 2024
-
fix(actions): correct typo in cloudinit/config/schemas/ match (canoni…
…cal#5570) Also drop undesirable former doc-autolabel.yml workflow
Configuration menu - View commit details
-
Copy full SHA for b5d4f3f - Browse repository at this point
Copy the full SHA b5d4f3fView commit details -
feat: Eliminate redundant configuration reads (canonical#5536)
When instance id hasn't changed and datasource hasn't changed, don't forcibly reload the configuration.
Configuration menu - View commit details
-
Copy full SHA for e6b2e0f - Browse repository at this point
Copy the full SHA e6b2e0fView commit details -
fix(NoCloudNet): Add network-config support (canonical#5566)
This enables support for network config v2 and v1 to NoCloud when used with http / ftp / etc. BREAKING_CHANGE: Adds an additional network request to NoCloud.
Configuration menu - View commit details
-
Copy full SHA for 5322dca - Browse repository at this point
Copy the full SHA 5322dcaView commit details
Commits on Aug 2, 2024
-
fix: Integration tests (canonical#5576)
String output changed in 7703634. Instance-id doesn't change on LXD / Focal.
Configuration menu - View commit details
-
Copy full SHA for ea831d6 - Browse repository at this point
Copy the full SHA ea831d6View commit details -
refactor: update handle function of cc_mounts (canonical#5498)
The handle function of cc_mounts was hard to grok and had one of the highest cyclomatic complexity scores in the codebase. Functionally, the code should be unchanged.
Configuration menu - View commit details
-
Copy full SHA for d15a770 - Browse repository at this point
Copy the full SHA d15a770View commit details -
Configuration menu - View commit details
-
Copy full SHA for ca3e6bc - Browse repository at this point
Copy the full SHA ca3e6bcView commit details -
feat: Single process optimization (canonical#5489)
Python interpreter initialization and module import time contributes a significant amount of wall clock time to cloud-init's runtime (and therefore to total boot time). Cloud-init has four stages. Each stage starts its own Python interpreter and loads the same libraries. To eliminate the redundant work of starting an interpreter and loading libraries, this changes cloud-init to run as a single process. Systemd service ordering is retained by using the existing cloud-init services as shims which use a synchronization protocol to start each cloud-init stage and to communicate that each stage is complete to the init system. Since multiple cloud-init processes sit in the critical chain of starting the system, this reduces boot time (including time to ssh login and time to cloud-init completion). Currently only systemd is supported, but the synchronization protocol should be capable of supporting other init systems as well with minor changes. Note: This enables many additional follow-on improvements that eliminate redundant work. However, these potential improvements are temporarily ignored. This commit has been structured to minimize the changes required to capture the majority of primary performance savings while preserving correctness and the ability to preserve backwards compatibility. Since this changes the semantics of the existing cloud-init unit files, this change takes the opportunity to rename one of its systemd units which causes frequent user confusion. The unit named cloud-init.service is often mistaken by users for being the only cloud-init service, when it is simply one of four stages. This stage is documented as the "network" stage, so this service will be renamed to "cloud-init-network.service". A new notify service is added as part of this implementation which contains the cloud-init process. This unit is named "cloud-init-main.service". Synchronization protocol ======================== - create one Unix socket for each systemd service stage - send sd_notify() - For each of the four stages (local, network, config, final): - when init system sends "start" to the Unix socket, start the stage - when running stage is complete, send "done" to Unix socket File changes ============ socket.py (new) --------------- - define a systemd-notify helper function - define a context manager which implements a multi-socket synchronization protocol cloud-init.service -> cloud-init-network.service (renamed) ---------------------------------------------------------- - renamed to cloud-network.service cloud-{init-local,init-network,config,final}.services ------------------------------------------- - change ExecStart to use netcat to connect to Unix socket and: - send a start message - wait for completion response - note: a pure Python equivalent is possible for any downstreams which do not package openbsd's netcat cloud-init-main.service (new) ----------------------------- - use service type to 'notify' - invoke cloud-init in single process mode - adopt systemd ordering requirements from cloud-init-local.service - adopt KillMode from cloud-final.service main.py ------- - Add command line flag to indicate "all stages" mode - In this mode run each stage followed by an IPC synchronization protocol step cloud-final.services -------------------- - drop KillMode cloud-init-local.services ------------------------- - drop dependencies made redundant by ordering after cloud-init-main.service Performance Impact ================== On Ubuntu 24.04, Python's wall clock start up time as measured with `time python3 -c 'import cloudinit.cmd.main' on a few cloud types: lxc container: 0.256s QEMU machine: 0.300s gce instance: 0.367s ec2 instance: 0.491s This change eliminates x1 this start up time from time to ssh. This change eliminates x3 this start up time from cloud-init's total completion. Total benefit varies based on the platform that the instance is hosted by, but all platforms will measurably benefit from this change. BREAKING_CHANGE: Run all four cloud-init services as a single systemd service.
Configuration menu - View commit details
-
Copy full SHA for 143bc9e - Browse repository at this point
Copy the full SHA 143bc9eView commit details
Commits on Aug 3, 2024
-
fix: nocloud no fail when network-config absent (canonical#5580)
Commit 5322dca introduced an assumption to read_seeded that network-config must always be present for NoCloud datasource. Since it is still considered and optional supplemental configuration allow the read_seeed calls to succeed in the absence of network-config. Avoids failures seen in tests/integration-tests/datasources/test_nocloud.py:: test_nocloud_seedfrom_vendordata
Configuration menu - View commit details
-
Copy full SHA for b7b11bc - Browse repository at this point
Copy the full SHA b7b11bcView commit details
Commits on Aug 5, 2024
-
Configuration menu - View commit details
-
Copy full SHA for da94eb4 - Browse repository at this point
Copy the full SHA da94eb4View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac8dccc - Browse repository at this point
Copy the full SHA ac8dcccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b5caf6 - Browse repository at this point
Copy the full SHA 6b5caf6View commit details -
Configuration menu - View commit details
-
Copy full SHA for acb49bf - Browse repository at this point
Copy the full SHA acb49bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1bbe731 - Browse repository at this point
Copy the full SHA 1bbe731View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c06327 - Browse repository at this point
Copy the full SHA 4c06327View commit details