From aebad8ce24f08042fa4814dd11761a9d15fae0a9 Mon Sep 17 00:00:00 2001 From: Clint Byrum Date: Wed, 10 Jul 2013 10:44:36 -0700 Subject: Add FileInclude special type. We need to be able to combine pieces without uploading bits to an accessible URL. Change-Id: If0cec8ce7c77fed786d54dd0af2eb7823c088920 --- merge.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/merge.py b/merge.py index afb6b222..64cb00ab 100644 --- a/merge.py +++ b/merge.py @@ -87,6 +87,13 @@ for template_path in templates: ikey = '%sImage' % (role) end_template['Resources'][role]['Properties']['ImageId'] = {'Ref': ikey} end_template['Parameters'][ikey] = {'Type': 'String'} + elif rbody['Type'] == 'FileInclude': + with open(rbody['Path']) as rfile: + include_content = yaml.safe_load(rfile.read()) + subkeys = rbody.get('SubKey','').split('.') + while len(subkeys) and subkeys[0]: + include_content = include_content[subkeys.pop(0)] + end_template['Resources'][r] = include_content else: if r in end_template.get('Resources', {}): if rbody != end_template['Resources'][r]: -- cgit 1.2.3-korg