mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-05-20 07:59:10 -07:00
cloudstack: new module cs_role_permission (#37065)
This commit is contained in:
parent
ac754c736f
commit
200a0bce67
4 changed files with 650 additions and 0 deletions
2
test/integration/targets/cs_role_permission/aliases
Normal file
2
test/integration/targets/cs_role_permission/aliases
Normal file
|
@ -0,0 +1,2 @@
|
|||
cloud/cs
|
||||
posix/ci/cloud/group1/cs
|
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
dependencies:
|
||||
- cs_common
|
303
test/integration/targets/cs_role_permission/tasks/main.yml
Normal file
303
test/integration/targets/cs_role_permission/tasks/main.yml
Normal file
|
@ -0,0 +1,303 @@
|
|||
- name: pre-setup
|
||||
cs_role:
|
||||
name: "testRole"
|
||||
register: testRole
|
||||
- name: verify pre-setup
|
||||
assert:
|
||||
that:
|
||||
- testRole is successful
|
||||
|
||||
- name: setup
|
||||
cs_role_permission:
|
||||
name: "fakeRolePerm"
|
||||
role: "{{ testRole.id }}"
|
||||
state: absent
|
||||
register: roleperm
|
||||
- name: verify setup
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
|
||||
- name: setup2
|
||||
cs_role_permission:
|
||||
name: "fakeRolePerm2"
|
||||
role: "{{ testRole.id }}"
|
||||
state: absent
|
||||
register: roleperm2
|
||||
- name: verify setup2
|
||||
assert:
|
||||
that:
|
||||
- roleperm2 is successful
|
||||
|
||||
- name: test fail if missing name
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
register: roleperm
|
||||
ignore_errors: true
|
||||
- name: verify results of fail if missing name
|
||||
assert:
|
||||
that:
|
||||
- roleperm is failed
|
||||
- 'roleperm.msg == "missing required arguments: name"'
|
||||
|
||||
- name: test fail if missing role
|
||||
cs_role_permission:
|
||||
name: "fakeRolePerm"
|
||||
register: roleperm
|
||||
ignore_errors: true
|
||||
- name: verify results of fail if missing role
|
||||
assert:
|
||||
that:
|
||||
- roleperm is failed
|
||||
- 'roleperm.msg == "missing required arguments: role"'
|
||||
|
||||
- name: test fail if role does not exist
|
||||
cs_role_permission:
|
||||
name: "fakeRolePerm"
|
||||
role: "testtest"
|
||||
register: roleperm
|
||||
ignore_errors: true
|
||||
- name: verify results of fail if role does not exist
|
||||
assert:
|
||||
that:
|
||||
- roleperm is failed
|
||||
- roleperm.msg == "Role 'testtest' not found"
|
||||
|
||||
- name: test fail if state is incorrcect
|
||||
cs_role_permission:
|
||||
state: badstate
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: allow
|
||||
register: roleperm
|
||||
ignore_errors: true
|
||||
- name: verify results of fail if state is incorrcect
|
||||
assert:
|
||||
that:
|
||||
- roleperm is failed
|
||||
- 'roleperm.msg == "value of state must be one of: present, absent, got: badstate"'
|
||||
|
||||
- name: test create role permission in check mode
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: allow
|
||||
description: "fakeRolePerm description"
|
||||
register: roleperm
|
||||
check_mode: yes
|
||||
- name: verify results of role permission in check mode
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
|
||||
- name: test create role permission
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: allow
|
||||
description: "fakeRolePerm description"
|
||||
register: roleperm
|
||||
- name: verify results of role permission
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
- roleperm.permission == "allow"
|
||||
- roleperm.description == "fakeRolePerm description"
|
||||
|
||||
- name: test create role permission idempotency
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: allow
|
||||
description: "fakeRolePerm description"
|
||||
register: roleperm
|
||||
- name: verify results of role permission idempotency
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is not changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
- roleperm.permission == "allow"
|
||||
- roleperm.description == "fakeRolePerm description"
|
||||
|
||||
- name: test update role permission in check_mode
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: deny
|
||||
description: "fakeRolePerm description"
|
||||
register: roleperm
|
||||
check_mode: yes
|
||||
- name: verify results of update role permission in check mode
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
- roleperm.permission == "allow"
|
||||
- roleperm.description == "fakeRolePerm description"
|
||||
|
||||
- name: test update role permission
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: deny
|
||||
description: "fakeRolePerm description"
|
||||
register: roleperm
|
||||
- name: verify results of update role permission
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
- roleperm.permission == "deny"
|
||||
- roleperm.description == "fakeRolePerm description"
|
||||
|
||||
- name: test update role permission idempotency
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: deny
|
||||
description: "fakeRolePerm description"
|
||||
register: roleperm
|
||||
- name: verify results of update role permission idempotency
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is not changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
- roleperm.permission == "deny"
|
||||
- roleperm.description == "fakeRolePerm description"
|
||||
|
||||
- name: test create a second role permission
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm2"
|
||||
permission: allow
|
||||
register: roleperm2
|
||||
- name: verify results of create a second role permission
|
||||
assert:
|
||||
that:
|
||||
- roleperm2 is successful
|
||||
- roleperm2 is changed
|
||||
- roleperm2.name == "fakeRolePerm2"
|
||||
|
||||
- name: test update rules order in check_mode
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
parent: "{{ roleperm2.id }}"
|
||||
register: roleperm
|
||||
check_mode: yes
|
||||
- name: verify results of update rule order check mode
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
|
||||
- name: test update rules order
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
parent: "{{ roleperm2.id }}"
|
||||
register: roleperm
|
||||
- name: verify results of update rule order
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
|
||||
- name: test update rules order to the top of the list
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
parent: 0
|
||||
register: roleperm
|
||||
- name: verify results of update rule order to the top of the list
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
|
||||
- name: test update rules order with parent NAME
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
parent: "{{ roleperm2.name }}"
|
||||
register: roleperm
|
||||
- name: verify results of update rule order with parent NAME
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
- roleperm.name == "fakeRolePerm"
|
||||
|
||||
- name: test fail if permission AND parent args are present
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
permission: allow
|
||||
parent: 0
|
||||
register: roleperm
|
||||
ignore_errors: true
|
||||
- name: verify results of fail if permission AND parent args are present
|
||||
assert:
|
||||
that:
|
||||
- roleperm is failed
|
||||
- 'roleperm.msg == "parameters are mutually exclusive: permission, parent"'
|
||||
|
||||
- name: test fail if parent does not exist
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
parent: "badParent"
|
||||
register: roleperm
|
||||
ignore_errors: true
|
||||
- name: verify results of fail if parent does not exist
|
||||
assert:
|
||||
that:
|
||||
- roleperm is failed
|
||||
- roleperm.msg == "Parent rule 'badParent' not found"
|
||||
|
||||
- name: test remove role permission in check_mode
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
state: absent
|
||||
register: roleperm
|
||||
check_mode: yes
|
||||
- name: verify results of rename role permission in check_mode
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
|
||||
- name: test remove role permission
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm"
|
||||
state: absent
|
||||
register: roleperm
|
||||
- name: verify results of remove role permission
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
||||
|
||||
- name: remove second role permission
|
||||
cs_role_permission:
|
||||
role: "{{ testRole.id }}"
|
||||
name: "fakeRolePerm2"
|
||||
state: absent
|
||||
register: roleperm
|
||||
- name: verify results of remove second role permission
|
||||
assert:
|
||||
that:
|
||||
- roleperm is successful
|
||||
- roleperm is changed
|
Loading…
Add table
Add a link
Reference in a new issue