# ini – read data from a ini file

- Synopsis
- Parameters
- Examples
- Return Values
- Status

## Synopsis

- The ini lookup reads the contents of a file in INI format `key1=value1`. This plugin retrieves the value on the right side after the equal sign `'='` of a given section `[section]`.
- You can also read a property file which - in this case - does not contain section.

## Parameters

Parameter | Choices/Defaults | Configuration | Comments
--- | --- | --- | ---
_terms - / required |  |  | The key(s) to look up
default - | Default: "" |  | Return value if the key is not in the ini file.
encoding - | Default: "utf-8" |  | Text encoding to use.
file - | Default: "ansible.ini" |  | Name of the file to load.
re boolean | Default: "no" |  | Flag to indicate if the key supplied is a regexp.
section - | Default: "global" |  | Section where to lookup the key.

type
-

Choices:
- ini ←
- properties

Type of the file. 'properties' refers to the Java properties files.

## Examples

    - debug: msg="User in integration is {{ lookup('ini', 'user section=integration file=users.ini') }}"

    - debug: msg="User in production  is {{ lookup('ini', 'user section=production  file=users.ini') }}"

    - debug: msg="user.name is {{ lookup('ini', 'user.name type=properties file=user.properties') }}"

    - debug:
        msg: "{{ item }}"
      with_ini:
        - '.* section=section1 file=test.ini re=True'

## Return Values

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

Key | Returned | Description
--- | --- | ---
_raw - |  | value(s) of the key(s) in the ini file

## Status

- This lookup is not guaranteed to have a backwards compatible interface. [preview]
- This lookup is maintained by the Ansible Community. [community]

### Authors

- Yannig Perre <yannig.perre(at)gmail.com>

Hint

If you notice any issues in this documentation, you can edit this document to improve it.

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.