diff --git a/CHANGES.md b/CHANGES.md index d28c6a5..52b7645 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,9 @@ # Changelog +## 0.9.3 +- Improved bash minify for user-data +- Unused additional parameters are now printed as a warning to catch potential typos early + ## 0.9.2 - Bug fix release only diff --git a/cloudbender/__init__.py b/cloudbender/__init__.py index 4994076..9ab824e 100644 --- a/cloudbender/__init__.py +++ b/cloudbender/__init__.py @@ -2,7 +2,7 @@ import logging __author__ = "Stefan Reimer" __email__ = "stefan@zero-downtimet.net" -__version__ = "0.9.2" +__version__ = "0.9.3" # Set up logging to ``/dev/null`` like a library is supposed to. diff --git a/cloudbender/jinja.py b/cloudbender/jinja.py index 5ad136b..c4797d1 100644 --- a/cloudbender/jinja.py +++ b/cloudbender/jinja.py @@ -51,6 +51,9 @@ def option(context, attribute, default_value=u'', source='options'): def include_raw_gz(context, files=None, gz=True, remove_comments=False): jenv = context.environment output = '' + + # For shell script we can even remove whitespaces so treat them individually + # sed -e '2,$ {/^ *$/d ; /^ *#/d ; /^[ \t] *#/d ; /*^/d ; s/^[ \t]*// ; s/*[ \t]$// ; s/ $//}' for name in files: output = output + jinja2.Markup(jenv.loader.get_source(jenv, name)[0]) diff --git a/cloudbender/stack.py b/cloudbender/stack.py index aa34b31..7d8aa23 100644 --- a/cloudbender/stack.py +++ b/cloudbender/stack.py @@ -452,8 +452,17 @@ class Stack(object): if _errors: raise ParameterNotFound('Cannot find value for parameters: {0}'.format(_errors)) + # Warning of excessive parameters, might be useful to spot typos early + _warnings = [] + for p in self.parameters.keys(): + if p not in self.cfn_data['Parameters']: + _warnings.append(p) + logger.info('{} {} set parameters:\n{}'.format(self.region, self.stackname, pprint.pformat(_found, indent=2))) + if _warnings: + logger.warning('Ignored additional parameters: {}.'.format(_warnings)) + # Return dict of explicitly set parameters return _found diff --git a/cloudbender/utils.py b/cloudbender/utils.py index 4c4fb34..9594bc4 100644 --- a/cloudbender/utils.py +++ b/cloudbender/utils.py @@ -1,7 +1,6 @@ import os import copy import logging -import boto3 logger = logging.getLogger(__name__)