community.general.lmdb_kv lookup – fetch data from LMDB

Note

This lookup plugin is part of the community.general collection (version 6.3.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general. You need further requirements to be able to use this lookup plugin, see Requirements for details.

To use it in a playbook, specify: community.general.lmdb_kv.

New in community.general 0.2.0

Synopsis

  • This lookup returns a list of results from an LMDB DB corresponding to a list of items given to it.

Requirements

The below requirements are needed on the local controller node that executes this lookup.

Terms

Parameter

Comments

Terms

list / elements=string

List of keys to query.

Parameters

Parameter

Comments

db

string

Path to LMDB database.

Default: "ansible.mdb"

Configuration:

  • Variable: lmdb_kv_db

Examples

- name: query LMDB for a list of country codes
  ansible.builtin.debug:
    msg: "{{ query('community.general.lmdb_kv', 'nl', 'be', 'lu', db='jp.mdb') }}"

- name: use list of values in a loop by key wildcard
  ansible.builtin.debug:
    msg: "Hello from {{ item.0 }} a.k.a. {{ item.1 }}"
  vars:
    - lmdb_kv_db: jp.mdb
  with_community.general.lmdb_kv:
     - "n*"

- name: get an item by key
  ansible.builtin.assert:
    that:
      - item == 'Belgium'
    vars:
      - lmdb_kv_db: jp.mdb
  with_community.general.lmdb_kv:
    - be

Return Value

Key

Description

Return value

list / elements=any

value(s) stored in LMDB

Returned: success

Authors

  • Jan-Piet Mens (@jpmens)

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.