From 86cffdc8ba9c7353c1ce9a3e0874116bc36b3b34 Mon Sep 17 00:00:00 2001 From: Jim Rosser Date: Thu, 2 Jun 2016 09:05:39 -0500 Subject: [PATCH 1/2] Not enforcing the role to be set in config This allows anyone using the lambda-uploader for packaging to not have to set the role config option or the --role cli argument. --- lambda_uploader/config.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lambda_uploader/config.py b/lambda_uploader/config.py index d28182f..940c577 100644 --- a/lambda_uploader/config.py +++ b/lambda_uploader/config.py @@ -23,13 +23,13 @@ REQUIRED_PARAMS = {u'name': basestring, u'description': basestring, u'region': basestring, u'handler': basestring, - u'role': basestring, u'timeout': int, u'memory': int} + u'timeout': int, u'memory': int} REQUIRED_VPC_PARAMS = {u'subnets': list, u'security_groups': list} DEFAULT_PARAMS = {u'requirements': [], u'publish': False, u'alias': None, u'alias_description': None, u'ignore': [], u'extra_files': [], u'vpc': None, - u's3_bucket': None, u's3_key': None} + u's3_bucket': None, u's3_key': None, u'role': None} class Config(object): From fdfc3ddf70d6a08c0446da3fdd4fca64c5d97b39 Mon Sep 17 00:00:00 2001 From: Jim Rosser Date: Thu, 2 Jun 2016 09:46:19 -0500 Subject: [PATCH 2/2] WIP --- lambda_uploader/config.py | 14 ++++++++------ lambda_uploader/shell.py | 3 +++ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/lambda_uploader/config.py b/lambda_uploader/config.py index 940c577..2867739 100644 --- a/lambda_uploader/config.py +++ b/lambda_uploader/config.py @@ -22,23 +22,25 @@ basestring = str REQUIRED_PARAMS = {u'name': basestring, u'description': basestring, - u'region': basestring, u'handler': basestring, - u'timeout': int, u'memory': int} + u'handler': basestring} +REQUIRED_UPLOADER_PARAMS = {u'memory': int, u'timeout': int, + u'handler': basestring} REQUIRED_VPC_PARAMS = {u'subnets': list, u'security_groups': list} DEFAULT_PARAMS = {u'requirements': [], u'publish': False, u'alias': None, u'alias_description': None, u'ignore': [], u'extra_files': [], u'vpc': None, - u's3_bucket': None, u's3_key': None, u'role': None} + u's3_bucket': None, u's3_key': None, u'role': None, + u'timeout': 3, u'memory': 128, u'region': None} class Config(object): - def __init__(self, pth, config_file=None, role=None): + def __init__(self, pth, config_file=None, role=None, region=None): self._path = pth self._config = None self._load_config(config_file) - if role is not None: - self._config['role'] = role + self._config['role'] = role + self._config['region'] = region self._set_defaults() if self._config['vpc']: self._validate_vpc() diff --git a/lambda_uploader/shell.py b/lambda_uploader/shell.py index 977cb59..794be65 100644 --- a/lambda_uploader/shell.py +++ b/lambda_uploader/shell.py @@ -125,6 +125,9 @@ def main(arv=None): parser.add_argument('--virtualenv', '-e', help='use specified virtualenv instead of making one', default=None) + parser.add_argument('--region', dest='region', + help='Region to upload lambda function to', + const=True) parser.add_argument('--extra-files', '-x', action='append', help='include file or directory path in package',