Support overriding network activators in cloud.cfg system_info
on disk.
Default cloud-init activators are used either during hot-plug or
for datasources that are detected during init-network stage when
basic networking has already been setup by the OS.a
Activators are discovered in the following priority order and
determined based on the presence of related network tools:
On some systems where multiple network config tools are installed
it is necessary to override the priority order of detection to ensure
one activator is chosen over the other. This is done by providing
the a custom cloud config snippet in a /etc/cloud/cloud.cfg.d/*cfg.
Surface configured Distro.network_activator from system_info
so that the hotplug hook has visibility to the configured
distribution network activator during interface bring_up and
tear_down.
Add typing hints to net.activators search_activator and
select_activator functions.
When lvm storage backend is configured, but the active kernel
does not have the kernel module dm-thin-pool.ko, disable
lvm thinpool configuration via `lvm.use_thinpool=false`
when creating the storage pool.
Related bug LP: #1982780 where KVM images do not contain
the dm-thin-pool module.
Includes:
* Fix a case where 'is' instead of '==' resulted in incorrectly set
passwords
* Fix RANDOM password getting logged as RANDOM rather than the
password
* A new feature flag to allow disabling the fix in e0416cd6 on older
releases
* Updated deprecated schema text so docs don't say
"DEPRECATED. DEPRECATED"
* New integration test for new user schema which is now the CI default
* Unit test conversion from CiTestCase to pytest
* New unit tests covering new schema, password expiration, random
password creation and logging