ansible.builtin.slurp module – Slurps a file from remote nodes
ansible.builtin.slurp module – Slurps a file from remote nodes
https://docs.ansible.com/projects/ansible/latest/collections/ansible/builtin/slurp_module.html
Note
This module is part of ansible-core and included in all Ansible installations. In most cases, you can use the short module name slurp even without specifying the collections keyword. However, we recommend you use the Fully Qualified Collection Name (FQCN) ansible.builtin.slurp for easy linking to the module documentation and to avoid conflicting with other collections that may have the same module name.
Synopsis
Parameters
Attributes
Notes
See Also
Examples
Return Values
Synopsis This module works like ansible.builtin.fetch. It is used for fetching a base64- encoded blob containing the data in a remote file.
This module is also supported for Windows targets.
Parameters Parameter
Comments
src aliases: path
path / required
The file on the remote system to fetch. This must be a file, not a directory.
Attributes Attribute
Support
Description
check_mode full
Can run in check_mode and return changed status prediction without modifying target, if not supported the action will be skipped.
diff_mode none
Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode
platform Platforms: posix, windows
Target OS/families that can be operated against
Notes Note
This module returns an ‘in memory’ base64 encoded version of the file, take into account that this will require at least twice the RAM as the original file size.
See Also See also
ansible.builtin.fetch Fetch files from remote nodes.
Examples
-
name: Find out what the remote machine’s mounts are ansible.builtin.slurp: src: /proc/mounts register: mounts
-
name: Print returned information ansible.builtin.debug: msg: “{{ mounts[‘content’] | b64decode }}”
From the commandline, find the pid of the remote machine’s sshd
$ ansible host -m ansible.builtin.slurp -a ‘src=/var/run/sshd.pid’
host | SUCCESS => {
“changed”: false,
“content”: “MjE3OQo=”,
“encoding”: “base64”,
“source”: “/var/run/sshd.pid”
}
$ echo MjE3OQo= | base64 -d
2179
Return Values Common return values are documented here, the following are the fields unique to this module:
Key
Description
content string
Encoded file content
Returned: success
Sample: “MjE3OQo=”
encoding string
Type of encoding used for file
Returned: success
Sample: “base64”
source string
Actual path of file slurped
Returned: success
Sample: “/var/run/sshd.pid”
Authors Ansible Core Team
Michael DeHaan (@mpdehaan)
Collection links Issue Tracker Repository (Sources) Communication © Copyright Ansible project contributors. Last updated on Dec 29, 2025.