mirror of
https://github.com/freeipa/ansible-freeipa.git
synced 2026-05-07 05:43:26 +00:00
sudorule: Create FQDN from single hostnames
Single hostnames can be used for sudorule_add_host and will match fqdn in IPA internally. Simple host names have to be extended to be FQDN to be able to compare them for sudorule_host_add and sudorule_host_remove. Fixes #672
This commit is contained in:
151
tests/sudorule/test_sudorule_single_hostnames.yml
Normal file
151
tests/sudorule/test_sudorule_single_hostnames.yml
Normal file
@@ -0,0 +1,151 @@
|
||||
---
|
||||
- name: Test sudorule with single hostnames.
|
||||
hosts: "{{ ipa_test_host | default('ipaserver') }}"
|
||||
become: no
|
||||
gather_facts: no
|
||||
|
||||
tasks:
|
||||
- block:
|
||||
# setup test environment
|
||||
- name: Get Domain from the server name
|
||||
set_fact:
|
||||
ipaserver_domain: "{{ ansible_facts['fqdn'].split('.')[1:] | join ('.') }}"
|
||||
when: ipaserver_domain is not defined
|
||||
|
||||
- name: Ensure test sudo rule is absent
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
state: absent
|
||||
|
||||
- name: Ensure test host exist
|
||||
ipahost:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
hosts:
|
||||
- name: "host01.{{ ipaserver_domain }}"
|
||||
force: yes
|
||||
- name: "host02.{{ ipaserver_domain }}"
|
||||
force: yes
|
||||
|
||||
# start tests
|
||||
- name: Ensure sudorule exist with host member using FQDN.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: "host01.{{ ipaserver_domain }}"
|
||||
register: result
|
||||
failed_when: result.failed or not result.changed
|
||||
|
||||
- name: Ensure sudorule host member using short hostname.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: host01
|
||||
register: result
|
||||
failed_when: result.failed or result.changed
|
||||
|
||||
- name: Ensure sudorule exist with another host using short name.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: host02
|
||||
register: result
|
||||
failed_when: result.failed or not result.changed
|
||||
|
||||
- name: Ensure sudorule exist with another host member using FQDN.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: "host02.{{ ipaserver_domain }}"
|
||||
register: result
|
||||
failed_when: result.failed or result.changed
|
||||
|
||||
- name: Ensure sudorule exist with another host member using FQDN.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: "host02.{{ ipaserver_domain }}"
|
||||
register: result
|
||||
failed_when: result.failed or result.changed
|
||||
|
||||
# cleanup for member tests.
|
||||
- name: Ensure test sudo rule is absent
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
state: absent
|
||||
|
||||
- name: Ensure test sudo rule is absent
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
state: absent
|
||||
|
||||
# member tests
|
||||
- name: Ensure test sudo rule is present
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
|
||||
- name: Ensure sudorule host member using FQDN.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: "host01.{{ ipaserver_domain }}"
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.failed or not result.changed
|
||||
|
||||
- name: Ensure sudorule host member using short hostname.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: host01
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.failed or result.changed
|
||||
|
||||
- name: Ensure test sudo rule is absent
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
state: absent
|
||||
|
||||
- name: Ensure test sudo rule is present
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
|
||||
- name: Ensure sudorule host member using FQDN.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: "host01.{{ ipaserver_domain }}"
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.failed or not result.changed
|
||||
|
||||
- name: Ensure sudorule host member using short hostname.
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
host: host01
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.failed or result.changed
|
||||
|
||||
always:
|
||||
# cleanup
|
||||
- name: Ensure test sudo rule is absent
|
||||
ipasudorule:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: sudorule_for_hosts
|
||||
state: absent
|
||||
|
||||
- name: Ensure test host is absent
|
||||
ipahost:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- "host01.{{ ipaserver_domain }}"
|
||||
- "host02.{{ ipaserver_domain }}"
|
||||
state: absent
|
||||
Reference in New Issue
Block a user