summaryrefslogtreecommitdiff
path: root/test/integration/targets/ec2_ami
diff options
context:
space:
mode:
authorSloane Hertel <shertel@redhat.com>2018-04-18 19:28:25 -0400
committerWill Thames <will@thames.id.au>2018-04-19 09:28:25 +1000
commite2aa1155ba5889296d2f018fdf8284c33f5f4918 (patch)
tree0ce2dd6fc5d1d248e09ae19ef82711027173075f /test/integration/targets/ec2_ami
parentcdb79b0e3a17f83ba90fe0a0c081d7135e4d1b44 (diff)
downloadansible-e2aa1155ba5889296d2f018fdf8284c33f5f4918.tar.gz
[ec2_ami] Ensure name or image_id is provided for state=present (#38972)
Add integration tests for backward compatibility and ensuring name or image_id is provided
Diffstat (limited to 'test/integration/targets/ec2_ami')
-rw-r--r--test/integration/targets/ec2_ami/tasks/main.yml25
1 files changed, 24 insertions, 1 deletions
diff --git a/test/integration/targets/ec2_ami/tasks/main.yml b/test/integration/targets/ec2_ami/tasks/main.yml
index fb6e121431..ec8b512673 100644
--- a/test/integration/targets/ec2_ami/tasks/main.yml
+++ b/test/integration/targets/ec2_ami/tasks/main.yml
@@ -87,6 +87,30 @@
# ============================================================
+ - name: test clean failure if not providing image_id or name with state=present
+ ec2_ami:
+ ec2_region: '{{ec2_region}}'
+ ec2_access_key: '{{ec2_access_key}}'
+ ec2_secret_key: '{{ec2_secret_key}}'
+ security_token: '{{security_token}}'
+ instance_id: '{{ setup_instance.instance_ids[0] }}'
+ state: present
+ description: '{{ ec2_ami_description }}'
+ tags:
+ Name: '{{ ec2_ami_name }}_ami'
+ wait: yes
+ root_device_name: /dev/xvda
+ register: result
+ ignore_errors: yes
+
+ - name: assert error message is helpful
+ assert:
+ that:
+ - result.failed
+ - "result.msg == 'one of the following is required: name, image_id'"
+
+ # ============================================================
+
- name: create an image from the instance
ec2_ami:
ec2_region: '{{ec2_region}}'
@@ -295,7 +319,6 @@
security_token: '{{security_token}}'
state: present
image_id: '{{ result.image_id }}'
- name: '{{ ec2_ami_name }}_ami'
description: '{{ ec2_ami_description }}'
tags:
Name: '{{ ec2_ami_name }}_ami'