
specific modules in cloudinit, that maybe we should encourage a 'config' website or something similar, and let people host common modules they find useful there, and keep the ones built-in to cloud-init completly distribution agnostic.
47 lines
2.7 KiB
Plaintext
47 lines
2.7 KiB
Plaintext
- Consider a 'failsafe' DataSource
|
|
If all others fail, setting a default that
|
|
- sets the user password, writing it to console
|
|
- logs to console that this happened
|
|
- Consider a 'previous' DataSource
|
|
If no other data source is found, fall back to the 'previous' one
|
|
keep a indication of what instance id that is in /var/lib/cloud
|
|
- Rewrite "cloud-init-query" (currently not implemented)
|
|
Possibly have DataSource and cloudinit expose explicit fields
|
|
- instance-id
|
|
- hostname
|
|
- mirror
|
|
- release
|
|
- ssh public keys
|
|
- Remove the conversion of the ubuntu network interface format conversion
|
|
to a RH/fedora format and replace it with a top level format that uses
|
|
the netcf libraries format instead (which itself knows how to translate
|
|
into the specific formats)
|
|
- Replace the 'apt*' modules with variants that now use the distro classes
|
|
to perform distro independent packaging commands (where possible)
|
|
- Canonicalize the semaphore/lock name for modules and user data handlers
|
|
a. It is most likely a bug that currently exists that if a module in config
|
|
alters its name and it has already ran, then it will get ran again since
|
|
the lock name hasn't be canonicalized
|
|
- Replace some the LOG.debug calls with a LOG.info where appropriate instead
|
|
of how right now there is really only 2 levels (WARN and DEBUG)
|
|
- Remove the 'cc_' for config modules, either have them fully specified (ie
|
|
'cloudinit.config.resizefs') or by default only look in the 'cloudinit.config'
|
|
for these modules (or have a combination of the above), this avoids having
|
|
to understand where your modules are coming from (which can be altered by
|
|
the current python inclusion path)
|
|
- Depending on if people think the wrapper around 'os.path.join' provided
|
|
by the 'paths' object is useful (allowing us to modify based off a 'read'
|
|
and 'write' configuration based 'root') or is just to confusing, it might be
|
|
something to remove later, and just recommend using 'chroot' instead (or the X
|
|
different other options which are similar to 'chroot'), which is might be more
|
|
natural and less confusing...
|
|
- Instead of just warning when a module is being ran on a 'unknown' distribution
|
|
perhaps we should not run that module in that case? Or we might want to start
|
|
reworking those modules so they will run on all distributions? Or if that is
|
|
not the case, then maybe we want to allow fully specified python paths for
|
|
modules and start encouraging packages of 'ubuntu' modules, packages of 'rhel'
|
|
specific modules that people can add instead of having them all under the
|
|
cloud-init 'root' tree? This might encourage more development of other modules
|
|
instead of having to go edit the cloud-init code to accomplish this.
|
|
|