Skip to content
Snippets Groups Projects
Commit ec198d0e authored by Rafael Guterres Jeffman's avatar Rafael Guterres Jeffman
Browse files

sudorule: Fix management of deny_sudocmdgroup.

Upstream tests were not testing one path of code related to variable
`deny_sudocmdgroup`, and a regression was added.

This patch fixes a call to the current configuration dictionary, and
add tests so that the code path is executed in the upstream tests.
parent b1621226
Branches
Tags
No related merge requests found
...@@ -544,7 +544,7 @@ def main(): ...@@ -544,7 +544,7 @@ def main():
if deny_sudocmdgroup is not None: if deny_sudocmdgroup is not None:
deny_cmdgroup_add = gen_add_list( deny_cmdgroup_add = gen_add_list(
deny_sudocmdgroup, deny_sudocmdgroup,
res_find("memberdenycmd_sudocmdgroup") res_find.get("memberdenycmd_sudocmdgroup")
) )
if sudooption is not None: if sudooption is not None:
sudooption_add = gen_add_list( sudooption_add = gen_add_list(
......
...@@ -58,6 +58,7 @@ ...@@ -58,6 +58,7 @@
name: name:
- /sbin/ifconfig - /sbin/ifconfig
- /usr/bin/vim - /usr/bin/vim
- /usr/bin/emacs
state: present state: present
- name: Ensure sudocmdgroup is available - name: Ensure sudocmdgroup is available
...@@ -68,6 +69,14 @@ ...@@ -68,6 +69,14 @@
sudocmd: /usr/bin/vim sudocmd: /usr/bin/vim
state: present state: present
- name: Ensure sudocmdgroup is available
ipasudocmdgroup:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: test_sudorule2
sudocmd: /usr/bin/emacs
state: present
- name: Ensure sudorules are absent - name: Ensure sudorules are absent
ipasudorule: ipasudorule:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
...@@ -606,6 +615,7 @@ ...@@ -606,6 +615,7 @@
ipaapi_context: "{{ ipa_context | default(omit) }}" ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1 name: testrule1
allow_sudocmdgroup: test_sudorule allow_sudocmdgroup: test_sudorule
action: member
state: present state: present
register: result register: result
failed_when: not result.changed or result.failed failed_when: not result.changed or result.failed
...@@ -616,6 +626,7 @@ ...@@ -616,6 +626,7 @@
ipaapi_context: "{{ ipa_context | default(omit) }}" ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1 name: testrule1
allow_sudocmdgroup: test_sudorule allow_sudocmdgroup: test_sudorule
action: member
state: present state: present
register: result register: result
failed_when: result.changed or result.failed failed_when: result.changed or result.failed
...@@ -648,6 +659,7 @@ ...@@ -648,6 +659,7 @@
ipaapi_context: "{{ ipa_context | default(omit) }}" ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1 name: testrule1
deny_sudocmdgroup: test_sudorule deny_sudocmdgroup: test_sudorule
action: member
state: present state: present
register: result register: result
failed_when: not result.changed or result.failed failed_when: not result.changed or result.failed
...@@ -658,6 +670,7 @@ ...@@ -658,6 +670,7 @@
ipaapi_context: "{{ ipa_context | default(omit) }}" ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1 name: testrule1
deny_sudocmdgroup: test_sudorule deny_sudocmdgroup: test_sudorule
action: member
state: present state: present
register: result register: result
failed_when: result.changed or result.failed failed_when: result.changed or result.failed
...@@ -684,6 +697,114 @@ ...@@ -684,6 +697,114 @@
register: result register: result
failed_when: result.changed or result.failed failed_when: result.changed or result.failed
- name: Ensure sudorule is present, with `test_sudorule` sudocmdgroup in allow_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
allow_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with `test_sudorule2` sudocmdgroup in allow_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
allow_sudocmdgroup: test_sudorule2
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with both sudocmdgroup in allow_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
allow_sudocmdgroup:
- test_sudorule
- test_sudorule2
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with both sudocmdgroup, again.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
allow_sudocmdgroup:
- test_sudorule
- test_sudorule2
state: present
register: result
failed_when: result.changed or result.failed
- name: Ensure sudorule is present, with only `test_sudorule` sudocmdgroup in allow_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
allow_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with `test_sudorule` sudocmdgroup in deny_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
deny_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with `test_sudorule2` sudocmdgroup in deny_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
deny_sudocmdgroup: test_sudorule2
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with both sudocmdgroup in deny_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
deny_sudocmdgroup:
- test_sudorule
- test_sudorule2
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is present, with both sudocmdgroup, again.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
deny_sudocmdgroup:
- test_sudorule
- test_sudorule2
state: present
register: result
failed_when: result.changed or result.failed
- name: Ensure sudorule is present, with only `test_sudorule` sudocmdgroup in deny_sudocmdgroup.
ipasudorule:
ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}"
name: testrule1
deny_sudocmdgroup: test_sudorule
state: present
register: result
failed_when: not result.changed or result.failed
- name: Ensure sudorule is absent - name: Ensure sudorule is absent
ipasudorule: ipasudorule:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
...@@ -889,7 +1010,9 @@ ...@@ -889,7 +1010,9 @@
ipasudocmdgroup: ipasudocmdgroup:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
ipaapi_context: "{{ ipa_context | default(omit) }}" ipaapi_context: "{{ ipa_context | default(omit) }}"
name: test_sudorule name:
- test_sudorule
- test_sudorule2
state: absent state: absent
- name: Ensure sudocmds are absent - name: Ensure sudocmds are absent
...@@ -899,6 +1022,7 @@ ...@@ -899,6 +1022,7 @@
name: name:
- /sbin/ifconfig - /sbin/ifconfig
- /usr/bin/vim - /usr/bin/vim
- /usr/bin/emacs
state: absent state: absent
- name: Ensure sudorules are absent - name: Ensure sudorules are absent
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment