← Back to team overview

launchpad-reviewers team mailing list archive

Re: [Merge] lp:~julian-edwards/maas/ephemeral_proxying_bug-1116331 into lp:maas

 

I've proposed this for merge, as a sane way of attaching comments to the merge proposal.

Here are my thoughts:
 * 'http_proxy' should be either:
   1. set to the value the set maas UI (or wherever that is set)
   2. set to 'http://{{server_host}}:8000'
   3. set to None
   Having preseeds contain the above knowledge is senseless.  Put the correct value in there.

 * I think its best to basically render multiple 'parts' into a single cloud-config.  Just have MAAS render the content found in multiple places into a multi-part file.  it can be MIME multi-part or cloud-config-archive format (yaml), they're identical from cloud-init's perspective. [1]

Ie, you have basically 2 parts here:
 1. cloud-config specifying http proxy
 2. a user-data-script.

So just have MAAS somewhere have a list of strings that its supposed to send down as user-data parts.  It will then take that list and render valid cloud-config archive with each entry represented.
 def to_cca(parts):
   data = []
   for item in parts:
     data.append({'content': item})
   return "#cloud-config-archive\n" + yaml.safe_dump(data)

I'm not really sure of the relationship between 'parts' above and 'snippets', but I think they're pretty much the same thing.  So, then, maas can choose to make 1 of 2 promises to the user about the snippets:
 a.) they'll be consumed by cloud-init as cloud-config parts
 b.) they'll be executed on the commissioning system according to the interpreter listed in '#!'

'a' is more powerful to the end user (they can insert 'boothooks' or any other cloud-init part type), but 'b' is less dependent on cloud-init.

 
--
[1] https://help.ubuntu.com/community/CloudInit

-- 
https://code.launchpad.net/~julian-edwards/maas/ephemeral_proxying_bug-1116331/+merge/147668
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~julian-edwards/maas/ephemeral_proxying_bug-1116331 into lp:maas.


Follow ups

References