- Easy configuration management.
- Detect relevant packages, files, and source installs.
- Generate reusable server configs.
- Convert blueprints to Puppet or Chef.
- No DSLs, no extra servers, no workflow changes.
Blueprint looks inside popular package managers, finds changes you made to configuration files, and archives software you built from source. It runs on Debian- and RPM-based Linux distros with Python >= 2.6 and Git >= 1.7.
- Centralized configuration management.
- Export and backup server configurations.
- Push and pull blueprints anywhere.
- Bootstrap servers painlessly.
Blueprint I/O pushes and pulls blueprints to and from a Blueprint I/O Server, making it easy to use blueprints anywhere. DevStructure provides a free Blueprint I/O Server at https://devstructure.com, which stores blueprints in Amazon S3. Alternatively, you can build your own backend server implementing the Blueprint I/O API.
blueprint create my-first-blueprint
Blueprint inspects your server and stores the results in its local repository. blueprint list
shows all the blueprints you've created on this server.
blueprint apply my-first-blueprint
Blueprint generates shell code from my-first-blueprint and executes it on the server.
blueprint show -S my-first-blueprint
my-first-blueprint.sh
is written to your working directory. Try out -P
or -C
to generate a Puppet module or a Chef cookbook.
blueprint diff foo bar baz
Blueprint subtracts bar from foo. Files, packages and source that appears in foo but not bar will be carried over to baz and everything else will be dropped.
blueprint push my-first-blueprint
The blueprint and its files are stored remotely. You get a secret URL for accessing it.
blueprint pull https://devstructure.com/MY-SECRET-KEY/my-first-blueprint
The blueprint is stored locally and ready for use.
Prerequisites:
- A Debian- or RPM-based Linux distribution
- Python >= 2.6
- Git >= 1.7
git clone git://github.com/devstructure/blueprint.git
cd blueprint
git submodule update --init
make && sudo make install
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
yum install python26
git clone git://github.com/devstructure/blueprint.git
cd blueprint && make && sudo make install PYTHON=/usr/bin/python26
This installs Python 2.6 from EPEL side-by-side with Python 2.4 and so won't break yum.
DevStructure maintains Debian packages and Python eggs for Blueprint. See Installing with a package manager on the wiki.
The Blueprint tutorial works through creating and deploying a simple web application via Blueprint.
The HTTP endpoints and protocols used by blueprint-push
(1) and blueprint-pull
(1) are documented so that others may run compatible servers.
blueprint
(1)blueprint-list
(1)blueprint-create
(1)blueprint-show
(1)blueprint-diff
(1)blueprint-split
(1)blueprint-prune
(1)blueprint-apply
(1)blueprint-push
(1)blueprint-pull
(1)blueprint-destroy
(1)blueprint
(5)blueprintignore
(5)blueprint.cfg
(5)blueprint
(7)
blueprint-git
(1)blueprint-show-files
(1)blueprint-show-ignore
(1)blueprint-show-packages
(1)blueprint-show-services
(1)blueprint-show-sources
(1)
Blueprint is BSD-licensed.
- Source code: https://github.com/devstructure/blueprint
- Issue tracker: https://github.com/devstructure/blueprint/issues
- Documentation: https://devstructure.com/docs/
- Wiki: https://github.com/devstructure/blueprint/wiki
- Mailing list: https://groups.google.com/forum/#!forum/blueprint-users
- IRC:
#devstructure
on Freenode