Skip to content

Ubuntu/noble - #7019

Open
blackboxsw wants to merge 16 commits into
canonical:ubuntu/noblefrom
blackboxsw:ubuntu/noble
Open

Ubuntu/noble#7019
blackboxsw wants to merge 16 commits into
canonical:ubuntu/noblefrom
blackboxsw:ubuntu/noble

Conversation

@blackboxsw

Copy link
Copy Markdown
Collaborator

Upstream snapshot of 26.2 into noble for SRU

Process to create this branch

Defined in https://github.com/orgs/canonical/projects/29/views/1?pane=issue&itemId=21366463

Additional Context

Test Steps

CI should validate this branch, otherwise:

# verify package versions adhere to cloud-init versioning policy  (<RELEASE_MAJOR>.<RELEASE_MINOR>-0ubuntu1~XX.YY.1)
quilt push -a
tox -e py3
quilt pop -a
sbulid ....

Merge type

  • Squash merge using "Proposed Commit Message"
  • Rebase and merge unique commits. Requires commit messages per-commit each referencing the pull request number (#<PR_NUM>)
  • git push branch tags from commandline once reviewed

mcanevet and others added 16 commits July 8, 2026 15:54
…2 schema (canonical#6855)

Add an autouse fixture to TestOpenNebulaNetwork that wraps gen_conf() and
runs jsonschema validation against schema-network-config-v2.json on every
call, so all existing tests implicitly assert schema conformance without
requiring dedicated per-field type checks
Add logic to skip Debian 11 (bullseye) backports in templates.
As per the Backports Policy, oldstable-backports are only available
for one year after the new stable release. Since Debian 12 was
released in June 2023, bullseye-backports was disabled on June 2024.

This fixes apt update failures in current (2026) environments.
Adds a transitional warning when cloud-init analyze dump
falls back to GNU date/gdate for timestamp parsing.
The warning includes the unrecognized timestamp format
and the selected binary so maintainers can collect formats
that still need native Python support before removing the
shell-out path.

The no-GNU-date behavior is unchanged: unsupported formats
still raise ValueError when neither date nor gdate is available.

Fixes canonicalGH-4357
`importer.py` calls `importlib.util.find_spec()`
but the file only actually imports `importlib`
by itself.

Up until now we've gotten away with it as something
else has always imported `importlib.util` for us
"by accident", but if an end consumer imports
`cloud-init` as a library (i.e. `ubuntu-pro-client`)
there's no guarantee that will happen. It happened
in canonical#6924 so let's fix it now.

Fixes canonicalGH-6924
…#6925)

Fixed behavior in c9a520a which no longer spits out container
on stderr. Update the integration tests to assert exit code and
empty stderr.
…l#6911)

Mount points containing spaces (and tabs/newlines/backslashes) are now
octal-escaped (\040, \011, \012, \134) when written to /etc/fstab, so
`mount -a` can parse them. Directories are still created with real
characters.

The escape/unescape helpers live in `cloudinit.util` and are reused by
`util.mounts()`, which previously only undid `\040` for spaces and now
decodes tabs, newlines and backslashes as well.

Add unit tests plus a one-off integration test (`test_gh3603.py`) and
document the behaviour in the `cc_mounts` examples.

Fixes canonicalGH-3603
…6921)

_is_iscsi_root() only detected iSCSI root from initramfs-tools klibc
/run/net-*.conf files, which dracut images don't produce. Those
instances fell back to IMDS and never got keep_configuration (netplan
critical: true) on the primary NIC. Without it the interface can be
torn down while the root filesystem is still mounted over iSCSI,
stalling shutdown/reboot.

Detect iSCSI root from the kernel iBFT (/sys/firmware/ibft/target*/
flags), keep klibc as a fallback, and set keep_configuration for both
the klibc and IMDS paths.

Fixes canonicalGH-6915
…anonical#6802)

Refactor x509 certificate and SSH key handling logic from 
OpenSSLManager and DataSourceAzure into a new dedicated 
module cloudinit/sources/azure/certs.py with three utility functions:

  - is_openssh_formatted(): Validates OpenSSH format keys
  - is_x509_certificate(): Validates x509 certificates via opensslprobert
  - convert_x509_to_openssh(): Converts x509 certs to OpenSSH keys

This refactoring maintains existing functionality without changes while 
preparing the codebase for upcoming work to support x509 certificates 
from Azure IMDS.
Bump the version in meson.build to 26.2 and update ChangeLog.
patches:
debian/patches/no-nocloud-network.patch
@github-actions github-actions Bot added the packaging Supplemental package review requested label Aug 20, 2026
@holmanb holmanb self-assigned this Aug 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

packaging Supplemental package review requested

Projects

None yet

Development

Successfully merging this pull request may close these issues.