move TODO to TODO.rst
This commit is contained in:
commit
3d1e33de83
46
TODO
46
TODO
@ -1,46 +0,0 @@
|
||||
- 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.
|
||||
|
43
TODO.rst
Normal file
43
TODO.rst
Normal file
@ -0,0 +1,43 @@
|
||||
==============================================
|
||||
Things that cloud-init may do (better) someday
|
||||
==============================================
|
||||
|
||||
- Consider making ``failsafe`` ``DataSource``
|
||||
- sets the user password, writing it to console
|
||||
|
||||
- Consider a ``previous`` ``DataSource``, if no other data source is
|
||||
found, fall back to the ``previous`` one that worked.
|
||||
- Rewrite ``cloud-init-query`` (currently not implemented)
|
||||
- Possibly have a ``DataSource`` 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). See for example `netcf`_ which seems to be
|
||||
an active project that has this capability.
|
||||
- Replace the ``apt*`` modules with variants that now use the distro classes
|
||||
to perform distro independent packaging commands (wherever possible).
|
||||
- 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_`` prefix for config modules, either have them fully
|
||||
specified (ie ``cloudinit.config.resizefs``) or by default only look in
|
||||
the ``cloudinit.config`` namespace 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)
|
||||
- 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.
|
||||
|
||||
.. _netcf: https://fedorahosted.org/netcf/
|
Loading…
x
Reference in New Issue
Block a user