mirror of https://github.com/ansible/ansible.git
EFS - add support for new Provisioned Throughput (#43253)
* efs.py: Add support for EFS provisioned throughput * efs_facts.py: Add support for EFS provisioned throughput * efs_facts integration tests updated with provision throughput * efs_facts: Tests refactoring - add failure and success playbook according to botocore version. * efs_facts: More tests and new option descriptions adjustment * efs_facts tests renamed to efspull/45825/head
parent
8acbf10ed2
commit
6059246093
@ -1,2 +1,3 @@
|
||||
cloud/aws
|
||||
unsupported
|
||||
efs_facts
|
@ -0,0 +1,8 @@
|
||||
- hosts: localhost
|
||||
connection: local
|
||||
|
||||
vars:
|
||||
resource_prefix: 'ansible-testing'
|
||||
|
||||
roles:
|
||||
- efs
|
@ -0,0 +1,31 @@
|
||||
- hosts: localhost
|
||||
connection: local
|
||||
vars:
|
||||
resource_prefix: 'ansible-testing'
|
||||
|
||||
tasks:
|
||||
- block:
|
||||
- name: set up aws connection info
|
||||
set_fact:
|
||||
aws_connection_info: &aws_connection_info
|
||||
aws_access_key: "{{ aws_access_key }}"
|
||||
aws_secret_key: "{{ aws_secret_key }}"
|
||||
security_token: "{{ security_token }}"
|
||||
region: "{{ aws_region }}"
|
||||
no_log: True
|
||||
|
||||
- name: create efs with provisioned_throughput options (fails gracefully)
|
||||
efs:
|
||||
state: present
|
||||
name: "{{ resource_prefix }}-efs"
|
||||
throughput_mode: 'provisioned'
|
||||
provisioned_throughput_in_mibps: 8.0
|
||||
<<: *aws_connection_info
|
||||
register: efs_provisioned_throughput_creation
|
||||
ignore_errors: yes
|
||||
|
||||
- name: check that graceful error message is returned when creation with throughput_mode and old botocore
|
||||
assert:
|
||||
that:
|
||||
- efs_provisioned_throughput_creation.failed
|
||||
- 'efs_provisioned_throughput_creation.msg == "throughput_mode parameter requires botocore >= 1.10.57"'
|
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
# We don't set -u here, due to pypa/virtualenv#150
|
||||
set -ex
|
||||
MYTMPDIR=$(mktemp -d 2>/dev/null || mktemp -d -t 'mytmpdir')
|
||||
trap 'rm -rf "${MYTMPDIR}"' EXIT
|
||||
# This is needed for the ubuntu1604py3 tests
|
||||
# Ubuntu patches virtualenv to make the default python2
|
||||
# but for the python3 tests we need virtualenv to use python3
|
||||
PYTHON=${ANSIBLE_TEST_PYTHON_INTERPRETER:-python}
|
||||
# Test graceful failure for older versions of botocore
|
||||
export ANSIBLE_ROLES_PATH=../
|
||||
virtualenv --system-site-packages --python "${PYTHON}" "${MYTMPDIR}/botocore-less-than-1.10.57"
|
||||
source "${MYTMPDIR}/botocore-less-than-1.10.57/bin/activate"
|
||||
"${PYTHON}" -m pip install 'botocore<1.10.57' boto3
|
||||
ansible-playbook -i ../../inventory -e @../../integration_config.yml -e @../../cloud-config-aws.yml -v playbooks/version_fail.yml "$@"
|
||||
# Run full test suite
|
||||
virtualenv --system-site-packages --python "${PYTHON}" "${MYTMPDIR}/botocore-recent"
|
||||
source "${MYTMPDIR}/botocore-recent/bin/activate"
|
||||
$PYTHON -m pip install 'botocore>=1.10.57' boto3
|
||||
ansible-playbook -i ../../inventory -e @../../integration_config.yml -e @../../cloud-config-aws.yml -v playbooks/full_test.yml "$@"
|
Loading…
Reference in New Issue