community.general.chef_databag – fetches data from a Chef Databag


This plugin is part of the community.general collection (version 4.2.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.

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


  • This is a lookup plugin to provide access to chef data bags using the pychef package. It interfaces with the chef server api using the same methods to find a knife or chef-client config file to load parameters from, starting from either the given base path or the current working directory. The lookup order mirrors the one from Chef, all folders in the base path are walked back looking for the following configuration file in order : .chef/knife.rb, ~/.chef/knife.rb, /etc/chef/client.rb


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


Parameter Choices/Defaults Configuration Comments
string / required
Item to fetch
string / required
Name of the databag


- ansible.builtin.debug:
    msg: "{{ lookup('community.general.chef_databag', 'name=data_bag_name item=data_bag_item') }}"

Return Values

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

Key Returned Description
list / elements=dictionary
The value from the databag.


  • Unknown (!UNKNOWN)