# Copyright 2022 Dell Inc. or its subsidiaries. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. --- - name: Fetch hostname command: hostname register: new_serv_hostname changed_when: false - name: Set fact for server hostname set_fact: server_hostname_ms: "{{ new_serv_hostname.stdout }}" - name: Save the hostname copy: dest: "{{ server_file }}" content: | ipaddress: "{{ hostvars['localhost']['ansible_default_ipv4']['address'] }}" server_hostname: "{{ server_hostname_ms }}" server_domain: "{{ domain_name }}" owner: root mode: "{{ file_mode }}" - name: Uninstall server if it is already installed command: ipa-server-install --uninstall -U changed_when: false failed_when: false - name: Install ipa server in CentOS > 8 or Rocky 8.4 command: >- ipa-server-install -n '{{ domain_name }}' --hostname='{{ server_hostname_ms }}' -a '{{ ipa_admin_password }}' -p '{{ directory_manager_password }}' -r '{{ realm_name }}' --setup-dns --no-forwarders --no-reverse --no-ntp -U changed_when: true no_log: true when: - ( ansible_distribution | lower == os_centos ) or ( ansible_distribution | lower == os_rocky ) - ( ansible_distribution_version >= os_version ) - name: Authenticate as admin shell: set -o pipefail && echo $'{{ ipa_admin_password }}' | kinit admin no_log: true changed_when: false - name: Replace the /etc/resolv.conf file copy: src: "{{ temp_resolv_conf_path }}" dest: "{{ resolv_conf_path }}" mode: "{{ file_mode }}" remote_src: yes