Blueprint (https://github.com/devstructure/blueprint) checks the changes that have made in the configuration files on a RPM or Debian based Linux, and saves them as an executable shell script, or push them to a remote server.
Bleprint is a great tool for moving from a manually managed to configuration management system such as SaltStack, Puppet, Ansible and Chef.
It lists the following:
- Packages installed via Yum or apt-get
- Python packages (installed via easy_install or pip)
- Ruby Gem packages
- PHP PEAR and PECL
- Node.js NPM
- Which files in /etc/ have been modified or added
- Software manually installed in /usr/local (typically software compiled from source)
- Which SysV services (in /etc/init.d) are set to start during boot.
This information is saved in as a blueprint, which is comprised of a JSON file and zero or more tar files.
The blueprint is saved in the local Git repository.
To create a blueprint:
blueprint create myblueprint
List the changed files:
blueprint show-files myblueprint
List installed packages:
blueprint show-packages myblueprint
List services starting on boot:
blueprint show-services myblueprint