You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's possible to have no S3 bucket available if none is specified in the hook options, and the config deliberately sets stacker_bucket to the empty string.
The Lambda hook needs to check for that condition and fail with an explanatory error message instead of blowing up:
[2018-10-22T20:49:14] lambda: using default bucket from stacker: None
[2018-10-22T20:49:14] Method stacker.hooks.aws_lambda.upload_lambda_functions threw an exception:
Traceback (most recent call last):
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/util.py", line 403, in handle_hooks
result = method(context=context, provider=provider, **kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/hooks/aws_lambda.py", line 501, in upload_lambda_functions
ensure_s3_bucket(s3_client, bucket_name, bucket_region)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/util.py", line 514, in ensure_s3_bucket
s3_client.head_bucket(Bucket=bucket_name)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 314, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 586, in _make_api_call
api_params, operation_model, context=request_context)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 619, in _convert_to_request_dict
api_params, operation_model, context)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 648, in _emit_api_params
params=api_params, model=operation_model, context=context)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/hooks.py", line 227, in emit
return self._emit(event_name, kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/hooks.py", line 210, in _emit
response = handler(**kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/handlers.py", line 217, in validate_bucket_name
if VALID_BUCKET.search(bucket) is None:
TypeError: expected string or buffer
Traceback (most recent call last):
File "/usr/lib64/python2.7/pdb.py", line 1314, in main
pdb._runscript(mainpyfile)
File "/usr/lib64/python2.7/pdb.py", line 1233, in _runscript
self.run(statement)
File "/usr/lib64/python2.7/bdb.py", line 400, in run
exec cmd in globals, locals
File "<string>", line 1, in <module>
File "/home/danielkza/cobli/deploy/cloudformation/venv/bin/stacker", line 3, in <module>
from stacker.logger import setup_logging
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/commands/stacker/build.py", line 58, in run
dump=options.dump)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/actions/base.py", line 188, in execute
self.pre_run(*args, **kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/actions/build.py", line 341, in pre_run
outline
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/actions/build.py", line 148, in handle_hooks
context=context
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/util.py", line 403, in handle_hooks
result = method(context=context, provider=provider, **kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/hooks/aws_lambda.py", line 501, in upload_lambda_functions
ensure_s3_bucket(s3_client, bucket_name, bucket_region)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/stacker/util.py", line 514, in ensure_s3_bucket
s3_client.head_bucket(Bucket=bucket_name)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 314, in _api_call
return self._make_api_call(operation_name, kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 586, in _make_api_call
api_params, operation_model, context=request_context)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 619, in _convert_to_request_dict
api_params, operation_model, context)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/client.py", line 648, in _emit_api_params
params=api_params, model=operation_model, context=context)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/hooks.py", line 227, in emit
return self._emit(event_name, kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/hooks.py", line 210, in _emit
response = handler(**kwargs)
File "/home/danielkza/cobli/deploy/cloudformation/venv/lib/python2.7/site-packages/botocore/handlers.py", line 217, in validate_bucket_name
if VALID_BUCKET.search(bucket) is None:
TypeError: expected string or buffer
The text was updated successfully, but these errors were encountered:
It's possible to have no S3 bucket available if none is specified in the hook options, and the config deliberately sets
stacker_bucket
to the empty string.The Lambda hook needs to check for that condition and fail with an explanatory error message instead of blowing up:
The text was updated successfully, but these errors were encountered: