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.

Updated: