No release in over 3 years
Low commit activity in last 3 years
There's a lot of open issues
Try and find dead code in Puppet receipts
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
 Dependencies

Development

Runtime

>= 0
>= 0
< 3.0, >= 1.0
 Project Readme

puppet-ghostbuster

Build Status Gem Version Gem Downloads Gemnasium

When you have dead puppet code hanging around ... Who you gonna call ?

This gems helps puppet users to find dead code by displaying unused classes, defined resources, template and files.

This gems only support PuppetDB APi v4 (PuppetDB 3+)

Usage

$ find . -type f -exec puppet-lint --only-checks ghostbuster_classes,ghostbuster_defines,ghostbuster_facts,ghostbuster_files,ghostbuster_functions,ghostbuster_hiera_files,ghostbuster_templates,ghostbuster_types {} \+

Environment variables

HIERA_YAML_PATH

The location of the hiera.yaml file. Defaults to /etc/puppetlabs/code/hiera.yaml

PUPPETDB_URL

The url or the PuppetDB. Defaults to http://puppetdb:8080

PUPPETDB_CACERT_FILE

Your site’s CA certificate

PUPPETDB_CERT_FILE

An SSL certificate signed by your site’s Puppet CA

PUPPETDB_KEY_FILE

The private key for that certificate

Plugins

ghostbuster_classes

Find unused classes in PuppetDB.

ghostbuster_defines

Find unused defined types in PuppetDB.

ghostbuster_facts

Find unused facts in Puppet manifests and templates.

ghostbuster_files

Find unused files in PuppetDB or in Puppet manifests.

ghostbuster_functions

Find unused functions in Puppet manifests or templates.

ghostbuster_hiera_files

Find unused hiera files in PuppetDB.

ghostbuster_templates

Find unused templates in Puppet manifests.

ghostbuster_types

Find unused types in Puppet manifests.

Example output

TODO

$ find . -type f -exec puppet-lint --only-checks ghostbuster_classes,ghostbuster_defines,ghostbuster_files,ghostbuster_hiera_files,ghostbuster_templates {} \+
./modules/foo/manifests/install.pp - WARNING: Class Foo::Install seems unused on line 1
./modules/foo/manifests/service.pp - WARNING: Class Foo::Service seems unused on line 1
./modules/foo/manifests/init.pp - WARNING: Class Foo seems unused on line 1
./modules/bar/manifests/baz.pp - WARNING: Define Bar::Baz seems unused on line 1
./modules/modulename/templates/foo.erb - WARNING: Template modulename/foo.erb seems unused on line 1
./modules/modulename/templates/bar.erb - WARNING: Template modulename/bar.erb seems unused on line 1
./modules/modulename/templates/baz.erb - WARNING: Template modulename/baz.erb seems unused on line 1
./modules/foo/files/bar.txt - WARNING: File foo/bar.txt seems unused on line 1
./modules/foo/files/baz.txt - WARNING: File foo/baz.txt seems unused on line 1