Documentation

win_robocopy - Synchronizes the contents of two directories using Robocopy.

New in version 2.2.

Synopsis

  • Synchronizes the contents of two directories on the remote machine. Under the hood this just calls out to RoboCopy, since that should be available on most modern Windows Systems.

Options

parameter required default choices comments
dest
yes
Destination file/directory to sync (Will receive contents of src).
flags
no None
Directly supply Robocopy flags. If set, purge and recurse will be ignored.
purge
no
  • True
  • False
Deletes any files/directories found in the destination that do not exist in the source (Toggles the `/purge` flag to RoboCopy). If "flags" is set, this will be ignored.
recurse
no
  • True
  • False
Includes all subdirectories (Toggles the `/e` flag to RoboCopy). If "flags" is set, this will be ignored.
src
yes
Source file/directory to sync.

Examples

- name: Sync the contents of one directory to another
  win_robocopy:
    src: C:\DirectoryOne
    dest: C:\DirectoryTwo

- name: Sync the contents of one directory to another, including subdirectories
  win_robocopy:
    src: C:\DirectoryOne
    dest: C:\DirectoryTwo
    recurse: True

- name: Sync the contents of one directory to another, and remove any files/directories found in destination that do not exist in the source
  win_robocopy:
    src: C:\DirectoryOne
    dest: C:\DirectoryTwo
    purge: True

- name: Sync content in recursive mode, removing any files/directories found in destination that do not exist in the source
  win_robocopy:
    src: C:\DirectoryOne
    dest: C:\DirectoryTwo
    recurse: True
    purge: True

- name: Sync Two Directories in recursive and purging mode, specifying additional special flags
  win_robocopy:
    src: C:\DirectoryOne
    dest: C:\DirectoryTwo
    flags: /E /PURGE /XD SOME_DIR /XF SOME_FILE /MT:32

Return Values

Common return values are documented here Return Values, the following are the fields unique to this module:

name description returned type sample
src The Source file/directory of the sync. always string c:\Some\Path
dest The Destination file/directory of the sync. always string c:\Some\Path
changed Whether or not any changes were made. always bool False
recurse Whether or not the recurse flag was toggled. always bool False
purge Whether or not the purge flag was toggled. always bool False
flags Any flags passed in by the user. always string /e /purge
rc The return code retuned by robocopy. success int 1
msg Output intrepreted into a concise message. always string No files copied!
output The output of running the robocopy command. success string ------------------------------------------------------------------------------- ROBOCOPY :: Robust File Copy for Windows
</table> </br></br>

Notes

Note

  • This is not a complete port of the “synchronize” module. Unlike the “synchronize” module this only performs the sync/copy on the remote machine, not from the master to the remote machine.
  • This module does not currently support all Robocopy flags.
  • Works on Windows 7, Windows 8, Windows Server 2k8, and Windows Server 2k12

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Support

This module is community maintained without core committer oversight.

For more information on what this means please read Module Support

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Helping Testing PRs and Developing Modules.


Copyright © 2017 Red Hat, Inc.
Last updated on Jul 19, 2017.

Ansible docs are generated from GitHub sources using Sphinx using a theme provided by Read the Docs. . Module documentation is not edited directly, but is generated from the source code for the modules. To submit an update to module docs, edit the 'DOCUMENTATION' metadata in the modules directory of the core source code repository.