← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1088099] Re: composable datasource

 

Tracked in Github Issues as https://github.com/canonical/cloud-
init/issues/2331

** Bug watch added: github.com/canonical/cloud-init/issues #2331
   https://github.com/canonical/cloud-init/issues/2331

** Changed in: cloud-init
       Status: Triaged => Expired

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1088099

Title:
  composable datasource

Status in cloud-init:
  Expired

Bug description:
  It might be interesting to support a datasource that can be
  dynamically generated by configuration.

  A datasource is really a set of functions which return a set of
  values, so why not let users pick from a known good list of functions
  and create there own datasource. Something like the following may
  illustrate this concept.

  ---
  datasource:
      default-locale: en_US.UTF-8
      fetch:
          metadata: ec2
          userdata: cfgdrive
      filter:
          metadata: null
          userdata: launch-index
      post-accept:
      - log-accepted
      pre-accept:
      - write-network
  ...

  The above keys would specify either datasource configuration or what
  functions to use to perform various datasource 'stages' (ie fetching,
  filtering, pre and post datasource acceptence and so on). The
  translation of said keys -> functions could be done via lookups in a
  standard datasource 'library' module with the end result of the
  configuration being a object created from the configuration that will
  perform said tasks.

  This might be an interesting way to allow for new datasource usage and
  potentially even allowing for said fetching methods to call into more
  than one userdata function (and merging the result), for example.

  ---
  datasource:
      fetch:
          metadata:
          - ec2
          - cfgdrive
          userdata: cfgdrive
  ...

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1088099/+subscriptions