Fix to return data when using lambda_info module (#64548)

* Fixed issue 64479 with lambda_info module

* Added integration tests for lambda_info module

* Moved lambda_info tests into already existing aws_lamda testsuite for easier test setup.

Co-authored-by: Jill R <4121322+jillr@users.noreply.github.com>
This commit is contained in:
Stefan Horning 2019-12-22 02:29:05 +01:00 committed by Sloane Hertel
parent a0e6bf366e
commit 6fa070e824
3 changed files with 86 additions and 1 deletions

View file

@ -377,7 +377,7 @@ def main():
versions='version_details',
)
this_module_function = getattr(this_module, invocations[module.params['query']])
this_module_function = globals()[invocations[module.params['query']]]
all_facts = fix_return(this_module_function(client, module))
results = dict(function=all_facts, changed=False)

View file

@ -2,3 +2,4 @@ cloud/aws
shippable/aws/group2
execute_lambda
lambda
lamda_info

View file

@ -186,6 +186,90 @@
- result.configuration.runtime == 'python2.7'
- result.configuration.tracing_config.mode == 'PassThrough'
- name: lambda_info | Gather all infos for given lambda function
lambda_info:
name: "{{ lambda_function_name }}"
query: all
register: lambda_infos_all
- name: lambda_info | Assert successfull retrieval of all information
assert:
that:
- lambda_infos_all is not failed
- lambda_infos_all.function[lambda_function_name].function_name == lambda_function_name
- lambda_infos_all.function[lambda_function_name].runtime == "python2.7"
- lambda_infos_all.function[lambda_function_name].versions is defined
- lambda_infos_all.function[lambda_function_name].aliases is defined
- lambda_infos_all.function[lambda_function_name].policy is defined
- lambda_infos_all.function[lambda_function_name].mappings is defined
- lambda_infos_all.function[lambda_function_name].description == ""
- lambda_infos_all.function[lambda_function_name].function_arn is defined
- lambda_infos_all.function[lambda_function_name].handler == "mini_lambda.handler"
- name: lambda_info | Gather version infos for given lambda function
lambda_info:
name: "{{ lambda_function_name }}"
query: versions
register: lambda_infos_versions
- name: lambda_info | Assert successfull retrieval of versions information
assert:
that:
- lambda_infos_versions is not failed
- lambda_infos_versions.function[lambda_function_name].versions|length > 0
- lambda_infos_versions.function[lambda_function_name].function_name is undefined
- name: lambda_info | Gather config infos for given lambda function
lambda_info:
name: "{{ lambda_function_name }}"
query: config
register: lambda_infos_config
- name: lambda_info | Assert successfull retrieval of config information
assert:
that:
- lambda_infos_config is not failed
- lambda_infos_config.function[lambda_function_name].function_name == lambda_function_name
- lambda_infos_config.function[lambda_function_name].description is defined
- lambda_infos_config.function[lambda_function_name].versions is undefined
- name: lambda_info | Gather policy infos for given lambda function
lambda_info:
name: "{{ lambda_function_name }}"
query: policy
register: lambda_infos_policy
- name: lambda_info | Assert successfull retrieval of policy information
assert:
that:
- lambda_infos_policy is not failed
- lambda_infos_policy.function[lambda_function_name].policy is defined
- lambda_infos_policy.function[lambda_function_name].versions is undefined
- name: lambda_info | Gather aliases infos for given lambda function
lambda_info:
name: "{{ lambda_function_name }}"
query: aliases
register: lambda_infos_aliases
- name: lambda_info | Assert successfull retrieval of aliases information
assert:
that:
- lambda_infos_aliases is not failed
- lambda_infos_aliases.function[lambda_function_name].aliases is defined
- name: lambda_info | Gather mappings infos for given lambda function
lambda_info:
name: "{{ lambda_function_name }}"
query: mappings
register: lambda_infos_mappings
- name: lambda_info | Assert successfull retrieval of mappings information
assert:
that:
- lambda_infos_mappings is not failed
- lambda_infos_mappings.function[lambda_function_name].mappings is defined
# ============================================================
- name: test state=present with security group but no vpc
lambda: