mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-06-27 10:40:22 -07:00
vultr migrated to dedicated collection ngine_io.vultr (#172)
* vultr migrated to dedicated collection ngine_io.vultr * remove leftover dead symlink
This commit is contained in:
parent
b0b376fce2
commit
6ccf3682ac
155 changed files with 0 additions and 10690 deletions
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,27 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test get vultr account infos in check mode
|
||||
vultr_account_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr account infos in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_account_info.balance is defined
|
||||
- result.vultr_account_info.last_payment_amount is defined
|
||||
- result.vultr_account_info.last_payment_date is defined
|
||||
- result.vultr_account_info.last_payment_amount is defined
|
||||
|
||||
- name: test get vultr account fact
|
||||
vultr_account_info:
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr account infos
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_account_info.balance is defined
|
||||
- result.vultr_account_info.last_payment_amount is defined
|
||||
- result.vultr_account_info.last_payment_date is defined
|
||||
- result.vultr_account_info.last_payment_amount is defined
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_block_storage_name: "{{ vultr_resource_prefix }}-volume"
|
||||
vultr_block_storage_size: 10
|
||||
vultr_block_storage_region: New Jersey
|
|
@ -1,111 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_block_storage:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "state is present but all of the following are missing: size, region"'
|
||||
|
||||
- name: test create block storage volume in check mode
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
size: "{{ vultr_block_storage_size }}"
|
||||
region: "{{ vultr_block_storage_region }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create block storage volume
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
size: "{{ vultr_block_storage_size }}"
|
||||
region: "{{ vultr_block_storage_region }}"
|
||||
register: result
|
||||
|
||||
- name: verify test create block storage volume
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_block_storage.name == "{{ vultr_block_storage_name }}"
|
||||
- result.vultr_block_storage.region == "{{ vultr_block_storage_region }}"
|
||||
- result.vultr_block_storage.size == 10
|
||||
|
||||
- name: test create block storage volume idempotence
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
size: "{{ vultr_block_storage_size }}"
|
||||
region: "{{ vultr_block_storage_region }}"
|
||||
register: result
|
||||
|
||||
- name: verify test block storage volume idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_block_storage.name == "{{ vultr_block_storage_name }}"
|
||||
- result.vultr_block_storage.region == "{{ vultr_block_storage_region }}"
|
||||
- result.vultr_block_storage.size == 10
|
||||
|
||||
- name: test destroy block storage volume in check mode
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
|
||||
- name: verify test destroy block storage volume in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_block_storage.name == "{{ vultr_block_storage_name }}"
|
||||
|
||||
- name: test destroy block storage volume
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
|
||||
- name: verify test destroy an existing block storage volume
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_block_storage.name == "{{ vultr_block_storage_name }}"
|
||||
|
||||
- name: test destroy an existing block storage volume idempotence
|
||||
vultr_block_storage:
|
||||
name: "{{ vultr_block_storage_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
|
||||
- name: verify test destroy an existing block storage volume idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_block_storage_name: "{{ vultr_resource_prefix }}-volume"
|
||||
vultr_block_storage_size: 10
|
||||
vultr_block_storage_region: New Jersey
|
|
@ -1,35 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test gather vultr block storage volume info - empty resource
|
||||
vultr_block_storage_info:
|
||||
|
||||
- name: Create the block storage volume
|
||||
vultr_block_storage:
|
||||
name: '{{ vultr_block_storage_name }}'
|
||||
size: '{{ vultr_block_storage_size }}'
|
||||
region: '{{ vultr_block_storage_region }}'
|
||||
|
||||
- name: test gather vultr block storage volume info in check mode
|
||||
vultr_block_storage_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr block storage volume info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_block_storage_info|selectattr('name','equalto','{{ vultr_block_storage_name }}') | list | count == 1
|
||||
|
||||
- name: test gather vultr block storage volume info
|
||||
vultr_block_storage_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr block storage volume info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_block_storage_info|selectattr('name','equalto','{{ vultr_block_storage_name }}') | list | count == 1
|
||||
|
||||
- name: Delete the block storage volume
|
||||
vultr_block_storage:
|
||||
name: '{{ vultr_block_storage_name }}'
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_dns_domain_name: "{{ vultr_resource_prefix }}-example-ansible.com"
|
|
@ -1,99 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_dns_domain:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "state is present but all of the following are missing: server_ip"'
|
||||
|
||||
- name: test create dns domain in check mode
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
server_ip: 10.10.10.10
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create dns domain in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create dns domain
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
server_ip: 10.10.10.10
|
||||
register: result
|
||||
- name: verify test create dns domain
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_domain.name == '{{ vultr_dns_domain_name }}'
|
||||
|
||||
- name: test create dns domain idempotence
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
server_ip: 10.10.10.10
|
||||
register: result
|
||||
- name: verify test create dns domain idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_dns_domain.name == '{{ vultr_dns_domain_name }}'
|
||||
|
||||
- name: test absent dns domain in check mode
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test absent dns domain in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_domain.name == '{{ vultr_dns_domain_name }}'
|
||||
|
||||
- name: test absent dns domain
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent dns domain
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_domain.name == '{{ vultr_dns_domain_name }}'
|
||||
|
||||
- name: test absent dns domain idempotence
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent dns domain idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,4 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
dns_domain_name: "{{ vultr_resource_prefix }}-example-ansible.com"
|
||||
dns_domain_server_ip: 104.24.16.59
|
|
@ -1,32 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: Create the record
|
||||
vultr_dns_domain:
|
||||
name: '{{ dns_domain_name }}'
|
||||
server_ip: '{{ dns_domain_server_ip }}'
|
||||
|
||||
- name: test gather vultr dns domain info in check mode
|
||||
vultr_dns_domain_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr dns domain info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_dns_domain_info|selectattr('domain','equalto','{{ dns_domain_name }}') | list | count == 1
|
||||
|
||||
- name: test gather vultr dns domain info
|
||||
vultr_dns_domain_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr dns domain info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_dns_domain_info|selectattr('domain','equalto','{{ dns_domain_name }}') | list | count == 1
|
||||
|
||||
- name: Delete the record
|
||||
vultr_dns_domain:
|
||||
name: '{{ dns_domain_name }}'
|
||||
server_ip: '{{ dns_domain_server_ip }}'
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,39 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_dns_domain_name: "{{ vultr_resource_prefix }}-example-ansible.com"
|
||||
vultr_dns_record_items:
|
||||
# Single A record
|
||||
- name: test-www
|
||||
data: 10.10.10.10
|
||||
ttl: 400
|
||||
update_data: 10.10.10.11
|
||||
update_ttl: 200
|
||||
|
||||
# Multiple A records
|
||||
- name: test-www-multiple
|
||||
data: 10.10.11.10
|
||||
update_data: 10.10.11.11
|
||||
multiple: true
|
||||
update_ttl: 600
|
||||
|
||||
# CNAME
|
||||
- name: test-cname
|
||||
data: www.ansible.com
|
||||
update_data: www.ansible.ch
|
||||
record_type: CNAME
|
||||
|
||||
# Single Multiple MX record
|
||||
- data: mx1.example-ansible.com
|
||||
priority: 10
|
||||
update_priority: 20
|
||||
record_type: MX
|
||||
|
||||
# Multiple MX records
|
||||
- data: mx2.example-ansible.com
|
||||
priority: 10
|
||||
update_data: mx1.example-ansible.com
|
||||
update_priority: 20
|
||||
record_type: MX
|
||||
multiple: true
|
|
@ -1,67 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test setup dns record
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test setup dns record
|
||||
assert:
|
||||
that:
|
||||
- result is successful
|
||||
|
||||
- name: test create a dns record in check mode
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.data }}"
|
||||
ttl: "{{ item.ttl | default(omit) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
priority: "{{ item.priority | default(omit) }}"
|
||||
check_mode: yes
|
||||
register: result
|
||||
- name: verify test create a dns record in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create a dns record
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.data }}"
|
||||
ttl: "{{ item.ttl | default(omit) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
priority: "{{ item.priority | default(omit) }}"
|
||||
register: result
|
||||
- name: verify test create a dns record
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.data }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.priority | default(0) }}
|
||||
|
||||
- name: test create a dns record idempotence
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.data }}"
|
||||
ttl: "{{ item.ttl | default(omit) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
priority: "{{ item.priority | default(omit) }}"
|
||||
register: result
|
||||
- name: verify test create a dns record idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_dns_record.data == "{{ item.data }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.priority | default(0) }}
|
|
@ -1,17 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup dns domain
|
||||
vultr_dns_domain:
|
||||
name: "{{ vultr_dns_domain_name }}"
|
||||
server_ip: 10.10.10.10
|
||||
register: result
|
||||
- name: verify setup dns domain
|
||||
assert:
|
||||
that:
|
||||
- result is successful
|
||||
|
||||
- include_tasks: test_fail_multiple.yml
|
||||
|
||||
- include_tasks: record.yml
|
||||
with_items: "{{ vultr_dns_record_items }}"
|
|
@ -1,6 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- include_tasks: create_record.yml
|
||||
- include_tasks: update_record.yml
|
||||
- include_tasks: remove_record.yml
|
|
@ -1,114 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test remove a dns record in check mode
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.update_data | default(item.data) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
state: absent
|
||||
check_mode: yes
|
||||
register: result
|
||||
- name: verify test remove a dns record in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.update_data | default(item.data) }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.update_ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.update_priority | default(item.priority | default(0)) }}
|
||||
|
||||
- name: test remove second dns record in check mode
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.data | default(item.data) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
state: absent
|
||||
check_mode: yes
|
||||
register: result
|
||||
when: item.multiple is defined and item.multiple == true
|
||||
- name: verify test remove a dns record in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.data | default(item.data) }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.priority | default(0) }}
|
||||
when: item.multiple is defined and item.multiple == true
|
||||
|
||||
- name: test remove a dns record
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.update_data | default(item.data) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove a dns record
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.update_data | default(item.data) }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.update_ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.update_priority | default(item.priority | default(0)) }}
|
||||
|
||||
- name: test remove second dns record
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.data }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
state: absent
|
||||
register: result
|
||||
when: item.multiple is defined and item.multiple == true
|
||||
- name: verify test remove a dns record
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.data }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.priority | default(0) }}
|
||||
when: item.multiple is defined and item.multiple == true
|
||||
|
||||
- name: test remove a dns record idempotence
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.update_data | default(item.data) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove a dns record idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: test remove second dns record idempotence
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.data }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
state: absent
|
||||
register: result
|
||||
when: item.multiple is defined and item.multiple == true
|
||||
- name: verify test remove a dns record idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
when: item.multiple is defined and item.multiple == true
|
|
@ -1,78 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup first dns record
|
||||
vultr_dns_record:
|
||||
name: test-multiple
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: 1.2.3.4
|
||||
multiple: yes
|
||||
register: result
|
||||
- name: verify setup a dns record
|
||||
assert:
|
||||
that:
|
||||
- result is successful
|
||||
|
||||
- name: setup second dns record
|
||||
vultr_dns_record:
|
||||
name: test-multiple
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: 1.2.3.5
|
||||
multiple: yes
|
||||
register: result
|
||||
- name: verify setup second dns record
|
||||
assert:
|
||||
that:
|
||||
- result is successful
|
||||
|
||||
- name: test-multiple fail multiple identical records found
|
||||
vultr_dns_record:
|
||||
name: test-multiple
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail multiple identical records found
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
|
||||
- name: test-multiple fail absent multiple identical records but not data
|
||||
vultr_dns_record:
|
||||
name: test-multiple
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
state: absent
|
||||
multiple: yes
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test-multiple success absent multiple identical records found
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- "result.msg == 'multiple is True but all of the following are missing: data'"
|
||||
|
||||
- name: test-multiple success absent multiple identical records second found
|
||||
vultr_dns_record:
|
||||
name: test-multiple
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: 1.2.3.5
|
||||
state: absent
|
||||
multiple: yes
|
||||
register: result
|
||||
- name: verify test-multiple success absent multiple identical records second found
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test-multiple success absent multiple identical records first found
|
||||
vultr_dns_record:
|
||||
name: test-multiple
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: 1.2.3.4
|
||||
state: absent
|
||||
multiple: yes
|
||||
register: result
|
||||
- name: verify test-multiple success absent multiple identical records firstfound
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
|
@ -1,70 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test update or add another dns record in check mode
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.update_data | default(item.data) }}"
|
||||
ttl: "{{ item.update_ttl | default(omit) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
priority: "{{ item.update_priority | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
check_mode: yes
|
||||
register: result
|
||||
- name: verify test updatein check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.data }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.ttl | default(300) }}
|
||||
- result.vultr_dns_record.priority == {{ item.priority | default(0) }}
|
||||
when: item.multiple is undefined or item.multiple == false
|
||||
- name: verify test add another dns record in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- not result.vultr_dns_record
|
||||
when: item.multiple is defined and item.multiple == true
|
||||
|
||||
- name: test update or add another dns record
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.update_data | default(item.data) }}"
|
||||
ttl: "{{ item.update_ttl | default(omit) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
priority: "{{ item.update_priority | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
register: result
|
||||
- name: verify test update a dns record
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_dns_record.data == "{{ item.update_data | default(item.data) }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.update_ttl | default(300) }}
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.priority == {{ item.update_priority | default(0) }}
|
||||
|
||||
- name: test update or add another dns record idempotence
|
||||
vultr_dns_record:
|
||||
name: "{{ item.name | default(omit) }}"
|
||||
domain: "{{ vultr_dns_domain_name }}"
|
||||
data: "{{ item.update_data | default(item.data) }}"
|
||||
ttl: "{{ item.update_ttl | default(omit) }}"
|
||||
record_type: "{{ item.record_type | default(omit) }}"
|
||||
priority: "{{ item.update_priority | default(omit) }}"
|
||||
multiple: "{{ item.multiple | default(omit) }}"
|
||||
register: result
|
||||
- name: verify test update a dns record idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_dns_record.data == "{{ item.update_data | default(item.data) }}"
|
||||
- result.vultr_dns_record.name == "{{ item.name | default("") }}"
|
||||
- result.vultr_dns_record.ttl == {{ item.update_ttl | default(300) }}
|
||||
- result.vultr_dns_record.record_type == "{{ item.record_type | default('A') }}"
|
||||
- result.vultr_dns_record.priority == {{ item.update_priority | default(0) }}
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_firewall_group_name: "{{ vultr_resource_prefix }}_firewall-group"
|
|
@ -1,86 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_firewall_group:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test create firewall group in check mode
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create firewall group in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create firewall group
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
register: result
|
||||
- name: verify test create firewall group
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_group.name == '{{ vultr_firewall_group_name }}'
|
||||
|
||||
- name: test create firewall group idempotence
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
|
||||
register: result
|
||||
- name: verify test create firewall group idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_firewall_group.name == '{{ vultr_firewall_group_name }}'
|
||||
|
||||
- name: test absent firewall group in check mode
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test absent firewall group in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_group.name == '{{ vultr_firewall_group_name }}'
|
||||
|
||||
- name: test absent firewall group
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent firewall group
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_group.name == '{{ vultr_firewall_group_name }}'
|
||||
|
||||
- name: test absent firewall group idempotence
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent firewall group idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,3 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
firewall_group_name: "{{ vultr_resource_prefix }}_firewall-group"
|
|
@ -1,33 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test gather vultr firewall group info - empty resources
|
||||
vultr_firewall_group_info:
|
||||
|
||||
- name: Create the firewall group
|
||||
vultr_firewall_group:
|
||||
name: '{{ firewall_group_name }}'
|
||||
|
||||
- name: test gather vultr firewall group info in check mode
|
||||
vultr_firewall_group_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr firewall group info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_firewall_group_info|selectattr('description','equalto','{{ firewall_group_name }}') | list | count == 1
|
||||
|
||||
- name: test gather vultr firewall group info
|
||||
vultr_firewall_group_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr firewall group info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_firewall_group_info|selectattr('description','equalto','{{ firewall_group_name }}') | list | count == 1
|
||||
|
||||
- name: Delete the firewall group
|
||||
vultr_firewall_group:
|
||||
name: '{{ firewall_group_name }}'
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_firewall_group_name: "{{ vultr_resource_prefix }}_firewall-group"
|
|
@ -1,475 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup firewall group
|
||||
vultr_firewall_group:
|
||||
name: "{{ vultr_firewall_group_name }}"
|
||||
register: result
|
||||
- name: verify setup firewall group
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: setup firewall rule tcp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup firewal rule
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: setup firewall rule udp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup firewal rule udp
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: setup firewall rule udp v6
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup firewal rule udp v6
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: setup firewall rule port range
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
state: absent
|
||||
register: result
|
||||
tags: tmp
|
||||
- name: verify setup firewal rule port range
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: setup firewall rule icmp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup firewal rule
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing group
|
||||
vultr_firewall_rule:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing group
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: group"'
|
||||
|
||||
- name: test create firewall rule tcp in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test create firewall rule tcp in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create firewall rule tcp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
register: result
|
||||
- name: verify test create firewall rule tcp
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "0.0.0.0/0"
|
||||
|
||||
- name: test create firewall rule tcp idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
register: result
|
||||
- name: verify test create firewall rule tcp idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "0.0.0.0/0"
|
||||
|
||||
- name: test create firewall rule udp in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test create firewall rule udp in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create firewall rule udp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
register: result
|
||||
- name: verify test create firewall rule udp
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "udp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "0.0.0.0/0"
|
||||
|
||||
- name: test create firewall rule udp idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
register: result
|
||||
- name: verify test create firewall rule udp idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "udp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "0.0.0.0/0"
|
||||
|
||||
- name: test create firewall rule udp v6 in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test create firewall rule udp v6 in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create firewall rule udp v6
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
register: result
|
||||
- name: verify test create firewall rule udp v6
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "udp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "::/0"
|
||||
|
||||
- name: test create firewall rule udp v6 idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
register: result
|
||||
- name: verify test create firewall rule udp v6 idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "udp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "::/0"
|
||||
|
||||
- name: test create firewall rule port range in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test create firewall rule port range in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create firewall rule port range
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
register: result
|
||||
- name: verify test create firewall rule port range
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 8000
|
||||
- result.vultr_firewall_rule.end_port == 8080
|
||||
- result.vultr_firewall_rule.cidr == "10.100.12.0/24"
|
||||
|
||||
- name: test create firewall rule port range idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
register: result
|
||||
- name: test create firewall rule port range idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 8000
|
||||
- result.vultr_firewall_rule.end_port == 8080
|
||||
- result.vultr_firewall_rule.cidr == "10.100.12.0/24"
|
||||
|
||||
- name: test create firewall rule icmp in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: test create firewall rule icmp in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create firewall rule icmp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
register: result
|
||||
- name: test create firewall rule icmp
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "icmp"
|
||||
|
||||
- name: test create firewall rule icmp idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
register: result
|
||||
- name: test create firewall rule icmp idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "icmp"
|
||||
|
||||
- name: test remove firewall rule icmp in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: test remove firewall rule icmp in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "icmp"
|
||||
|
||||
- name: test remove firewall rule icmp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
state: absent
|
||||
register: result
|
||||
- name: test remove firewall rule icmp
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "icmp"
|
||||
|
||||
- name: test remove firewall rule icmp idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
protocol: icmp
|
||||
state: absent
|
||||
register: result
|
||||
- name: test remove firewall rule icmp idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: test remove firewall rule tcp in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test remove firewall rule tcp in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "0.0.0.0/0"
|
||||
|
||||
- name: test remove firewall rule tcp
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove firewall rule tcp
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "0.0.0.0/0"
|
||||
|
||||
- name: test remove firewall rule tcp idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove firewall rule tcp idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: test remove firewall rule udp v6 in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test remove firewall rule udp v6 in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "udp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "::/0"
|
||||
|
||||
- name: test remove firewall rule udp v6
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove firewall rule udp v6
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "udp"
|
||||
- result.vultr_firewall_rule.start_port == 53
|
||||
- result.vultr_firewall_rule.cidr == "::/0"
|
||||
|
||||
- name: test remove firewall rule udp v6 idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
port: 53
|
||||
protocol: udp
|
||||
ip_version: v6
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove firewall rule udp v6 idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: test remove firewall rule port range in check mode
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: true
|
||||
- name: verify test remove firewall rule port range in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 8000
|
||||
- result.vultr_firewall_rule.end_port == 8080
|
||||
- result.vultr_firewall_rule.cidr == "10.100.12.0/24"
|
||||
|
||||
- name: test remove firewall rule port range
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove firewall rule port range
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_firewall_rule.action == "accept"
|
||||
- result.vultr_firewall_rule.protocol == "tcp"
|
||||
- result.vultr_firewall_rule.start_port == 8000
|
||||
- result.vultr_firewall_rule.end_port == 8080
|
||||
- result.vultr_firewall_rule.cidr == "10.100.12.0/24"
|
||||
|
||||
- name: test remove firewall rule port range idempotence
|
||||
vultr_firewall_rule:
|
||||
group: "{{ vultr_firewall_group_name }}"
|
||||
start_port: 8000
|
||||
end_port: 8080
|
||||
protocol: tcp
|
||||
cidr: 10.100.12.0/24
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test remove firewall rule port range idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_network_name: "{{ vultr_resource_prefix }}_network"
|
||||
vultr_network_cidr: 192.168.42.0/24
|
||||
vultr_network_region: New Jersey
|
|
@ -1,113 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_network:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "state is present but all of the following are missing: cidr, region"'
|
||||
|
||||
- name: test create network in check mode
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
cidr: "{{ vultr_network_cidr }}"
|
||||
region: "{{ vultr_network_region }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create network
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
cidr: "{{ vultr_network_cidr }}"
|
||||
region: "{{ vultr_network_region }}"
|
||||
register: result
|
||||
|
||||
- name: verify test create network
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_network.name == "{{ vultr_network_name }}"
|
||||
- result.vultr_network.region == "{{ vultr_network_region }}"
|
||||
- result.vultr_network.v4_subnet == "{{ vultr_network_cidr.split('/')[0] }}"
|
||||
- result.vultr_network.v4_subnet_mask == 24
|
||||
|
||||
- name: test create network idempotence
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
cidr: "{{ vultr_network_cidr }}"
|
||||
region: "{{ vultr_network_region }}"
|
||||
register: result
|
||||
|
||||
- name: verify test network idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_network.name == "{{ vultr_network_name }}"
|
||||
- result.vultr_network.region == "{{ vultr_network_region }}"
|
||||
- result.vultr_network.v4_subnet == "{{ vultr_network_cidr.split('/')[0] }}"
|
||||
- result.vultr_network.v4_subnet_mask == 24
|
||||
|
||||
- name: test destroy network in check mode
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
|
||||
- name: verify test destroy network in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_network.name == "{{ vultr_network_name }}"
|
||||
|
||||
- name: test destroy network volume
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
|
||||
- name: verify test destroy an existing network
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_network.name == "{{ vultr_network_name }}"
|
||||
|
||||
- name: test destroy an existing network idempotence
|
||||
vultr_network:
|
||||
name: "{{ vultr_network_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
|
||||
- name: verify test destroy an existing network idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr_test_prefix"
|
||||
vultr_network_name: "{{ vultr_resource_prefix }}_network"
|
||||
vultr_network_cidr: 192.168.42.0/24
|
||||
vultr_network_region: New Jersey
|
|
@ -1,35 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test gather vultr network info - empty resources
|
||||
vultr_network_info:
|
||||
|
||||
- name: Create the network
|
||||
vultr_network:
|
||||
name: '{{ vultr_network_name }}'
|
||||
cidr: '{{ vultr_network_cidr }}'
|
||||
region: '{{ vultr_network_region }}'
|
||||
|
||||
- name: test gather vultr network info in check mode
|
||||
vultr_network_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr network info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_network_info|selectattr('name','equalto','{{ vultr_network_name }}') | list | count == 1
|
||||
|
||||
- name: test gather vultr network info
|
||||
vultr_network_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr network info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_network_info|selectattr('name','equalto','{{ vultr_network_name }}') | list | count == 1
|
||||
|
||||
- name: Delete the script
|
||||
vultr_network:
|
||||
name: '{{ vultr_network_name }}'
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,22 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# Copyright (c) 2019, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test get vultr os infos in check mode
|
||||
vultr_os_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr os infos in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_os_info|selectattr('name','equalto', 'CentOS 7 x64') | list | count == 1
|
||||
|
||||
- name: test get vultr os fact
|
||||
vultr_os_info:
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr os infos
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_os_info|selectattr('name','equalto', 'CentOS 7 x64') | list | count == 1
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,21 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test gather vultr plan info in check mode
|
||||
vultr_plan_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr plan info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_plan_info|selectattr('name','equalto','16384 MB RAM,2x110 GB SSD,20.00 TB BW') | list | count == 1
|
||||
|
||||
- name: test gather vultr plan info
|
||||
vultr_plan_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr plan info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_plan_info|selectattr('name','equalto','16384 MB RAM,2x110 GB SSD,20.00 TB BW') | list | count == 1
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,21 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test gather vultr region info in check mode
|
||||
vultr_region_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr region info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_region_info|selectattr('name','equalto','Atlanta') | list | count == 1
|
||||
|
||||
- name: test gather vultr region info
|
||||
vultr_region_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr region info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_region_info|selectattr('name','equalto','Atlanta') | list | count == 1
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,13 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_server_name: "{{ vultr_resource_prefix }}_vm"
|
||||
vultr_server_ssh_keys:
|
||||
- name: key1
|
||||
key: "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAyWYItY+3w5b8PdGRoz0oY5mufqydW96naE+VM3JSvJFAUS08rAjQQpQ03ymoALeHQy6JVZbcgecxn6p0pAOINQdqufn4udPtOPCtMjNiPGpkSM9ah/6X5+kvyWMNrvlf+Ld4OOoszP5sAkgQzIbrFQAm41XknBUha0zkewZwfrVhain4pnDjV7wCcChId/Q/Gbi4xMtXkisznWcAJcueBs3EEZDKhJ5q0VeWSJEhYJDLFN1sOxF0AIUnMrOhfKQ/LjgREXPB6uCl899INUTXRNNjRpeMXyJ2wMMmOAbua2qEd1r13Bu1n+6A823Hzb33fyMXuqWnJwBJ4DCvMlGuEsfuOK+xk7DaBfLHbcM6fsPk0/4psTE6YLgC41remr6+u5ZWsY/faMtSnNPie8Z8Ov0DIYGdhbJjUXk1HomxRV9+ZfZ2Ob8iCwlaAQAyEUM6fs3Kxt8pBD8dx1HOkhsfBWPvuDr5y+kqE7H8/MuPDTc0QgH2pjUMpmw/XBwNDHshVEjrZvtICOjOLUJxcowLO1ivNYwPwowQxfisMy56LfYdjsOslBiqsrkAqvNGm1zu8wKHeqVN9w5l3yUELpvubfm9NKIvYcl6yWF36T0c5vE+g0DU/Jy4XpTj0hZG9QV2mRQcLJnd2pxQtJT7cPFtrn/+tgRxzjEtbDXummDV4sE= mail@renemoser.net"
|
||||
- name: key2
|
||||
key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCoQ9S7V+CufAgwoehnf2TqsJ9LTsu8pUA3FgpS2mdVwcMcTs++8P5sQcXHLtDmNLpWN4k7NQgxaY1oXy5e25x/4VhXaJXWEt3luSw+Phv/PB2+aGLvqCUirsLTAD2r7ieMhd/pcVf/HlhNUQgnO1mupdbDyqZoGD/uCcJiYav8i/V7nJWJouHA8yq31XS2yqXp9m3VC7UZZHzUsVJA9Us5YqF0hKYeaGruIHR2bwoDF9ZFMss5t6/pzxMljU/ccYwvvRDdI7WX4o4+zLuZ6RWvsU6LGbbb0pQdB72tlV41fSefwFsk4JRdKbyV3Xjf25pV4IXOTcqhy+4JTB/jXxrF torwalds@github.com"
|
||||
|
||||
vultr_server_plan_1: 1024 MB RAM,25 GB SSD,1.00 TB BW
|
||||
vultr_server_plan_2: 2048 MB RAM,55 GB SSD,2.00 TB BW
|
|
@ -1,551 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
# Servers can only be destroyed 5 min after creation
|
||||
- name: wait for 5 min
|
||||
wait_for:
|
||||
when: result is changed
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_server:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: os, plan, region"'
|
||||
|
||||
- name: test fail if plan does not exist
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: does_not_exist
|
||||
region: Amsterdam
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if plan does not exist
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "Could not find plans with ID or name: does_not_exist"'
|
||||
|
||||
- name: setup create ssh keys
|
||||
vultr_ssh_key:
|
||||
name: "{{ item.name }}"
|
||||
ssh_key: "{{ item.key }}"
|
||||
loop: "{{ vultr_server_ssh_keys }}"
|
||||
|
||||
- name: test create server in check mode
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_1 }}"
|
||||
ssh_keys:
|
||||
- key1
|
||||
- key2
|
||||
region: Amsterdam
|
||||
state: started
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create server
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_1 }}"
|
||||
ssh_keys:
|
||||
- key1
|
||||
- key2
|
||||
region: Amsterdam
|
||||
state: started
|
||||
register: result
|
||||
- name: verify test create server
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_1
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.power_status == 'running'
|
||||
|
||||
- name: test create server idempotence
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_1 }}"
|
||||
ssh_keys:
|
||||
- key1
|
||||
- key2
|
||||
region: Amsterdam
|
||||
state: started
|
||||
register: result
|
||||
- name: verify test create server idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_1
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test stop an existing server in check mode
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: stopped
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test stop server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test stop an existing server
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: stopped
|
||||
register: result
|
||||
- name: verify test stop an existing server
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'stopped'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test stop an existing server idempotence
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: stopped
|
||||
register: result
|
||||
- name: verify test stop an existing server idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'stopped'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test start an existing server in check mode
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: started
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test start an existing server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'stopped'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test start an existing server
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: started
|
||||
register: result
|
||||
- name: verify test start an existing server
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test start an existing server idempotence
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: started
|
||||
register: result
|
||||
- name: verify test start an existing server idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test update plan for server in check mode without force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
region: Amsterdam
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update plan for server in check mode without force
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_1
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test update plan for server without force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
region: Amsterdam
|
||||
register: result
|
||||
- name: verify test update plan for server without force
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_1
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: setup firewall group
|
||||
vultr_firewall_group:
|
||||
name: test_firewall_group
|
||||
register: result
|
||||
- name: verify test create firewall group
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail with unknown firewall group
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
region: Amsterdam
|
||||
firewall_group: does not exist
|
||||
tag: test_tag
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
check_mode: yes
|
||||
- name: verify test fail with unknown firewall group
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- result.msg.startswith('Could not find')
|
||||
|
||||
- name: test update tag, firewall group for server in check mode without force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
region: Amsterdam
|
||||
firewall_group: test_firewall_group
|
||||
tag: test_tag
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update tag, firewall group for server in check mode without force
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_1
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.tag == ''
|
||||
- result.vultr_server.firewall_group != 'test_firewall_group'
|
||||
|
||||
- name: test update tag, firewall group for server without force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
region: Amsterdam
|
||||
firewall_group: test_firewall_group
|
||||
tag: test_tag
|
||||
register: result
|
||||
- name: verify test update tag, firewall group for server without force
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.tag == 'test_tag'
|
||||
- result.vultr_server.firewall_group == 'test_firewall_group'
|
||||
|
||||
- name: test update tag, firewall group for server without force idempotence
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
region: Amsterdam
|
||||
firewall_group: test_firewall_group
|
||||
tag: test_tag
|
||||
register: result
|
||||
- name: verify test update tag, firewall group for server without force idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.tag == 'test_tag'
|
||||
- result.vultr_server.firewall_group == 'test_firewall_group'
|
||||
|
||||
- name: test update server in check mode with force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
auto_backup_enabled: yes
|
||||
private_network_enabled: yes
|
||||
region: Amsterdam
|
||||
force: yes
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update server in check mode with force
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_1
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.auto_backup_enabled == false
|
||||
- result.vultr_server.internal_ip == ''
|
||||
|
||||
- name: test update server with force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
auto_backup_enabled: yes
|
||||
private_network_enabled: yes
|
||||
region: Amsterdam
|
||||
force: yes
|
||||
register: result
|
||||
- name: verify test update server with force
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_2
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.auto_backup_enabled == true
|
||||
- result.vultr_server.internal_ip != ''
|
||||
|
||||
- name: test update server idempotence with force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
auto_backup_enabled: yes
|
||||
private_network_enabled: yes
|
||||
region: Amsterdam
|
||||
force: yes
|
||||
register: result
|
||||
- name: verify test update server idempotence with force
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_2
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.auto_backup_enabled == true
|
||||
- result.vultr_server.internal_ip != ''
|
||||
|
||||
- name: test update server with IDs idempotence with force
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: "127"
|
||||
plan: "202"
|
||||
auto_backup_enabled: yes
|
||||
private_network_enabled: yes
|
||||
region: "7"
|
||||
force: yes
|
||||
register: result
|
||||
- name: verify test update server idempotence with force
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_2
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.auto_backup_enabled == true
|
||||
- result.vultr_server.internal_ip != ''
|
||||
|
||||
- name: test update server to stopped in check mode
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
ipv6_enabled: yes
|
||||
region: Amsterdam
|
||||
state: stopped
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update server to stopped in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_2
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.v6_main_ip == ''
|
||||
|
||||
- name: test update server to stopped
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
ipv6_enabled: yes
|
||||
region: Amsterdam
|
||||
state: stopped
|
||||
register: result
|
||||
- name: verify test update server to stopped
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'stopped'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_2
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.v6_main_ip != ''
|
||||
|
||||
- name: test update server to stopped idempotence
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
os: CentOS 6 x64
|
||||
plan: "{{ vultr_server_plan_2 }}"
|
||||
ipv6_enabled: yes
|
||||
region: Amsterdam
|
||||
state: stopped
|
||||
register: result
|
||||
- name: verify test update server to stopped idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_server.power_status == 'stopped'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.plan == vultr_server_plan_2
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
- result.vultr_server.v6_main_ip != ''
|
||||
|
||||
- name: test restart an existing server in check mode
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: restarted
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test restart an existing server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'stopped'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test restart an existing server
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: restarted
|
||||
register: result
|
||||
- name: verify test restart an existing server
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test absent server in check mode
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test absent server in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
# Servers can only be destroyed 5 min after creation
|
||||
- name: wait for 5 min
|
||||
wait_for:
|
||||
|
||||
- name: test absent server
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent server
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_server.power_status == 'running'
|
||||
- result.vultr_server.name == vultr_server_name
|
||||
- result.vultr_server.os == 'CentOS 6 x64'
|
||||
- result.vultr_server.region == 'Amsterdam'
|
||||
|
||||
- name: test absent server idempotence
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent server idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
|
||||
- name: cleanup ssh keys
|
||||
vultr_ssh_key:
|
||||
name: "{{ item.name }}"
|
||||
ssh_key: "{{ item.key }}"
|
||||
state: absent
|
||||
loop: "{{ vultr_server_ssh_keys }}"
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,6 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_server_name: "{{ vultr_resource_prefix }}_vm"
|
||||
vultr_server_os: CentOS 7 x64
|
||||
vultr_server_plan: 1024 MB RAM,25 GB SSD,1.00 TB BW
|
||||
vultr_server_region: Amsterdam
|
|
@ -1,66 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup ensure VM is absent
|
||||
vultr_server:
|
||||
name: "{{ vultr_server_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
|
||||
# Servers can only be destroyed 5 min after creation
|
||||
- name: wait for 5 min until VM is absent
|
||||
wait_for:
|
||||
when: result is changed
|
||||
|
||||
- name: test gather vultr server info - empty resources
|
||||
vultr_server_info:
|
||||
register: result
|
||||
- name: verify test gather vultr server info - empty resources
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_server_info | selectattr('name','equalto',vultr_server_name) | list | count == 0
|
||||
|
||||
- name: setup firewall group
|
||||
vultr_firewall_group:
|
||||
name: test_vultr_server_info
|
||||
|
||||
- name: setup create the server
|
||||
vultr_server:
|
||||
name: '{{ vultr_server_name }}'
|
||||
os: '{{ vultr_server_os }}'
|
||||
plan: '{{ vultr_server_plan }}'
|
||||
region: '{{ vultr_server_region }}'
|
||||
firewall_group: test_vultr_server_info
|
||||
|
||||
- name: test gather vultr server info in check mode
|
||||
vultr_server_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr server info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_server_info|selectattr('name','equalto',vultr_server_name) | list | count == 1
|
||||
|
||||
- name: test gather vultr server info
|
||||
vultr_server_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr server info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_server_info|selectattr('name','equalto',vultr_server_name) | list | count == 1
|
||||
|
||||
- name: Pause for 5 min before deleting the VM
|
||||
pause:
|
||||
minutes: 5
|
||||
|
||||
- name: cleanup the server
|
||||
vultr_server:
|
||||
name: '{{ vultr_server_name }}'
|
||||
state: absent
|
||||
|
||||
- name: cleanup firewall group
|
||||
vultr_firewall_group:
|
||||
name: test_vultr_server_info
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,7 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_ssh_key_name: "{{ vultr_resource_prefix }}_ansible-ssh-key"
|
||||
vultr_ssh_key: "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEAyWYItY+3w5b8PdGRoz0oY5mufqydW96naE+VM3JSvJFAUS08rAjQQpQ03ymoALeHQy6JVZbcgecxn6p0pAOINQdqufn4udPtOPCtMjNiPGpkSM9ah/6X5+kvyWMNrvlf+Ld4OOoszP5sAkgQzIbrFQAm41XknBUha0zkewZwfrVhain4pnDjV7wCcChId/Q/Gbi4xMtXkisznWcAJcueBs3EEZDKhJ5q0VeWSJEhYJDLFN1sOxF0AIUnMrOhfKQ/LjgREXPB6uCl899INUTXRNNjRpeMXyJ2wMMmOAbua2qEd1r13Bu1n+6A823Hzb33fyMXuqWnJwBJ4DCvMlGuEsfuOK+xk7DaBfLHbcM6fsPk0/4psTE6YLgC41remr6+u5ZWsY/faMtSnNPie8Z8Ov0DIYGdhbJjUXk1HomxRV9+ZfZ2Ob8iCwlaAQAyEUM6fs3Kxt8pBD8dx1HOkhsfBWPvuDr5y+kqE7H8/MuPDTc0QgH2pjUMpmw/XBwNDHshVEjrZvtICOjOLUJxcowLO1ivNYwPwowQxfisMy56LfYdjsOslBiqsrkAqvNGm1zu8wKHeqVN9w5l3yUELpvubfm9NKIvYcl6yWF36T0c5vE+g0DU/Jy4XpTj0hZG9QV2mRQcLJnd2pxQtJT7cPFtrn/+tgRxzjEtbDXummDV4sE= ansible@example.com"
|
||||
vultr_ssh_key2: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCoQ9S7V+CufAgwoehnf2TqsJ9LTsu8pUA3FgpS2mdVwcMcTs++8P5sQcXHLtDmNLpWN4k7NQgxaY1oXy5e25x/4VhXaJXWEt3luSw+Phv/PB2+aGLvqCUirsLTAD2r7ieMhd/pcVf/HlhNUQgnO1mupdbDyqZoGD/uCcJiYav8i/V7nJWJouHA8yq31XS2yqXp9m3VC7UZZHzUsVJA9Us5YqF0hKYeaGruIHR2bwoDF9ZFMss5t6/pzxMljU/ccYwvvRDdI7WX4o4+zLuZ6RWvsU6LGbbb0pQdB72tlV41fSefwFsk4JRdKbyV3Xjf25pV4IXOTcqhy+4JTB/jXxrF torwalds@github.com"
|
|
@ -1,140 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_ssh_key:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "state is present but all of the following are missing: ssh_key"'
|
||||
|
||||
- name: test create ssh key in check mode
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
ssh_key: "{{ vultr_ssh_key }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create ssh key in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create ssh key
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
ssh_key: "{{ vultr_ssh_key }}"
|
||||
register: result
|
||||
- name: verify test create ssh key
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key }}'
|
||||
|
||||
- name: test create ssh key idempotence
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
ssh_key: "{{ vultr_ssh_key }}"
|
||||
register: result
|
||||
- name: verify test create ssh key idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key }}'
|
||||
|
||||
- name: test update ssh key in check mode
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
ssh_key: "{{ vultr_ssh_key2 }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update ssh key in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key }}'
|
||||
|
||||
- name: test update ssh key
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
ssh_key: "{{ vultr_ssh_key2 }}"
|
||||
register: result
|
||||
- name: verify test update ssh key
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key2 }}'
|
||||
|
||||
- name: test update ssh key idempotence
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
ssh_key: "{{ vultr_ssh_key2 }}"
|
||||
register: result
|
||||
- name: verify test update ssh key idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key2 }}'
|
||||
|
||||
- name: test absent ssh key in check mode
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test absent ssh key in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key2 }}'
|
||||
|
||||
- name: test absent ssh key
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent ssh key
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_ssh_key.name == '{{ vultr_ssh_key_name }}'
|
||||
- result.vultr_ssh_key.ssh_key == '{{ vultr_ssh_key2 }}'
|
||||
|
||||
- name: test absent ssh key idempotence
|
||||
vultr_ssh_key:
|
||||
name: "{{ vultr_ssh_key_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent ssh key idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,4 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr_test_prefix"
|
||||
ssh_key_name: "{{ vultr_resource_prefix }}-sshkey"
|
||||
ssh_key_content: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC+ZFQv3MyjtL1BMpSA0o0gIkzLVVC711rthT29hBNeORdNowQ7FSvVWUdAbTq00U7Xzak1ANIYLJyn+0r7olsdG4XEiUR0dqgC99kbT/QhY5mLe5lpl7JUjW9ctn00hNmt+TswpatCKWPNwdeAJT2ERynZaqPobENgvIq7jfOFWQIVew7qrewtqwerqwrewUr2Cdq7Nb7U0XFXh3x1p0v0+MbL4tiJwPlMAGvFTKIMt+EaA+AsRIxiOo9CMk5ZuOl9pT8h5vNuEOcvS0qx4v44EAD2VOsCVCcrPNMcpuSzZP8dRTGU9wRREAWXngD0Zq9YJMH38VTxHiskoBw1NnPz ansibletest-{{ vultr_resource_prefix }}@sshkey
|
|
@ -1,44 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# Copyright (c) 2019, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test get vultr ssh key info - empty resources
|
||||
vultr_ssh_key_info:
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr ssh key infos in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_ssh_key_info|selectattr('name','equalto','{{ ssh_key_name }}') | list | count == 0
|
||||
- result.vultr_ssh_key_info|selectattr('ssh_key','equalto','{{ ssh_key_content }}') | list | count == 0
|
||||
|
||||
- name: Upload an ssh key
|
||||
vultr_ssh_key:
|
||||
name: '{{ ssh_key_name }}'
|
||||
ssh_key: '{{ ssh_key_content }}'
|
||||
|
||||
- name: test get vultr ssh key infos in check mode
|
||||
vultr_ssh_key_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr ssh key infos in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_ssh_key_info|selectattr('name','equalto','{{ ssh_key_name }}') | list | count == 1
|
||||
- result.vultr_ssh_key_info|selectattr('ssh_key','equalto','{{ ssh_key_content }}') | list | count == 1
|
||||
|
||||
- name: test get vultr ssh key info
|
||||
vultr_ssh_key_info:
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr ssh key infos
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_ssh_key_info|selectattr('name','equalto','{{ ssh_key_name }}') | list | count == 1
|
||||
- result.vultr_ssh_key_info|selectattr('ssh_key','equalto','{{ ssh_key_content }}') | list | count == 1
|
||||
|
||||
- name: Destroy the ssh key
|
||||
vultr_ssh_key:
|
||||
name: '{{ ssh_key_name }}'
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,7 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_startup_script_name: "{{ vultr_resource_prefix }}_script"
|
||||
vultr_startup_script: "#!/bin/bash\necho Hello World > /root/hello"
|
||||
vultr_startup_script2: "#!/bin/bash\necho Hello to my World > /root/hello"
|
|
@ -1,140 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: setup
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_startup_script:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "state is present but all of the following are missing: script"'
|
||||
|
||||
- name: test create startup script in check mode
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
script: "{{ vultr_startup_script }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create startup script in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create startup script
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
script: "{{ vultr_startup_script }}"
|
||||
register: result
|
||||
- name: verify test create startup script
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script }}'
|
||||
|
||||
- name: test create startup script idempotence
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
script: "{{ vultr_startup_script }}"
|
||||
register: result
|
||||
- name: verify test create startup script idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script }}'
|
||||
|
||||
- name: test update startup script in check mode
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
script: "{{ vultr_startup_script2 }}"
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update startup script in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script }}'
|
||||
|
||||
- name: test update startup script
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
script: "{{ vultr_startup_script2 }}"
|
||||
register: result
|
||||
- name: verify test update startup script
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script2 }}'
|
||||
|
||||
- name: test update startup script idempotence
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
script: "{{ vultr_startup_script2 }}"
|
||||
register: result
|
||||
- name: verify test update startup script idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script2 }}'
|
||||
|
||||
- name: test absent startup script in check mode
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test absent startup script in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script2 }}'
|
||||
|
||||
- name: test absent startup script
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent startup script
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_startup_script.name == '{{ vultr_startup_script_name }}'
|
||||
- result.vultr_startup_script.script == '{{ vultr_startup_script2 }}'
|
||||
|
||||
- name: test absent startup script idempotence
|
||||
vultr_startup_script:
|
||||
name: "{{ vultr_startup_script_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent startup script idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,4 +0,0 @@
|
|||
vultr_resource_prefix: "vultr_test_prefix"
|
||||
startup_script_name: "{{ vultr_resource_prefix }}_script"
|
||||
startup_script_type: boot
|
||||
startup_script_content: "#!/bin/bash\necho Hello World > /root/hello"
|
|
@ -1,35 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: test gather vultr startup script info - empty resources
|
||||
vultr_startup_script_info:
|
||||
|
||||
- name: Create the script
|
||||
vultr_startup_script:
|
||||
name: '{{ startup_script_name }}'
|
||||
script_type: '{{ startup_script_type }}'
|
||||
script: '{{ startup_script_content }}'
|
||||
|
||||
- name: test gather vultr startup script info in check mode
|
||||
vultr_startup_script_info:
|
||||
check_mode: yes
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr startup script info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_startup_script_info|selectattr('name','equalto','{{ startup_script_name }}') | list | count == 1
|
||||
|
||||
- name: test gather vultr startup script info
|
||||
vultr_startup_script_info:
|
||||
register: result
|
||||
|
||||
- name: verify test gather vultr startup script info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_startup_script_info|selectattr('name','equalto','{{ startup_script_name }}') | list | count == 1
|
||||
|
||||
- name: Delete the script
|
||||
vultr_startup_script:
|
||||
name: '{{ startup_script_name }}'
|
||||
state: absent
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,5 +0,0 @@
|
|||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
vultr_user_name: "{{ vultr_resource_prefix }}_user"
|
|
@ -1,225 +0,0 @@
|
|||
---
|
||||
# Copyright (c) 2018, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
- name: setup
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- result is success
|
||||
|
||||
- name: test fail if missing name
|
||||
vultr_user:
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing params for state=present
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify fail if missing params for state=present
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg.startswith("state is present but all of the following are missing")'
|
||||
|
||||
- name: test fail param not in choices
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: john.doe@example.com
|
||||
password: s3cr3t
|
||||
acls:
|
||||
- bad
|
||||
- dns
|
||||
- manage_users
|
||||
register: result
|
||||
ignore_errors: yes
|
||||
- name: verify test fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- result is failed
|
||||
- 'result.msg.startswith("value of acls must be one or more of")'
|
||||
|
||||
- name: test create user in check mode
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: john.doe@example.com
|
||||
password: s3cr3t
|
||||
acls:
|
||||
- upgrade
|
||||
- dns
|
||||
- manage_users
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test create user in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
|
||||
- name: test create user
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: john.doe@example.com
|
||||
password: s3cr3t
|
||||
acls:
|
||||
- upgrade
|
||||
- dns
|
||||
- manage_users
|
||||
register: result
|
||||
- name: verify test create user
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'john.doe@example.com'
|
||||
- result.vultr_user.api_enabled == true
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'dns' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_key is defined
|
||||
|
||||
- name: test create user idempotence
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: john.doe@example.com
|
||||
password: s3cr3t
|
||||
acls:
|
||||
- upgrade
|
||||
- dns
|
||||
- manage_users
|
||||
register: result
|
||||
- name: verify test create user idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'john.doe@example.com'
|
||||
- result.vultr_user.api_enabled == true
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'dns' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_key is not defined
|
||||
|
||||
- name: test update user in check mode
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: jimmy@example.com
|
||||
password: s3cr3t
|
||||
api_enabled: false
|
||||
acls:
|
||||
- manage_users
|
||||
- upgrade
|
||||
- support
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test update user in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'john.doe@example.com'
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'dns' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_enabled == true
|
||||
- result.vultr_user.api_key is not defined
|
||||
|
||||
- name: test update user
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: jimmy@example.com
|
||||
password: s3cr3t
|
||||
api_enabled: false
|
||||
acls:
|
||||
- manage_users
|
||||
- upgrade
|
||||
- support
|
||||
register: result
|
||||
- name: verify test update user
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'jimmy@example.com'
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'support' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_enabled == false
|
||||
- result.vultr_user.api_key is not defined
|
||||
|
||||
- name: test update user idempotence
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
email: jimmy@example.com
|
||||
password: s3cr3t
|
||||
api_enabled: false
|
||||
acls:
|
||||
- manage_users
|
||||
- upgrade
|
||||
- support
|
||||
register: result
|
||||
- name: verify test update user idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'jimmy@example.com'
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'support' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_enabled == false
|
||||
- result.vultr_user.api_key is not defined
|
||||
|
||||
- name: test absent user in check mode
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
check_mode: yes
|
||||
- name: verify test absent user in check mode
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'jimmy@example.com'
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'support' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_enabled == false
|
||||
- result.vultr_user.api_key is not defined
|
||||
|
||||
- name: test absent user
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent user
|
||||
assert:
|
||||
that:
|
||||
- result is changed
|
||||
- result.vultr_user.name == '{{ vultr_user_name }}'
|
||||
- result.vultr_user.email == 'jimmy@example.com'
|
||||
- "'upgrade' in result.vultr_user.acls"
|
||||
- "'manage_users' in result.vultr_user.acls"
|
||||
- "'support' in result.vultr_user.acls"
|
||||
- result.vultr_user.api_enabled == false
|
||||
- result.vultr_user.api_key is not defined
|
||||
|
||||
- name: test absent user idempotence
|
||||
vultr_user:
|
||||
name: "{{ vultr_user_name }}"
|
||||
state: absent
|
||||
register: result
|
||||
- name: verify test absent user idempotence
|
||||
assert:
|
||||
that:
|
||||
- result is not changed
|
|
@ -1,2 +0,0 @@
|
|||
cloud/vultr
|
||||
unsupported
|
|
@ -1,10 +0,0 @@
|
|||
---
|
||||
vultr_resource_prefix: "vultr-test-prefix"
|
||||
user_name: "{{ vultr_resource_prefix }}_user"
|
||||
user_email: mytestuser-{{ vultr_resource_prefix }}@example.com
|
||||
user_password: "{{ vultr_resource_prefix }}aP4ssw0rd!"
|
||||
user_acls:
|
||||
- upgrade
|
||||
- dns
|
||||
- manage_users
|
||||
- subscriptions
|
|
@ -1,34 +0,0 @@
|
|||
# Copyright (c) 2018, Yanis Guenane <yanis+ansible@guenane.org>
|
||||
# Copyright (c) 2019, René Moser <mail@renemoser.net>
|
||||
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||
---
|
||||
- name: Create the user
|
||||
vultr_user:
|
||||
name: '{{ user_name }}'
|
||||
email: '{{ user_email }}'
|
||||
password: '{{ user_password }}'
|
||||
acls: '{{ user_acls }}'
|
||||
|
||||
- name: test get vultr user info in check mode
|
||||
vultr_user_info:
|
||||
register: result
|
||||
check_mode: yes
|
||||
|
||||
- name: verify test get vultr user info in check mode
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_user_info|selectattr('name','equalto','{{ user_name }}') | list | count == 1
|
||||
|
||||
- name: test get vultr user info
|
||||
vultr_user_info:
|
||||
register: result
|
||||
|
||||
- name: verify test get vultr user info
|
||||
assert:
|
||||
that:
|
||||
- result.vultr_user_info|selectattr('name','equalto','{{ user_name }}') | list | count == 1
|
||||
|
||||
- name: Delete the user
|
||||
vultr_user:
|
||||
name: '{{ user_name }}'
|
||||
state: absent
|
Loading…
Add table
Add a link
Reference in a new issue