ansible.builtin.file lookup – read file contents

Note

This lookup plugin is part of ansible-core and included in all Ansible installations. In most cases, you can use the short plugin name file even without specifying the collections: keyword. However, we recommend you use the FQCN for easy linking to the plugin documentation and to avoid conflicting with other collections that may have the same lookup plugin name.

New in version 0.9: of ansible.builtin

Synopsis

  • This lookup returns the contents from a file on the Ansible controller’s file system.

Parameters

Parameter

Comments

_terms

string / required

path(s) of files to read

lstrip

boolean

whether or not to remove whitespace from the beginning of the looked-up file

Choices:

  • no ← (default)

  • yes

rstrip

boolean

whether or not to remove whitespace from the ending of the looked-up file

Choices:

  • no

  • yes ← (default)

Notes

Note

  • if read in variable context, the file can be interpreted as YAML if the content is valid to the parser.

  • this lookup does not understand ‘globbing’, use the fileglob lookup instead.

Examples

- ansible.builtin.debug:
    msg: "the value of foo.txt is {{lookup('ansible.builtin.file', '/etc/foo.txt') }}"

- name: display multiple file contents
  ansible.builtin.debug: var=item
  with_file:
    - "/path/to/foo.txt"
    - "bar.txt"  # will be looked in files/ dir relative to play or in role
    - "/path/to/biz.txt"

Return Values

Common return values are documented here, the following are the fields unique to this lookup:

Key

Description

_raw

list / elements=string

content of file(s)

Returned: success

Authors

  • Daniel Hokka Zakrisson

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.