A port of Erik Dalén's PuppetDB Query language to Python. This module is designed to be paired with pypuppetdb but does not depend on it directly.
This module is a Python implementation of the query language also implemented in puppet-puppetdbquery (in Ruby) and node-puppetdbquery (in JavaScript/NodeJS).
Please see the pypuppetdbquery documentation courtesy of Read the Docs and Sphinx.
You can install this package from source or from PyPi.
$ pip install pypuppetdbquery
$ git clone https://github.com/bootc/pypuppetdbquery
$ python setup.py install
If you wish to hack on it clone the repository but after that run:
$ pip install -r requirements.txt
$ pip install -r requirements-dev.txt
This will install all the runtime requirements of pypuppetdbquery and the dependencies for the test suite and generation of documentation.
import pypuppetdb
import pypuppetdbquery
pdb = pypuppetdb.connect()
pdb_ast = pypuppetdbquery.parse(
'(processorcount=4 or processorcount=8) and kernel=Linux')
for node in pdb.nodes(query=pdb_ast):
print(node)
For further examples, see the Examples section of the pypuppetdbquery documentation.
This project is licensed under the Apache License Version 2.0.
Copyright © 2016 Chris Boot.