--- - name: Проверка соответствия ОС ansible.builtin.fail: msg: Операционная система должна быть Альт when: ansible_os_family != "Altlinux" - name: Проверка наличия развёрнутого домена на хосте {{ ansible_hostname }} ansible.builtin.shell: "samba-tool domain info {{ ansible_default_ipv4.address }}" register: samba_tool_result ignore_errors: true - name: Если на хосте развёрнут домен, выполнение прерывается ansible.builtin.fail: msg: На хосте {{ ansible_hostname }} обнаружен развёрнутый домен. Прерываю выполнение when: - samba_tool_result.failed == false - name: Обновление системы apt_rpm: update_cache: true dist_upgrade: true clean: true - name: Назначение корректного имени хоста ansible.builtin.hostname: name: "{{ hostnames.nas_host }}.{{ dc_details.realm }}" use: systemd - name: Настройка резолвера на контроллеры домена - {{ dc_details.dc1_ip }}, {{ dc_details.dc2_ip }} ansible.builtin.lineinfile: path: /etc/resolvconf.conf regexp: '^name_servers' line: name_servers="{{ dc_details.dc1_ip }} {{ dc_details.dc2_ip }}" # - name: Настройка резолвера доменную зону - {{ dc_details.realm }} # ansible.builtin.lineinfile: # path: /etc/resolvconf.conf # regexp: '^search_domains' # line: search_domains={{ dc_details.realm }} - name: Обновление конфигурации резолвера ansible.builtin.shell: "resolvconf -u" - name: Установка клиентского пакета Samba {{ samba_client_package }} apt_rpm: package: "{{ samba_client_package }}" state: present update_cache: yes - name: Ввод в домен ansible.builtin.shell: | system-auth write ad {{ dc_details.realm }} {{ inventory_hostname }} {{ dc_details.domain }} \ '{{ dc_details.admin }}' '{{ dc_details.adminpass }}' register: add_to_domain - name: Итог ввода ansible.builtin.debug: var: add_to_domain.stdout_lines - name: Проверка ввода в домен ansible.builtin.shell: net ads testjoin register: testjoin failed_when: testjoin.rc != 0 - name: Перезагрузка узла после добавления в домен ansible.builtin.reboot: reboot_timeout: 3600