README: Swap out md for rst, add content.
This commit is contained in:
140
README.rst
Normal file
140
README.rst
Normal file
@@ -0,0 +1,140 @@
|
||||
###########
|
||||
Puppetboard
|
||||
###########
|
||||
|
||||
Puppetboard is a web interface to `PuppetDB`_ aiming to replace the reporting
|
||||
functionality of `Puppet Dashboard`_.
|
||||
|
||||
Puppetboard relies on the `pypuppetdb`_ library to fetch data from PuppetDB
|
||||
and is built with the help of the `Flask`_ microframework.
|
||||
|
||||
.. _pypuppetdb: https://pypi.python.org/pypi/pypuppetdb
|
||||
.. _PuppetDB: http://docs.puppetlabs.com/puppetdb/latest/index.html
|
||||
.. _Puppet Dashboard: http://docs.puppetlabs.com/dashboard/
|
||||
.. _Flask: http://flask.pocoo.org
|
||||
|
||||
Because this project is powered by Flask we are restricted to:
|
||||
* Python 2.6
|
||||
* Python 2.7
|
||||
|
||||
.. image:: https://www.dropbox.com/s/5dzocpvsl7uoub7/node-experimental.png
|
||||
|
||||
Word of caution
|
||||
===============
|
||||
|
||||
Puppetboard is very, very young, it's less than a week's worth of
|
||||
efforts but it works fairly well.
|
||||
|
||||
That being said a lot of the code is very exeprimental, just trying
|
||||
to figure out what works and what not, what we need to do different
|
||||
and what features we need on the PuppetDB side of things.
|
||||
|
||||
As such you should be at least comfortable handling a few errors
|
||||
this might throw at you.
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
Currently you can only run from source:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ git clone https://github.com/nedap/puppetboard
|
||||
$ pip install -r requirements.txt
|
||||
|
||||
This will install all the requirements for Puppetboard.
|
||||
|
||||
Run it
|
||||
======
|
||||
|
||||
Development
|
||||
-----------
|
||||
|
||||
You can run in it in development mode by simple executing:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
$ python dev.py
|
||||
|
||||
Production
|
||||
----------
|
||||
For WSGI capable webservers a ``wsgi.py`` is provided which ``mod_wsgi``
|
||||
and ``uwsgi`` can deal with.
|
||||
|
||||
* Apache mod_wsgi configuration: http://flask.pocoo.org/docs/deploying/mod_wsgi/
|
||||
* uwsgi configuration: ``uwsgi --http :9090 --wsgi-file /path/to/puppetboard/wsgi.py``
|
||||
|
||||
In the case of uwsgi you'll of course need something like nginx in front of it to
|
||||
proxy the requests to it.
|
||||
|
||||
Don't forget that you also need to serve the ``static/`` folder on the
|
||||
``/static`` URL of your vhost. (I'm considering embedding the little additional
|
||||
Javascript and CSS this application has so no one has to bother with that).
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
Puppetboard has some configuration settings, their defaults can
|
||||
be viewed in ``puppetboard/default_settings.py``.
|
||||
|
||||
Additionally Puppetboard will look for an environment variable
|
||||
called ``PUPPETBOARD_SETTINGS`` pointing to a file with identical
|
||||
markup as ``default_settings.py``. Any setting defined in
|
||||
``PUPPETBOARD_SETTINGS`` will override the defaults.
|
||||
|
||||
Experimental
|
||||
------------
|
||||
Pypuppetdb and Puppetboard can query and display information from
|
||||
PuppetDB's experimental API endpoints.
|
||||
|
||||
However, if you haven't enabled them for Puppet it isn't particularily
|
||||
useful to enable them here as there will be no data to retrieve.
|
||||
|
||||
Contributing
|
||||
============
|
||||
We welcome contributions to this project. However, there are a few ground
|
||||
rules contributors should be aware of.
|
||||
|
||||
License
|
||||
-------
|
||||
This project is licensed under the Apache v2.0 License. As such, your
|
||||
contributions, once accepted, are automatically covered by this license.
|
||||
|
||||
Commit messages
|
||||
---------------
|
||||
Write decent commit messages. Don't use swear words and refrain from
|
||||
uninformative commit messages as 'fixed typo'.
|
||||
|
||||
The preferred format of a commit message:
|
||||
|
||||
::
|
||||
|
||||
docs/quickstart: Fixed a typo in the Nodes section.
|
||||
|
||||
If needed, elaborate further on this commit. Feel free to write a
|
||||
complete blog post here if that helps us understand what this is
|
||||
all about.
|
||||
|
||||
Fixes #4 and resolves #2.
|
||||
|
||||
If you'd like a more elaborate guide on how to write and format your commit
|
||||
messages have a look at this post by `Tim Pope`_.
|
||||
|
||||
.. _Tim Pope: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
|
||||
|
||||
Screenshots
|
||||
===========
|
||||
|
||||
.. image:: https://www.dropbox.com/s/lnueotxs6m4c3xk/broken.png
|
||||
.. image:: https://www.dropbox.com/s/z4tyme9yw9dqy48/facts.png
|
||||
.. image:: https://www.dropbox.com/s/r3l8uum74h91j1e/no-experimental.png
|
||||
.. image:: https://www.dropbox.com/s/jy1rrcm3rf3vazg/node.png
|
||||
.. image:: https://www.dropbox.com/s/bh0h95rgegavung/nodes.png
|
||||
.. image:: https://www.dropbox.com/s/yeqs0j1rgpvxcvo/overview.png
|
||||
.. image:: https://www.dropbox.com/s/61tfrvkkst2im2v/query.png
|
||||
|
||||
With experimental endpoints
|
||||
---------------------------
|
||||
|
||||
.. image:: https://www.dropbox.com/s/4d67108n8fenobb/nodes-experimental.png
|
||||
.. image:: https://www.dropbox.com/s/5dzocpvsl7uoub7/node-experimental.png
|
||||
Reference in New Issue
Block a user