#!/usr/bin/python # -*- coding: utf-8 -*- # Copyright: (c) 2017, Red Hat, Inc. # GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) ANSIBLE_METADATA = {'metadata_version': '1.1', 'status': ['preview'], 'supported_by': 'core'} DOCUMENTATION = r''' module: win_domain short_description: Ensures the existence of a Windows domain version_added: 2.3 description: - Ensure that the domain named by C(dns_domain_name) exists and is reachable. - If the domain is not reachable, the domain is created in a new forest on the target Windows Server 2012R2+ host. - This module may require subsequent use of the M(win_reboot) action if changes are made. options: dns_domain_name: description: - the DNS name of the domain which should exist and be reachable or reside on the target Windows host required: yes safe_mode_password: description: - safe mode password for the domain controller required: yes database_path: description: - The path to a directory on a fixed disk of the Windows host where the domain database will be created. - If not set then the default path is C(%SYSTEMROOT%\NTDS). version_added: '2.5' sysvol_path: description: - The path to a directory on a fixed disk of the Windows host where the Sysvol file will be created. - If not set then the default path is C(%SYSTEMROOT%\SYSVOL). version_added: '2.5' author: - Matt Davis (@nitzmahone) ''' RETURN = ''' reboot_required: description: True if changes were made that require a reboot. returned: always type: boolean sample: true ''' EXAMPLES = r''' - name: Ensure the named domain is reachable from the target host; if not, create the domain in a new forest residing on the target host win_domain: dns_domain_name: ansible.vagrant safe_mode_password: password123! '''